当客户端尝试连接到服务器时,我如何获取客户端的ip地址?我正在使用CSocket类。
发布于 2009-12-13 22:37:57
空getPeer(无符号短端口,std::string& peer);
返回有关套接字的远程端的信息。port是保持连接的端口,peer是套接字连接到的主机。对等体是完全合格的域名(如果IP地址可以通过gethostbyaddr(2)重新解析),或者如果不是,则是字符串化的点分隔的IP地址。
来自here。
getPeer函数将返回远程对等方的域名或IP地址,具体取决于它能找到的内容。
根据操作系统或库的不同,CSocket似乎有两种不同的定义。如果你使用的是CSocket的MFC定义,那么你想要的函数实际上是getPeerName(),如果你使用的是IP6,那么你想要的函数是getPeerNameEx()。来自here
BOOL GetPeerName(
CString& rPeerAddress,
UINT& rPeerPort
);
BOOL GetPeerName(
SOCKADDR* lpSockAddr,
int* lpSockAddrLen
);来自here
BOOL GetPeerNameEx(
CString& rPeerAddress,
UINT& rPeerPort
);https://stackoverflow.com/questions/1896644
复制相似问题