我见过许多堆栈溢出答案,说明应该使用GetAdpatersInfo,但这将返回所有适配器的信息。 如何确定哪个适配器具有公司网络服务器分配的IP地址? 即如果有人使用我的机器的名称ping我的机器时返回的IP地址。
谢了。
最简单的方法可能是将connect()
连接到特定的网络服务器,然后在连接到服务器的套接字上调用getSockName
。 这将获得本地sockaddr
,即服务器正在与之进行回话的地址。
当然,这假定您知道本地网络服务器。 如果有两个网络服务器连接到两个不同的适配器,则无法工作。 这是合乎逻辑的; 您需要一些方法来区分适配器,根据您的问题,唯一的信息是特定的网络服务器。