Linux / C:从设备名称获取IP地址?

时间:2011-09-28 22:03:34

标签: c linux ip ip-address

  

可能重复:
  Get IP address of an interface on linux

如何从设备名称获取IP地址(例如:eth0)?

3 个答案:

答案 0 :(得分:2)

免责声明:您的应用程序不应该依赖此类信息。应用程序必须仅查看和使用IP地址。以太网设备是操作系统管道。请记住,您可能具有与任何设备无关的IP地址,或具有多个IP地址,多种协议(IPv4,IPv6)等的设备。如果确实希望使用与以太网关联的IP地址,请重新检查应用程序的设计设备名称。

如果您仍想关联IP地址和以太网设备名称,请检查getifaddrs(3),它是netlink(7)内核套接字的简单前端。

答案 1 :(得分:1)

ip addr

ip addr show eth0

或过时的

ifconfig eth0

这是一个问题或者serverfault.com

答案 2 :(得分:1)

here。如果您需要在C程序中使用结果,可以使用system(yourCommand)然后使用fopen() stdout来读取结果。