Следующее должно быть выполнено программно:
netsh wlan show networks mode=Bssid | findstr "BSSID"
Выше показаны беспроводные MAC-адреса точки доступа, которые отличаются от:
arp -a | findstr 192.168.1.254
Это потому, что точка доступа имеет 2 MAC-адреса. Один для беспроводного устройства и один для сетевого устройства. Я хочу беспроводной MAC, но получаю сетевой MAC, используя arp .
Использование Управляемого API Wifi :
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);
}
}