Příkazový řádek není pouze doménou systémů UNIX, ale můžeme ho použít i v prostředí Microsoft Windows. Zejména díky Powershell můžeme v tomto režimu ovládat kompletně celý systém Windows. Nejsme tedy odkázáni na grafické rozhraní. O tom, že lze některé funkce ovládat i z klasické příkazové řádky, tedy předchůdci Powershell, je tento článek. Možnosti nastavení WiFi z příkazové řádky v GNU/Linux jsem ukázal v článku WiFi z příkazového řádku GNU/Linux. Ve Windows je situace podobná. Můžeme si zobrazit připojené rozhraní, spouštět a ukončovat jejich činnost a nastavovat jejich vlastnosti.
Na rozdíl od GNU/Linux nemusíme do systému instalovat žádné další balíčky, jelikož vše již samotná Windows obsahují. Díky implementaci potřebných funkcí je možné operace provádět na Windows 7, Windows 2008 R2 a vyšších. V serverových edicích Windows 2008+ je nutné přidat Službu bezdrátové sítě LAN (viz Příkazy nástroje Netsh pro bezdrátovou místní síť).
Zobrazení připojených zařízení
Pro veškeré operace budeme používat příkaz netsh. Pro většinu parametrů příkazu nemusí být uživatel, pod kterým se pracuje, členem skupiny Administrators (kromě např. netsh wlan show wlanreport).
V první řadě se podíváme na připojená WiFi rozhraní:
C:\Users\root>netsh wlan show interfaces
There are 1 interface on the system:
Name : Wi-Fi
Description : Intel(R) WiFi Link 5300 AGN
GUID : bdcc633c-bca4-4406-9ca5-a64353b015d2
Physical address : 00:31:5a:cc:95:d2
State : connected
SSID : Moje_SSID
BSSID : 00:43:32:f8:ca:c4
Network type : Infrastructure
Radio type : 802.11g
Authentication : WPA2-Personal
Cipher : CCMP
Connection mode : Auto Connect
Channel : 13
Receive rate (Mbps) : 144
Transmit rate (Mbps) : 144
Signal : 99%
Profile : Moje_SSID
Hosted network status : Not started
Na výstupu příkazu vidíme, že máme připojeno jedno rozhraní s MAC 00:31:5a:cc:95:d2, které je připojeno k AP s SSID Moje_SSID. Důležitý je název profilu, pod kterým je toto připojení uloženo v systému. S tímto profilem pracujeme při nastavování, zapnutí a zastavení připojení. Profil může obsahovat více SSID.
Název rozhraní lze získat také z okna Síťová připojení:
Chceme-li zjistit podporované vlastnosti rozhraní, nebo přesněji ovladače příslušného rozhraní, máme k dispozici parametr drivers. Název rozhraní můžeme zadat parametrem interface=název_rozhraní. Název rozhraní jsme získali z příkazu netsh wlan show interfaces.
C:\Users\root>netsh wlan show drivers
Interface name: Wi-Fi
Driver : Intel(R) WiFi Link 5300 AGN
Vendor : Intel Corporation
Provider : %MSFT%
Date : 07.10.2011
Version : 14.2.1.4
INF file : C:\WINDOWS\INF\netwns64.inf
Files : 1 total
C:\WINDOWS\system32\DRIVERS\NETwNs64.sys
Type : Native Wi-Fi Driver
Radio types supported : 802.11a 802.11b 802.11g
FIPS 140-2 mode supported : Yes
802.11w Management Frame Protection supported : No
Hosted network supported : Yes
Authentication and cipher supported in infrastructure mode:
Open None
Open WEP-40bit
Open WEP-104bit
Open WEP
WPA-Enterprise TKIP
WPA-Enterprise CCMP
WPA-Personal TKIP
WPA-Personal CCMP
WPA2-Enterprise TKIP
WPA2-Enterprise CCMP
WPA2-Personal TKIP
WPA2-Personal CCMP
Open Vendor defined
Authentication and cipher supported in ad-hoc mode:
Open None
Open WEP-40bit
Open WEP-104bit
Open WEP
WPA2-Personal CCMP
Wireless Display Supported: No (Graphics Driver: No, Wi-Fi Driver: No)
Kromě základních informacích o podporovaných normách zde vidíme vlastnost Hosted network supported, které popisuje možnost využít toto rozhraní jako přístupový bod – AP.
Vedle možností ovladače se můžeme podívat na podrobnější možnosti bezdrátového rozhraní:
C:\Users\root>netsh wlan show wirelesscapabilities
Wireless System Capabilities
----------------------------
Number of antennas connected to the 802.11 radio (value not available)
Max number of channels the device can operate on, simultaneously (value not available)
Co-existence Support : Unknown
Wireless Device Capabilities
----------------------------
Interface name: Wi-Fi
WDI Version (Windows) : 0.0.0.0
WDI Version (IHV) : 0.0.0.0
Firmware Version :
Station : Supported
Soft AP : Supported
Network monitor mode : Supported
Wi-Fi Direct Device : Not supported
Wi-Fi Direct GO : Not supported
Wi-Fi Direct Client : Not supported
Protected Management Frames : Not Supported
DOT11k neighbor report : Unknown
ANQP Service Information Discovery : Not Supported
Action Frame : Not Supported
Diversity Antenna : Unknown
IBSS : Supported
Promiscuous Mode : Supported
P2P Device Discovery : Not Supported
P2P Service Name Discovery : Not Supported
P2P Service Info Discovery : Not Supported
P2P Background Discovery : Not Supported
P2P GO on 5 GHz : Not Supported
FIPS : Supported
Instant Connect : Not Supported
Dx Standby NLO : Not Supported
Extended Channel Switch Announcement : Unknown
Function Level Reset : Not Supported
Platform Level Reset : Not Supported
Bus Level Reset : Not Supported
MAC Randomization : Not Supported
Fast Transition : Not Supported
MU-MIMO : Unknown
Miracast Sink : Unknown
BSS Transition (802.11v) : Unknown
IHV Extensibility Module Configured : Not Supported
Number of Tx Spatial Streams : 0
Number of Rx Spatial Streams : 0
Number of Concurrent Channels Supported : 1
P2P GO ports count : 0
P2P Clients Port Count : 0
P2P Max Mobile AP Clients : 0
Max ANQP Service Advertisements Supported : 0
Co-existence Support : Unknown
C:\Users\root>netsh wlan show settings
Wireless LAN settings
---------------------
Show blocked networks in visible network list: No
Only use GP profiles on GP-configured networks: No
Hosted network mode allowed in WLAN service: Yes
Allow shared user credentials for network authentication: Yes
Block period: Not Configured.
Auto configuration logic is enabled on interface "Wi-Fi"
MAC randomization not available on interface Wi-Fi
Kompletní seznam parametrů příkazu netsh wlan show je:
show all – Zobrazí úplné informace o bezdrátových zařízeních a sítích.
show allowexplicitcreds – Zobrazí nastavení povolení sdílených uživatelských pověření.
show autoconfig – Zobrazí, zda je logika automatické konfigurace povolena nebo zakázána.
show blockednetworks – Zobrazí nastavení zobrazování blokované sítě.
show createalluserprofile – Zobrazuje, zda je každému uživateli umožněno vytvářet profily všech uživatelů.
show drivers – Zobrazí vlastnosti ovladačů bezdrátové místní sítě v systému.
show filters – Zobrazí seznam povolených a blokovaných sítí.
show hostednetwork – Zobrazit vlastnosti a stav hostované sítě.
show interfaces – Zobrazí seznam bezdrátových rozhraní místní sítě LAN v systému.
show networks – Zobrazí seznam sítí viditelných v systému.
show onlyUseGPProfilesforAllowedNetworks – Zobrazí nastavení Profily zásad skupiny používat jen v sítích s konfigurovanými zásadami skupiny.
show profiles – Zobrazí seznam profilů nakonfigurovaných v systému.
show settings – Zobrazí globální nastavení bezdrátové sítě LAN.
show tracing – Zobrazí, zda je trasování bezdrátové místní sítě povoleno nebo zakázáno.
Po zadání netsh wlan show all je zobrazen kompletní výpis všech parametrů. Tento výpis, i přes svoji velikost, doporučuji používat, protože obsahuje opravdu zajímavé informace.
Zobrazení dostupných AP
Pro připojení musíme znát SSID AP, ke kterému se budeme připojovat. Seznam všech dostupných AP můžeme získat příkazem netsh wlan show networks. I v tomto případě můžeme parametrem interface=název_rozhraní limitovat výpis na konkrétní rozhraní.
C:\Users\root>netsh wlan show networks interface=Wi-Fi
Interface name : Wi-Fi
There are 23 networks currently visible.
SSID 1 : Jendam
Network type : Infrastructure
Authentication : Open
Encryption : None
SSID 2 : doma
Network type : Infrastructure
Authentication : WPA-Personal
Encryption : TKIP
SSID 3 : O2_
Network type : Infrastructure
Authentication : WPA2-Personal
Encryption : CCMP
SSID 4 : UPC033
Network type : Infrastructure
Authentication : WPA2-Personal
Encryption : CCMP
...
Síťové profily
V kapitole věnované zobrazení informací o síťovém rozhraní jsem se zmínil o profilu. Tento profil je použit při připojení k AP.
Pokud máme v počítači již nějaký profil vytvořen, můžeme si zobrazit seznam:
C:\Users\root>netsh wlan show profiles
Profiles on interface Wi-Fi:
Group policy profiles (read only)
---------------------------------
<None>
User profiles
-------------
All User Profile : Moje_SSID
A samozřejmě také podrobné vlastnosti:
C:\Users\root>netsh wlan show profiles name=Moje_SSID
Profile Moje_SSID on interface Wi-Fi:
=======================================================================
Applied: All User Profile
Profile information
-------------------
Version : 1
Type : Wireless LAN
Name : Moje_SSID
Control options :
Connection mode : Connect automatically
Network broadcast : Connect only if this network is broadcasting
AutoSwitch : Do not switch to other networks
MAC Randomization : Disabled
Connectivity settings
---------------------
Number of SSIDs : 1
SSID name : "Moje_SSID"
Network type : Infrastructure
Radio type : [ Any Radio Type ]
Vendor extension : Not present
Security settings
-----------------
Authentication : WPA2-Personal
Cipher : CCMP
Security key : Present
Cost settings
-------------
Cost : Unrestricted
Congested : No
Approaching Data Limit : No
Over Data Limit : No
Roaming : No
Cost Source : Default
Povšimněme si parametru Security key, který je nastaven na hodnotu Present. Ten nás informuje o tom, že profil obsahuje přístupový klíč. I ten je možné zobrazit:
C:\Users\root>netsh wlan show profiles name=Moje_SSID key=clear
Profile Moje_SSID on interface Wi-Fi:
=======================================================================
Applied: All User Profile
Profile information
-------------------
Version : 1
Type : Wireless LAN
Name : Moje_SSID
Control options :
Connection mode : Connect automatically
Network broadcast : Connect only if this network is broadcasting
AutoSwitch : Do not switch to other networks
MAC Randomization : Disabled
Connectivity settings
---------------------
Number of SSIDs : 1
SSID name : "Moje_SSID"
Network type : Infrastructure
Radio type : [ Any Radio Type ]
Vendor extension : Not present
Security settings
-----------------
Authentication : WPA2-Personal
Cipher : CCMP
Security key : Present
Key Content : Jd4SkD4HcnD9Dcw
Cost settings
-------------
Cost : Unrestricted
Congested : No
Approaching Data Limit : No
Over Data Limit : No
Roaming : No
Cost Source : Default
Tento klíč je nyní zobrazen jako obsah parametru Key Content.
Každý profil může mít v systému určitou prioritu. Tu lze jednoduše nastavit a změnit:
C:\Users\root>netsh wlan set profileorder name=Moje_SSID interface=Wi-Fi priority=1 Priority order for profile "Moje_SSID" is not changed for "Wi-Fi".
Pokud je hodnota priority nastavena na 0 nebo 1, je profil přesunut na začátek seznamu profilů.
Vytvoření profilu bohužel z příkazové řádky možné není. K tomuto účelu lze použít pouze grafické rozhraní. Pokud ale máme profil vytvořen na jiném počítači, můžeme jej vyexportovat:
C:\Users\root>netsh wlan export profile folder=z:\ name=Moje_SSID Interface profile "Moje_SSID" is saved in file "z:\Wi-Fi-Moje_SSID.xml" successfully.
a importovat:
H:\Users\work>netsh wlan add profile filename=z:\Wi-Fi-Moje_SSID.xml Profil Moje_SSID je přidán k rozhraní Bezdrátové připojení k síti.
Pro první připojení k AP je nutné zadat příslušný přístupový klíč.
Profil lze ale jednoduchým způsobem ze systému odstranit:
C:\Users\root>netsh wlan delete profile name=Old_SSID Profile "Old_SSID" is deleted from interface "Wi-Fi".
Připojení a odpojení WiFi
Pro připojení a odpojení používáme již zmíněné profily.
Připojení provedeme příkazem netsh wlan connect:
C:\Users\root>netsh wlan connect name=Moje_SSID Connection request was completed successfully.
Pokud profil obsahuje nastavení několika SSID, příslušné SSID upřesníme parametrem ssid=název_SSID.
Odpojení bezdrátové sítě můžeme provést bez zadání jakýchkoli parametrů. Pouze v případě, že máme připojeno několik bezdrátových síťových rozhraní, musíme specifikovat konkrétní, případně použít zástupný znak *:
C:\Users\root>netsh wlan disconnect interface=Wi-Fi Disconnection request was completed successfully for interface "Wi-Fi".
Vlastní WiFi Hotspot
Zařízení s OS Windows můžeme použít i jako místní WiFi hotspot. K tomuto účelu slouží další parametry příkazu netsh.
Vytvoření hotspotu je vlastně jeho přenastavení.
C:\Users\root>netsh wlan set hostednetwork mode=allow ssid=Muj_Hotspot key=ajsucDoA7k2D The hosted network mode has been set to allow. The SSID of the hosted network has been successfully changed. The user key passphrase of the hosted network has been successfully changed.
Pokud budeme chtít například změnit klíč pro připojení, použijeme stejný příkaz znovu.
Zobrazení informací o hotspotu:
C:\Users\root>netsh wlan show hostednetwork
Hosted network settings
-----------------------
Mode : Allowed
SSID name : "Muj_Hotspot"
Max number of clients : 100
Authentication : WPA2-Personal
Cipher : CCMP
Hosted network status
---------------------
Status : Not started
Zobrazení informací o zabezpečení a klíči:
C:\Users\root>netsh wlan show hostednetwork setting=security
Hosted network security settings
--------------------------------
Authentication : WPA2-Personal
Cipher : CCMP
System security key : +.h5mz.wSjJFK.o8+r-h3N~LfXR5SRXSCJ9qJ0ojeU7h8Mw#fjhbCa09x*.VGCY
User security key : ajsucDoA7k2D
User security key usage: Persistent
Spuštění hotspotu:
C:\Users\root>netsh wlan start hostednetwork The hosted network started.
a zobrazení informací o běžícím hotspotu:
C:\Users\root>netsh wlan show hostednetwork
Hosted network settings
-----------------------
Mode : Allowed
SSID name : "Muj_Hotspot"
Max number of clients : 100
Authentication : WPA2-Personal
Cipher : CCMP
Hosted network status
---------------------
Status : Started
BSSID : 00:31:5a:cc:95:d2
Radio type : 802.11g
Channel : 13
Number of clients : 1
00:a1:ca:da:3b:22 Authenticated
Sdílení připojení je nutné ručně povolit v GUI nastavení adaptéru hotspotu a nastavit správné rozhraní, které směřuje do internetu. V mém případě je hotspot a rozhraní s přístupem do internetu stejné fyzické zařízení.
Ve Windows 7 existoval příkaz netsh routing, který byl ale odebrán. Jedinou možností pro příkazový řádek je pravděpodobně pouze Powershell, viz Enabling Windows ICS from PowerShell.
Zastavení hotspotu:
C:\Users\root>netsh wlan stop hostednetwork The hosted network stopped.
Závěr
Možnosti nastavení WiFi z příkazového řádku Windows jsou samozřejmě rozsáhlejší než je zde popsáno. Příkazový řádek se nám ale hodí v případě, že chceme zjistit podrobnější informace o síti, sousedních WiFi AP apod.



