如何从Windows中的套接字获取IP地址

Mat*_*ttR 5 c++ sockets

我在Windows中有DWORD套接字.我需要知道它是一个连接到互联网,或者它是本地连接,是某种形式的localhost.有没有一种很好的方法可以从socket中获取套接字连接到windows的地址?或者有更好的方法来判断连接是否是本地连接?

Cla*_*lay 5

你可能想打电话getpeername().使用它是非常基本的,你传递一个sockaddr指针和一个长度,它为你填充数据.

至于确定连接是否是本地连接,getaddrinfo()可以为您提供所有可用本地地址的列表.您可以将结果getpeername()与本地地址列表进行比较.