查找C/ c++中可用的网络接口

Find available network interfaces in C/C++?

本文关键字:网络接口 c++ 查找      更新时间:2023-10-16

有谁知道一个C/c++代码来查找可用的网络接口吗?

我一直在寻找一些代码,但大多数时候它们相当复杂。有什么简单的方法吗?

参见getifaddrs手册页。最后有一个示例程序

如果你在桌面应用程序中寻找这个,并且你想要被通知更改(例如接口连接/断开连接),考虑使用DBus来监视NetworkManager。

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

您可以枚举接口,以及接口特定的东西(如可用和连接的WiFi接入点,配置但未拨号的PPP链路,等等),如果有任何变化,您将通过DBus收到通知。

(如果这更像是一个服务器程序,您希望网络配置保持更稳定,那么像getifaddrs这样的东西可能更合适。)