2012-01-23 32 views
6

有一個稱爲if_nametoindex()的函數,可將接口名稱轉換爲接口索引。此功能似乎可在Linux和Windows上使用。在Linux上,我想這些接口名稱可能看起來像「eth0」或「wlan0」。windows「界面名稱」是什麼樣的?

我的問題是:什麼是Win32接口名稱的樣子?是否有任何呼叫讓我查詢可用的接口名稱?

回答

5

還有if_indextoname。我已經添加了下面的輸出。這種風格的名稱(例如loopback_0)不是 Win32接口名稱。我想這些名字只存在與rfc2553兼容。 Win32實際上使用接口名稱,如\DEVICE\TCPIP_{846EE342-7039-11DE-9D20-806E6F6E6963}

要枚舉所有需要使用GetIfTable和朋友的接口。不支持if_nameindex

loopback_0 
tunnel_0 
tunnel_2 
tunnel_3 
ppp_0 
ethernet_0 
ethernet_1 
ethernet_4 
ppp_1 
wireless_0 
ethernet_9 
tunnel_4 
tunnel_1 
tunnel_7 
tunnel_8 
wireless_5 
tunnel_5 
tunnel_9 
tunnel_10 
tunnel_6 
wireless_1 
wireless_2 
ethernet_2 
ethernet_3 
ethernet_5 
ethernet_6 
ethernet_7 
wireless_3 
wireless_4 
wireless_6 
wireless_7 
wireless_8 
2

它們看起來像\Device\NPF_{506B4345-1FC0-43F4-BFCF-4FFAD7739AFF}。我不知道是否有更直接的方式來獲取接口列表,但我從wireshark中得到了這個接口,它使用winpcap

相關問題