有没有人知道c / c ++代码 找到可用的网络接口? 我一直在寻找一些代码,但大多数情况下都非常复杂。有一种简单的方法可以做到这一点吗?
更新
在Ubuntu / Linux上
答案 0 :(得分:18)
请参阅getifaddrs手册页。最后有一个示例程序。
答案 1 :(得分:2)
如果您在桌面应用程序的上下文中查找此内容,并且希望收到更改通知(例如,连接/断开连接),请考虑使用DBus监视NetworkManager。
http://projects.gnome.org/NetworkManager/developers/api/09/spec.html
您可以枚举接口以及特定于接口的内容(例如可用和连接的WiFi接入点,已配置但未拨打的PPP链接等),如果有任何更改,您将收到通知在DBus上。
(如果这更像是服务器程序,您期望网络配置保持更稳定,那么getifaddrs
之类的东西可能更合适。)