Syntaxe příkazu Netsh, kontexty a formátování
V tomto článku se dozvíte, jak zadat kontexty a podkontexty netsh, porozumět syntaxi netsh a formátování příkazů a jak spouštět příkazy netsh na místních a vzdálených počítačích.
Netsh je skriptovací nástroj příkazového řádku, který umožňuje zobrazit nebo upravit konfiguraci sítě počítače, který je aktuálně spuštěný. Příkazy Netsh je možné spustit zadáním příkazů v prostředí netsh a použít je v dávkových souborech nebo skriptech. Vzdálené počítače a místní počítač lze konfigurovat pomocí příkazů netsh.
Netsh také poskytuje funkci skriptování, která umožňuje spouštět skupinu příkazů v dávkovém režimu na zadaném počítači. Pomocí netsh můžete konfigurační skript uložit do textového souboru pro účely archivace nebo nakonfigurovat jiné počítače.
Syntax
netsh
netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [DomainName\]UserName] [-p Password | *] [Command | -f ScriptFile]
Následující parametry jsou považovány za volitelné.
Parametr | Popis |
---|---|
-a | Znamená to, že se po spuštění AliasFilevrátíte do prostředí netsh. |
AliasFile |
Určuje název textového souboru, který obsahuje jeden nebo více příkazů netsh. |
-c | Určuje, že netsh zadá zadaný kontext netsh. |
Context |
Určuje kontext netsh, který chcete zadat. |
-r | Určuje, že má být příkaz spuštěn na vzdáleném počítači. Na vzdáleném počítači musí být spuštěná služba vzdáleného registru. Pokud není spuštěný, zobrazí se ve Windows chybová zpráva Síťová cesta nebyla nalezena. |
RemoteComputer |
Určuje vzdálený počítač, který chcete nakonfigurovat. |
-u | Určuje, že chcete spustit příkaz netsh pod uživatelským účtem. |
DomainName\ |
Určuje doménu, ve které se nachází uživatelský účet. Výchozí hodnota je místní doména, pokud není zadána DomainName\. |
UserName |
Určuje uživatelské jméno účtu. |
-p | Určuje, že chcete zadat heslo pro uživatelský účet. |
Password |
Určuje heslo pro uživatelský účet, který jste zadali pomocí -uuživatelské jméno. |
Command |
Určuje příkaz netsh, který chcete spustit. |
-f | Ukončí netsh po spuštění skriptu, který určíte pomocí ScriptFile. |
ScriptFile |
Určuje skript, který chcete spustit. |
Poznámka
Pokud zadáte -r
následované jiným příkazem, netsh spustí příkaz na vzdáleném počítači a vrátí se do příkazového řádku. Pokud zadáte -r
bez jiného příkazu, netsh se otevře ve vzdáleném režimu. Tento proces se podobá použití nastavení počítače v příkazovém prostředí netsh. Při použití -r
nastavíte cílový počítač pouze pro aktuální instanci netsh. Po ukončení a opětovném zadání netshse cílový počítač resetuje jako místní počítač. Příkazy netsh můžete spustit na vzdáleném počítači zadáním názvu počítače uloženého ve službě WINS, názvu UNC, názvu internetu, který se má přeložit serverem DNS nebo IP adresou.
Spouštění příkazů netsh
Pokud chcete spustit příkaz netsh, musíte spustit příkaz netsh z příkazového řádku nebo PowerShellu zadáním netsh a stisknutím klávesy ENTER. Dále můžete změnit kontext obsahující příkaz, který chcete použít. Kontexty, které jsou k dispozici, závisí na nainstalovaných síťových komponentách.
Pokud například zadáte dhcp v prostředí netsh a stisknete klávesu ENTER, příkaz netsh se změní na kontext serveru DHCP. Pokud nemáte nainstalovanou roli serveru DHCP, zobrazí se následující zpráva:
The following command was not found: dhcp.
Kontexty Netsh
Netsh komunikuje s jinými komponentami operačního systému pomocí souborů dll (dynamic-link library).
Každá pomocná knihovna DLL netsh poskytuje rozsáhlou sadu funkcí nazývaných kontextový , což je skupina příkazů specifických pro roli nebo funkci síťového serveru. Tyto kontexty rozšiřují funkce netsh tím, že poskytují podporu konfigurace a monitorování pro jednu nebo více služeb, nástrojů nebo protokolů.
Například Dhcpmon.dll poskytuje netsh kontext a sadu příkazů nezbytných ke konfiguraci a správě serverů DHCP.
Seznam kontextů netsh můžete získat tak, že otevřete příkazový řádek nebo Windows PowerShell, zadáte netsh /?
nebo netsh help
a stisknete enter.
Příklad výstupu je následující:
The following commands are available: Commands in this context: .. - Goes up one context level. ? - Displays a list of commands. abort - Discards changes made while in offline mode. add - Adds a configuration entry to a list of entries. advfirewall - Changes to the `netsh advfirewall' context. alias - Adds an alias. branchcache - Changes to the `netsh branchcache' context. bridge - Changes to the `netsh bridge' context. bye - Exits the program. commit - Commits changes made while in offline mode. delete - Deletes a configuration entry from a list of entries. dhcpclient - Changes to the `netsh dhcpclient' context. dnsclient - Changes to the `netsh dnsclient' context. dump - Displays a configuration script. exec - Runs a script file. exit - Exits the program. firewall - Changes to the `netsh firewall' context. help - Displays a list of commands. http - Changes to the `netsh http' context. interface - Changes to the `netsh interface' context. ipsec - Changes to the `netsh ipsec' context. ipsecdosprotection - Changes to the `netsh ipsecdosprotection' context. lan - Changes to the `netsh lan' context. namespace - Changes to the `netsh namespace' context. netio - Changes to the `netsh netio' context. offline - Sets the current mode to offline. online - Sets the current mode to online. popd - Pops a context from the stack. pushd - Pushes current context on stack. quit - Exits the program. ras - Changes to the `netsh ras' context. rpc - Changes to the `netsh rpc' context. set - Updates configuration settings. show - Displays information. trace - Changes to the `netsh trace' context. unalias - Deletes an alias. wfp - Changes to the `netsh wfp' context. winhttp - Changes to the `netsh winhttp' context. winsock - Changes to the `netsh winsock' context. The following sub-contexts are available: advfirewall branchcache bridge dhcpclient dnsclient firewall http interface ipsec ipsecdosprotection lan namespace netio ras rpc trace wfp winhttp winsock To view help for a command, type the command, followed by a space, and then type ?.
Podkontexty Netsh
Kontexty Netsh mohou obsahovat příkazy i další kontexty označované jako podkontexty. Například v rozhraní kontextu můžete změnit podtexty IPv4 a IPv6.
Pokud chcete zobrazit seznam příkazů a podkontextů, které můžete použít v rámci kontextu, zadejte v netsh shelle název podkontextu a potom zadejte ? nebo nápověda. Například:
netsh> interface help The following commands are available: Commands in this context: 6to4 - Changes to the `netsh interface 6to4' context. ? - Displays a list of commands. dump - Displays a configuration script. help - Displays a list of commands. httpstunnel - Changes to the `netsh interface httpstunnel' context. ipv4 - Changes to the `netsh interface ipv4' context. ipv6 - Changes to the `netsh interface ipv6' context. isatap - Changes to the `netsh interface isatap' context. portproxy - Changes to the `netsh interface portproxy' context. set - Sets configuration information. show - Displays information. tcp - Changes to the `netsh interface tcp' context. teredo - Changes to the `netsh interface teredo' context. udp - Changes to the `netsh interface udp' context. The following sub-contexts are available: 6to4 httpstunnel ipv4 ipv6 isatap portproxy tcp teredo udp To view help for a command, type the command, followed by a space, and then type ?.
Pokud chcete provádět úlohy v jiném kontextu beze změny z aktuálního kontextu, zadejte cestu kontextu příkazu, který chcete použít v prostředí netsh. Pokud chcete například přidat statickou adresu IPv4 pro NetLAN1 a zadat masku podsítě i bránu, zadejte:
netsh interface ipv4 set address "NetLAN1" static <IP_Address> <Subnet_Mask> <Gateway>
Legenda formátování
Následující legendu formátování můžete použít k interpretaci a použití správné syntaxe příkazu netsh při spuštění příkazu v prostředí netsh v dávkovém souboru nebo skriptu.
- Text v kurzívou je informace, které musíte zadat při psaní příkazu. Pokud má například příkaz parametr s názvem -UserName, musíte zadat skutečné uživatelské jméno.
- Text v tučném písmu je informace, kterou musíte zadat přesně tak, jak je uvedeno při psaní příkazu.
- Text následovaný třemi tečky (...) je parametr, který lze opakovat několikrát v příkazovém řádku.
- Text, který je mezi hranatými závorkami [ ] je volitelná položka.
- Text, který se nachází mezi složenými závorkami { } se svislou čarou, nabízí sadu možností, z nichž si musíte vybrat pouze jednu možnost, například
{enable|disable}
. - Text formátovaný pomocí písma Courier je kód nebo výstup programu.
Řetězcové hodnoty pro příkazy netsh
Existují příkazy, které obsahují parametry, pro které je požadována řetězcová hodnota. V případě, že řetězcová hodnota obsahuje mezery mezi znaky, musíte hodnotu řetězce uzavřít do dvojitých uvozovek.
Při nastavování rozhraní parametr pro sítě IPv4 s řetězcovou hodnotou Bezdrátové připojení k síti dhcp použijte dvojité uvozovky kolem řetězcové hodnoty. Například:
netsh interface ipv4>set address name="Wireless Network Connection" dhcp
Pro síťová rozhraní lze také použít číslo indexu místo názvu přidruženého k němu. Například:
netsh interface ipv4>set address name=15 dhcp
Chcete-li najít název nebo index připojených rozhraní, musíte být v podkontextu rozhraní IPv4 nebo IPv6 a typ zobrazit rozhraní. Například:
netsh interface ipv4>show interfaces
netsh interface ipv6>show interfaces