Как сканировать беспроводные устройства, которые существуют в сети
Теперь моя команда работает в сетевом проекте, используя приложение Windows С#.
Как сканировать беспроводные устройства, которые существуют в сети. Функциональность - это то же самое, что вы видите в существующих утилит Windows в операционной системе Windows. Я уверен, что вы испытали, когда подключаете беспроводную карту для ноутбука, она отображает окно, в котором отображаются все точки доступа, которые он обнаруживает для подключения.
Как захватить эту информацию, указанную ниже
- MAC-адрес
- IP-адрес
- SSID
- Канал
- Отметка
- Тип шифрования
- Уровень шифрования
- Сила сигнала
Я использовал Kismet или NetStumbler.
Пожалуйста, предложите хорошую библиотеку/код
Ответы
Ответ 1
если вы готовы вкладывать деньги, тогда вы можете использовать WiFi-Manager/Расширенный WiFi-менеджер
WiFi-Manager - это инструмент разработчика, который позволяет управлять соединениями и настройками WiFi в Windows XP с пакетом обновления 2 (SP2) и Windows Vista с использованием одного набора функций API, хотя эти версии Windows используют абсолютно разные API для управления беспроводной сетью. Кроме того, WiFi-Manager предоставляет COM-интерфейс для всех функций API, поэтому вы можете просто управлять настройками WiFi с VB или таких языков .NET, как VB.NET или С#.
WiFi-Manager содержит функции для перечисления адаптеров WiFi, перечисления доступных сетей и получения их настроек, функций для подключения и отключения к сетям, функций для работы с профилями беспроводных сетей и т.д.
Advanced WiFi-Manager - это инструмент следующего поколения, он поддерживает все функции WiFi-Manager, но также может использовать NDIS для управления адаптерами WiFi и работает в Windows 2000/2003/XP/Vista/Windows7 и не имеет зависимости от службы Установлены пакеты или исправления!
Надеюсь, это полезно
Ответ 2
Вы можете использовать Managed Wifi API. Это просто оболочка для родного Wi-Fi 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 );
}
Ответ 3
вы должны использовать **** родной API WiFi **** для этого
есть набор функций, которые необходимо использовать в первую очередь
использование
openhandler()
getEnuminterface() здесь вы получите GUID вашего оборудования WiFi
wlanscann()
wlangetavailablenetworklist() здесь, в качестве вывода, вы получите структуру, в которой вы можете найти всю приведенную выше информацию.
closehandler()
просто входите в natice WiFi, вы получите всю информацию.
я думаю, вы получили ответ, что хотите
Ответ 4
Вы можете начать с этого " Как программно определить маршрутизаторы wi-fi и уровень сигнала?