我如何得到BSID/MAC(Media Access Control)地址?
请注意,我对wap的bssid感兴趣。这与wap网络部分的mac地址不同。
最佳答案
需要以编程方式执行以下操作:
netsh wlan show networks mode=Bssid | findstr "BSSID"
上面显示了接入点的无线mac地址,它不同于:
arp -a | findstr 192.168.1.254
这是因为接入点有两个mac地址。一个用于无线设备,一个用于网络设备。我想要无线mac,但是要用arp来连接mac。
使用Managed Wifi API:
var wlanClient = new WlanClient();
foreach (WlanClient.WlanInterface wlanInterface in wlanClient.Interfaces)
{
Wlan.WlanBssEntry[] wlanBssEntries = wlanInterface.GetNetworkBssList();
foreach (Wlan.WlanBssEntry wlanBssEntry in wlanBssEntries)
{
byte[] macAddr = wlanBssEntry.dot11Bssid;
var macAddrLen = (uint) macAddr.Length;
var str = new string[(int) macAddrLen];
for (int i = 0; i < macAddrLen; i++)
{
str[i] = macAddr[i].ToString("x2");
}
string mac = string.Join("", str);
Console.WriteLine(mac);
}
}