Los siguientes necesita ser ejecutada mediante programación:
netsh wlan show networks mode=Bssid | findstr "BSSID"
Lo anterior muestra las direcciones MAC inalámbrica del punto de acceso que es diferente de:
arp -a | findstr 192.168.1.254
Este es porque el punto de acceso tiene 2 direcciones MAC. Uno para el dispositivo inalámbrico y otro para el dispositivo de red. Quiero el MAC inalámbrico pero obtengo el MAC de red usando arp.
Utilizando el 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);
}
}
C# no funciona en MAC. No pude resistirme. : P –
http://www.mono-project.com/Main_Page – Iain