【问题标题】:Get the list of all SSIDs and their mac address获取所有 SSID 列表及其 mac 地址
【发布时间】:2010-12-21 09:29:03
【问题描述】:

有没有办法获取我所在地区的所有 SSID 及其可到达信号的 MAC 地址的列表?

我在我的 c# 代码中尝试了 Nativ WlanApi。我得到的是所有 ssid 的列表,但是对于 获取他们的mac地址,我不知道。

这是我用来获取列表的代码:

private void show_all_ssids_Click(object sender, EventArgs e)
{
  WlanClient client = new WlanClient();
  foreach ( WlanClient.WlanInterface wlanIface in client.Interfaces )
  {
    // Lists all available networks
    Wlan.WlanAvailableNetwork[] networks = wlanIface.GetAvailableNetworkList( 0 );
    this.ssidList.Text = "";
    foreach ( Wlan.WlanAvailableNetwork network in networks )
    {                    
      //Trace.WriteLine(  GetStringForSSID(network.dot11Ssid));
      this.ssidList.Text += GetStringForSSID(network.dot11Ssid) + "\r\n";
    }
  }
}
static string GetStringForSSID(Wlan.Dot11Ssid ssid)
{
  return Encoding.ASCII.GetString(ssid.SSID, 0, (int)ssid.SSIDLength);
}

希望有办法。

【问题讨论】:

  • 您有没有想过如何将 MAC 与 SSID 关联起来?

标签: c# mac-address ssid


【解决方案1】:

这是解决方案:

Dim networksBss As Wlan.WlanBssEntry() = SelectedWifiAdapter.GetNetworkBssList()

For car = 0 To networksBss(i).dot11Bssid.Length - 1
If Len(Hex(networksBss(i).dot11Bssid(car))) = 1 Then ThisScan(i).MAC = ThisScan(i).MAC & "0"
ThisScan(i).MAC = ThisScan(i).MAC & Hex(networksBss(i).dot11Bssid(car)) & ":"

Next

无论如何,我仍在寻找一种方法来查找网络的详细信息(强度),SSID="" 将其与正确的 MAC 相关联。

【讨论】:

  • 请写出完整的代码我是什么?什么是ThisScan?我等你的回复!
【解决方案2】:

为了获得 MAC 地址,您需要连接到该无线网络。连接后,您应该能够使用与传统有线网络相同的方法获取直接网络上机器的 MAC 地址 - 我相信最好的方法是解析 @987654321 的输出@ 命令。

【讨论】:

    猜你喜欢
    • 2015-04-11
    • 2017-02-24
    • 2012-03-29
    • 2020-01-16
    • 2014-07-24
    • 2019-10-30
    • 2020-05-20
    相关资源
    最近更新 更多