Как сканировать беспроводные устройства, которые существуют в сети

Сейчас моя команда работает в сетевом проекте, используя приложение Windows C#.

Как сканировать беспроводные устройства, которые существуют в сети. Функциональность точно такая же, как в существующих утилитах Windows в операционной системе Windows. Я уверен, что вы испытали, когда вы подключаете беспроводную карту ноутбука, появляется окно, которое показывает вам все точки доступа, к которым он обнаруживает подключение. Как захватить эту информацию, перечисленную ниже

  • MAC-адрес
  • Айпи адрес
  • SSID
  • канал
  • Отметка
  • Тип шифра
  • Уровень шифрования
  • Сила сигнала

Я использовал Kismet или NetStumbler. Пожалуйста, предложите хорошую библиотеку / код

4 ответа

Решение

Если вы готовы вкладывать деньги, тогда вы можете использовать WiFi-Manager/ Advanced WiFi-Manager

WiFi-Manager - это инструмент разработчика, который позволяет вам управлять подключениями и настройками WiFi в Windows XP SP2 и Windows Vista, используя один набор функций API, хотя в этих версиях Windows используются абсолютно разные API для управления беспроводной сетью. Кроме того, WiFi-Manager предоставляет интерфейс COM для всех функций API, так что вы можете просто управлять настройками WiFi из VB или таких языков.NET, как VB.NET или C#.

WiFi-Manager содержит функции для перечисления адаптеров WiFi, перечисления доступных сетей и получения их настроек, функции для подключения и отключения к сетям, функции для работы с профилями беспроводных сетей и т. Д.

Advanced WiFi-Manager - это инструмент нового поколения, он поддерживает все функции, которые есть у WiFi-Manager, но также может использовать NDIS для управления адаптерами WiFi и работает в Windows 2000/2003/XP/Vista/Windows7 и не зависит от пакетов обновления или исправлений. установлены!

Надеюсь это полезно

Вы можете использовать API управляемого Wi-Fi. Это просто оболочка для Native Wifi Api, которая доступна для Windows XP и более поздних версий.

Этот код должен показать доступные сети:

WlanClient client = new WlanClient();
foreach ( WlanClient.WlanInterface wlanIface in client.Interfaces )
{
    // Lists all available networks
    Wlan.WlanAvailableNetwork[] networks = wlanIface.GetAvailableNetworkList( 0 );
    foreach ( Wlan.WlanAvailableNetwork network in networks )
    {                     
        Console.WriteLine( "Found network with SSID {0}.", GetStringForSSID(network.dot11Ssid));
    }
}

static string GetStringForSSID(Wlan.Dot11Ssid ssid)
{
    return Encoding.ASCII.GetString( ssid.SSID, 0, (int) ssid.SSIDLength );
}

Вы должны использовать ****native WiFi API**** для этого есть набор функций, которые вам необходимо использовать в первую очередь, используйте openhandler() getEnuminterface() здесь вы получите GUID вашего оборудования WiFi wlanscann ()
wlangetavailablenetworklist () здесь в качестве вывода вы получите структуру, в которой вы можете найти всю вышеуказанную информацию. closehandler()

просто покопайтесь в natice WiFi, вы получите всю информацию. я думаю, что вы получили ответ, что вы хотите

Другие вопросы по тегам