我想让我的服务器从连接的 TCP 套接字中确定客户端的源 IP 和端口。由于我的客户可能落后于 NAT,我不能依赖于客户告诉我(在连接协议(protocol)中)...如果可能的话,我将需要在 Windows 和 Linux 上实现它。 .. 但是任何一个的答案都会帮助我开始......
我正在使用 C,我正在寻找基于 libc 或 msvcrt 的解决方案。
最佳答案
应该在 linux 和 windows 中都工作:
struct sockaddr_in addr;
socklen_t len;
len = sizeof addr;
getpeername(clientSocket, (struct sockaddr*)&addr, &len);
printf("Remote IP address: %s\n", inet_ntoa(addr.sin_addr));
关于你能从连接的 TCP 套接字中确定源 IP 和端口吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6296258/