【发布时间】:2010-12-26 02:36:49
【问题描述】:
使用“ipconfig /all”的输出我可以获得我需要的东西,但我想要一种更可靠的技术来获取接口的 ip(实际上接口必须通过它的名称来识别),以防 ipconfig 损坏或由于任何原因无法使用。
【问题讨论】:
标签: c++ ip-address
使用“ipconfig /all”的输出我可以获得我需要的东西,但我想要一种更可靠的技术来获取接口的 ip(实际上接口必须通过它的名称来识别),以防 ipconfig 损坏或由于任何原因无法使用。
【问题讨论】:
标签: c++ ip-address
我不确定您所说的“服务器和客户端”是什么意思,但如果您正在寻找一个 API 来告诉您与本地机器的网络接口关联的 IP 地址,请查看 getifaddrs() (对于 Linux/MacOSX/POSIX)和 GetAdaptersAddresses()(对于 Windows)。如果您想要这些调用的用法示例,请查看 this file 中的 GetNetworkInterfaceInfos() 函数。
(如果您想获取连接到本地计算机的客户端的 IP 地址,请在与该客户端连接关联的套接字上调用 getpeername())
【讨论】:
既然您提到了 ipconfig,我假设您想在 Windows 上执行此操作。 Windows 有一组IP Helper apis,专为检索和修改网络设置而设计。
这是一个简单的示例:http://msdn.microsoft.com/en-us/library/aa366298(VS.85).aspx
【讨论】: