在Ubuntu中检查IP是静态还是dynamic编程

我试图确定我的IP是否已经静态或dynamic分配在Ubuntu 11.04从C内。最接近我来检查/var/lib/dhcp/dhclient.leases ,但不会改变,如果静态IP被分配(因为它为将来的连接尝试cachingDHCP租约)。

所以…是否有一个命令行工具(用于Ubuntu),这将允许我检查DHCP是否启用或禁用?

或者:机器是专用于一个应用程序的服务器; 维护一个跟踪DHCP状态的环境variables会更简单吗?

理论上,如果您启用了dhcp,则应该运行dhclient。 所以一个(虽然kludgey)的方式做到这一点将是简单的:

ps ax | grep dhclient | grep eth0(或者你想要的任何一个接口)。

但是你也可以尝试一下“nmcli con”,它会告诉你“Auto eth0”(我认为)是否是一个dhcp接口。

另外看看nm-tool

HTH

有可能通过NetworkManager的DBUS API,但是IP地址的源不会在接口列表中popup,请与所述应用程序的开发者讨论。

http://projects.gnome.org/NetworkManager/developers/spec.html