获取接口的IP地址

时间:2009-12-13 02:50:44

标签: c++ ip-address

使用“ipconfig / all”的输出我可以得到我需要的但我想要一个更可靠的技术来获取接口的ip(实际上接口必须通过它的名称来识别)以防ipconfig损坏或因任何原因无法使用。

2 个答案:

答案 0 :(得分:3)

我不确定“服务器和客户端”的含义,但如果您正在寻找告诉您与本地计算机网络接口关联的IP地址的API,请查看getifaddrs()(适用于Linux / MacOSX / POSIX)和GetAdaptersAddresses()(适用于Windows)。如果您想要这些调用的用法示例,请查看this file中的GetNetworkInterfaceInfos()函数。

(如果您想获取连接到本地计算机的客户端的IP地址,请在与该客户端连接关联的套接字上调用getpeername())

答案 1 :(得分:2)

由于您提到了ipconfig,我假设您想在Windows上执行此操作。 Windows有一组IP Helper apis,用于检索和修改网络设置。

这是一个简单的示例:http://msdn.microsoft.com/en-us/library/aa366298(VS.85).aspx