#windows #powershell #networking #wifi #netsh
Вопрос:
Я хотел бы знать, возможно ли подключиться к скрытой сети Wi-Fi, зная имя SSDI и пароль. Я действительно пытался сделать это сам, но безрезультатно.
Для некоторых тестов я сделал скрытый Wi-Fi с именем SSID Galaxy и паролем.
Сначала попытался добавить профиль, создав xml-файл с указанными параметрами .
<?xml version="1.0" encoding="US-ASCII"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
<name>GalaxyNet</name>
<SSIDConfig>
<SSID>
<name>Galaxy</name>
</SSID>
</SSIDConfig>
<connectionType>ESS</connectionType>
<connectionMode>auto</connectionMode>
<autoSwitch>true</autoSwitch>
<MSM>
<security>
<authEncryption>
<authentication>WPA2PSK</authentication>
<encryption>AES</encryption>
<useOneX>false</useOneX>
</authEncryption>
<sharedKey>
<keyType>passPhrase</keyType>
<protected>false</protected>
<keyMaterial>**** password ****</keyMaterial>
</sharedKey>
</security>
</MSM>
</WLANProfile>
После этого добавил профиль из XML-файла с помощью команд netsh .
netsh wlan add profile filename="c:NET.xml"
Получил сообщение:
Profile GalaxyNet is added on interface Wi-Fi.
После того, как все прошло нормально с предыдущими шагами, я попытался подключиться к этому профилю, но безуспешно.
netsh wlan connect name="GalaxyNet" interface="wi-fi"
The network specified by profile "GalaxyNet" is not available to connect.
Также пробовал:
netsh wlan connect ssid="Galaxy" name="GalaxyNet" interface="wi-fi"
The network specified by profile "GalaxyNet" is not available to connect.
Возможно ли вообще каким-то образом сопоставить скрытую сеть netsh с профилем, если он не был «назначен» с помощью графического интерфейса?
Или кто-нибудь знает другой способ подключения к скрытому Wi-Fi с помощью любого скрипта?
Ответ №1:
Параметр конфигурации профиля, который вам не хватает nonBroadcast
, — это параметр, определяющий, разрешено ли профилю подключаться только к явно транслируемым SSID или пытаться подключиться к скрытым сетям.
Вы можете установить его для существующего профиля с помощью netsh wlan set profileparameter
:
netsh wlan set profileparameter name=GalaxyNet nonBroadcast=yes
Или включите его в свой XML-файл /WLANProfile/SSIDConfig
вот так:
<?xml version="1.0" encoding="US-ASCII"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
<name>GalaxyNet</name>
<SSIDConfig>
<SSID>
<name>Galaxy</name>
</SSID>
<nonBroadcast>true</nonBroadcast>
</SSIDConfig>
<!-- rest of xml goes here as before -->
</WLANProfile>
Комментарии:
1. Большое спасибо! Это был действительно отличный и быстрый совет для меня.