Cevabımla birlikte bir uyarı (diğerlerinin çoğu için de geçerlidir): Başvurunuzun amacını bilmiyorum. Belirli bir sorunu gidermek ya da ağları daha iyi anlamak, asla tekrar kullanılmayacak bir uygulama ise, arabirimin ilk harfine güvenmek hızlı ve kirli bir seçenek olabilir. Bir sonraki rakibi Wireshark veya tcpdump'a yazmayı planlıyorsanız, her türlü kenar durumu için doğru aldığınızdan emin olmanız gerekir.
Ve yazdığınız uygulama bu uç noktalar arasında bir yere düşerse, sadece siz (ve müşterileriniz) mantığınızı ne kadar dikkatli uygulamanız gerektiğini bilebilirsiniz.
Diğerleri, isimlerin hiçbir nedenle güvenilir olmadığını zaten belirtti. Nihai sorun yazılımda çok yaygın bir sorundur: bilinen / belgelenen gerçeklere dayanmak yerine kodlama varsayımları.
Daha önce değinilmeyen ikinci konu da gereksinimlerinizle ilgili bir varsayımdır: listelemek istediğiniz arabirimler listesinin her zaman tam olarak "donanım ethernet arabirimleri" ve "wifi arabirimleri" olmasıdır.
Üçüncü konu yine bir başka varsayımdır: tüm arayüzün şu anda aklınıza gelebilecek kategorilere gireceği. @ User4556274 tarafından belirtildiği gibi Infiniband'a ne dersiniz? Bir VPN için tünel arayüzlerine ne dersiniz? Köprülü arayüzlere ne dersiniz? Fiziksel ve mantıksal arayüzleri birleştiren köprülü arayüzlere ne dersiniz?
Ancak aradığınızı gerçekleştirmek için seçenekler olabilir. İlk olarak, listelemek istediğiniz bir arabirimi tam olarak neyi karakterize edeceğinizi tanımlayın.
Çoğu durumda, güvenebileceğiniz bir özellik yönlendirme tablosudur (ancak, bu yalnızca arabirim açık olduğu sürece çalışır, bu yüzden gerçekten aradığınız şey olmayabilir).
Varsayılan bir rotayı (yani 0.0.0.0'a giden bir yolu) olan herhangi bir arabirimin aradığınız bir arayüz olması muhtemeldir.
Bunun hala bir varsayımı temel aldığını, sadece daha güvenilir bir varsayımı temel aldığını unutmayın: bir sistemin tüm giden trafiği sanal bir makine veya bir yükleme istasyonu konteyneri üzerinden yönlendirecek şekilde yapılandırılması düşünülebilir (örneğin, bir güvenlik duvarı çalıştıran bir kap varsa) ). Ve bunun tersi de doğrudur: bir sysadmin, varsayılan rotayı silerek potansiyel olarak dış trafiği kilitleyebilir.
Başka bir seçenek, gerçek donanımdan geçip hangi sürücüyü kullandığını görmektir. Daha sonra, bazı tanınmış sürücüleri hariç tutabilirsiniz