我有一个服务器 (A) 和一个客户端 (B),用 C 编写,在同一台 Linux 机器上运行。服务器将一个端口绑定到 INADDR_ANY,客户端将另一个端口绑定到 INADDR_ANY。当另一个运行在另一台 Linux 机器上的客户端(C)连接到服务器时,我希望服务器获取客户端 B 的 IP 地址并将其发送给客户端 C。
当我从服务器使用 getpeername() 时,它返回“127.0.0.1”,这是正确的,但我无法将此地址发送给客户端 C-它将无法使用该地址连接到客户端 B。
有没有什么聪明的方法可以获取客户端 B 的实际 IP?如果它更容易一些,我可以让每个客户端将其 IP 发送到服务器。
谢谢!