getifaddrs のマニュアル ページを参照してください。末尾にサンプル プログラムがあります。
デスクトップ アプリケーションのコンテキストでこれを探していて、変更 (インターフェイスの接続/切断など) の通知を受け取りたい場合は、DBus を使用して NetworkManager を監視することを検討してください。
http://projects.gnome.org/NetworkManager/developers/api/09/spec.html
インターフェイスだけでなく、インターフェイス固有のもの (利用可能で接続済みの WiFi アクセス ポイント、設定済みだがダイヤルされていない PPP リンクなど) も列挙できます。何か変更があった場合は、DBus 経由で通知を受け取ります。 .
(これがサーバープログラムのようなもので、ネットワーク構成がより安定していると予想される場合は、 getifaddrs
のようなものです おそらくより適切です。)