GetPeerName()返回常量IP地址

时间:2014-05-07 14:09:05

标签: c sockets tcp winsock winsock2

无论何时我在正在使用的套接字上调用GetPeerName(),我都会得到一个恒定的IP地址。

SOCKADDR_IN clientAddr;
IN_ADDR clientIn;
int nClientAddrLen;

getpeername(fd, (LPSOCKADDR)&clientAddr, &nClientAddrLen);
memcpy(&clientIn, &clientAddr.sin_addr.s_addr, 4);
printf("client IP address is %s, port is %d", inet_ntoa(clientIn),ntohs(clientAddr.sin_port));

其中fd是我已连接的套接字。我每次都得到相同的主机和端口号。我假设我可能会忽略一些小错误,但我根本找不到它。任何人都可以提供任何帮助吗?

0 个答案:

没有答案