提问者:小点点

在C++中获取特定的IP地址


我见过许多堆栈溢出答案,说明应该使用GetAdpatersInfo,但这将返回所有适配器的信息。 如何确定哪个适配器具有公司网络服务器分配的IP地址? 即如果有人使用我的机器的名称ping我的机器时返回的IP地址。

谢了。


共1个答案

匿名用户

最简单的方法可能是将connect()连接到特定的网络服务器,然后在连接到服务器的套接字上调用getSockName。 这将获得本地sockaddr,即服务器正在与之进行回话的地址。

当然,这假定您知道本地网络服务器。 如果有两个网络服务器连接到两个不同的适配器,则无法工作。 这是合乎逻辑的; 您需要一些方法来区分适配器,根据您的问题,唯一的信息是特定的网络服务器。

相关问题


MySQL Query : SELECT * FROM v9_ask_question WHERE 1=1 AND question regexp '(c++|中|获取|特定|ip|地址)' ORDER BY qid DESC LIMIT 20
MySQL Error : Got error 'repetition-operator operand invalid' from regexp
MySQL Errno : 1139
Message : Got error 'repetition-operator operand invalid' from regexp
Need Help?