Netsh-opdrachtsyntaxis, contexten en opmaak
U kunt dit artikel gebruiken voor informatie over het invoeren van netsh-contexten en subcontexten, het begrijpen van netsh-syntaxis en opdrachtopmaak en het uitvoeren van netsh-opdrachten op lokale en externe computers.
Netsh is een opdrachtregelscriptprogramma waarmee u de netwerkconfiguratie kunt weergeven of wijzigen van een computer die momenteel wordt uitgevoerd. Netsh-opdrachten kunnen worden uitgevoerd door opdrachten te typen in de netsh-shell en worden gebruikt in batchbestanden of scripts. Externe computers en de lokale computer kunnen worden geconfigureerd met behulp van netsh-opdrachten.
Netsh biedt ook een scriptfunctie waarmee u een groep opdrachten in batchmodus kunt uitvoeren op een opgegeven computer. Met netsh kunt u een configuratiescript opslaan in een tekstbestand voor archiveringsdoeleinden of om u te helpen bij het configureren van andere computers.
Syntaxis
netsh
netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [DomainName\]UserName] [-p Password | *] [Command | -f ScriptFile]
De volgende parameters worden als optioneel beschouwd.
Parameter | Beschrijving |
---|---|
-a | Hiermee geeft u op dat u terugkeert naar de netsh shell nadat u AliasFile-hebt uitgevoerd. |
AliasFile |
Hiermee geeft u de naam van het tekstbestand met een of meer netsh opdrachten. |
-c | Hiermee geeft u op dat netsh de opgegeven netsh context invoert. |
Context |
Hiermee specificeert u de netsh context die u wilt invoeren. |
-r | Hiermee geeft u op dat de opdracht moet worden uitgevoerd op een externe computer. De Remote Registry-service moet worden uitgevoerd op de externe computer. Als het niet wordt uitgevoerd, wordt in Windows het foutbericht 'Netwerkpad niet gevonden' weergegeven. |
RemoteComputer |
U specificeert de externe computer die u wilt configureren. |
-u | Hiermee geeft u op dat u de netsh-opdracht wilt uitvoeren onder een gebruikersaccount. |
DomainName\ |
Hiermee geeft u het domein op waar het gebruikersaccount zich bevindt. De standaardwaarde is het lokale domein als DomainName\ niet is opgegeven. |
UserName |
Hiermee geeft u de naam van het gebruikersaccount. |
-p | Hiermee geeft u op dat u een wachtwoord wilt opgeven voor het gebruikersaccount. |
Password |
Hiermee geeft u het wachtwoord op voor het gebruikersaccount dat u hebt opgegeven met -uUserName. |
Command |
Hiermee geeft u de netsh opdracht die u wilt uitvoeren. |
-f | Sluit netsh nadat het script dat u met ScriptFilehebt aangewezen is uitgevoerd. |
ScriptFile |
Hiermee geeft u het script op dat u wilt uitvoeren. |
Notitie
Als u -r
gevolgd door een andere opdracht opgeeft, voert netsh de opdracht uit op de externe computer en keert vervolgens terug naar de opdrachtprompt. Als u -r
zonder een andere opdracht opgeeft, wordt netsh- geopend in de externe modus. Het proces is vergelijkbaar met het instellen van als machine in de netsh-opdrachtprompt. Wanneer u -r
gebruikt, stelt u de doelcomputer alleen in voor het huidige exemplaar van netsh. Nadat u netshhebt afgesloten en opnieuw hebt ingevoerd, wordt de doelcomputer aangemerkt als de lokale computer. U kunt netsh opdrachten uitvoeren op een externe computer door een computernaam op te geven die is opgeslagen in WINS, een UNC-naam, een internetnaam die moet worden omgezet door de DNS-server of een IP-adres.
Netsh-opdrachten uitvoeren
Als u een netsh-opdracht wilt uitvoeren, moet u netsh starten vanaf de opdrachtprompt of PowerShell door netsh- te typen en vervolgens op Enter te drukken. Vervolgens kunt u de context wijzigen die de opdracht bevat die u wilt gebruiken. De beschikbare contexten zijn afhankelijk van de netwerkonderdelen die zijn geïnstalleerd.
Als u bijvoorbeeld dhcp- typt in de netsh-shell en op Enter drukt, verandert netsh in de DHCP-servercontext. Als u de dhcp-serverfunctie niet hebt geïnstalleerd, wordt het volgende bericht weergegeven:
The following command was not found: dhcp.
Netsh-contexten
Netsh communiceert met andere onderdelen van het besturingssysteem met behulp van DLL-bestanden (Dynamic Link Library).
Elk netsh helper-DLL biedt een uitgebreide set functies, een context, een groep opdrachten die specifiek zijn voor een netwerkserverfunctie of -functie. Deze contexten breiden de functionaliteit van netsh uit door configuratie- en bewakingsondersteuning te bieden voor een of meer services, hulpprogramma's of protocollen.
Dhcpmon.dll biedt bijvoorbeeld netsh de context en set opdrachten die nodig zijn voor het configureren en beheren van DHCP-servers.
U kunt een lijst met netsh-contexten verkrijgen door de opdrachtprompt of Windows PowerShell te openen. Typ vervolgens netsh /?
of netsh help
en druk op Enter.
Een voorbeelduitvoer is als volgt:
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 ?.
Netsh-subcontexten
Netsh-contexten kunnen zowel opdrachten als extra contexten bevatten, subcontextengenoemd. U kunt bijvoorbeeld binnen de interface context de subcontext IPv4 en IPv6 wijzigen.
Als u een lijst met opdrachten en subcontexten wilt weergeven die u in een context kunt gebruiken, typt u in de netsh-shell de naam van de subcontext en typt u vervolgens ? of hulp. Bijvoorbeeld:
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 ?.
Als u taken in een andere context wilt uitvoeren zonder te veranderen van uw huidige context, typt u het contextpad van de opdracht die u wilt gebruiken in de netsh-shell. Als u bijvoorbeeld een statisch IPv4-adres voor NetLAN1 wilt toevoegen en zowel het subnetmasker als de gateway wilt opgeven, typt u:
netsh interface ipv4 set address "NetLAN1" static <IP_Address> <Subnet_Mask> <Gateway>
Legenda opmaken
U kunt de volgende opmaaklegenda gebruiken om de juiste netsh-opdrachtsyntaxis te interpreteren en te gebruiken wanneer u de opdracht uitvoert in de netsh-shell, in een batchbestand of script.
- Tekst in Cursief is informatie die u moet opgeven terwijl u de opdracht typt. Als een opdracht bijvoorbeeld een parameter heeft met de naamUserName, moet u de werkelijke gebruikersnaam typen.
- Tekst in Vet is informatie die u precies zo moet typen als weergegeven bij het typen van de opdracht.
- Tekst gevolgd door een beletselteken (...) is een parameter die meerdere keren in een opdrachtregel kan worden herhaald.
- Tekst tussen vierkante haken [ ] is een optioneel item.
- Tekst tussen accolades { } met keuzes gescheiden door een pijp biedt een reeks keuzes waaruit u slechts één moet selecteren, zoals
{enable|disable}
. - Teksten die zijn opgemaakt met het lettertype 'Courier' zijn code of programma-uitvoer.
Tekenreekswaarden voor netsh-opdrachten
Er zijn opdrachten die parameters bevatten waarvoor een tekenreekswaarde is vereist. In het geval dat een tekenreekswaarde spaties tussen tekens bevat, moet u de tekenreekswaarde tussen dubbele aanhalingstekens plaatsen.
Bij het instellen van de interface parameter voor IPv4-netwerken met een tekenreekswaarde van Draadloze netwerkverbinding dhcp, gebruikt u dubbele aanhalingstekens rond de tekenreekswaarde. Bijvoorbeeld:
netsh interface ipv4>set address name="Wireless Network Connection" dhcp
Voor netwerkinterfaces kan het indexnummer ook worden gebruikt in plaats van de naam die eraan is gekoppeld. Bijvoorbeeld:
netsh interface ipv4>set address name=15 dhcp
Als u de naam of index van de aangesloten netwerkaansluitingen wilt vinden, moet u zich bevinden in de subcontext van de IPv4- of IPv6-interface en de opdracht show interfacestypen. Bijvoorbeeld:
netsh interface ipv4>show interfaces
netsh interface ipv6>show interfaces