# Netsh – so verwalten Sie Netzwerke

Wer sich intensiver mit der Konfiguration von Netzwerken unter Windows auseinandersetzt, stößt früher oder später auf die Network Shell (Netsh). Hinter dem Begriff steht eine **Schnittstelle zwischen Nutzer und Betriebssystem**, die das Administrieren und Konfigurieren von lokalen und entfernten Netzwerkeinstellungen ermöglicht.

Das Spektrum an Einsatzmöglichkeiten reicht von Einstellungen für die Windows-Firewall über die LAN- und WLAN-Verwaltung bis hin zu IP- und Serverkonfigurationen. Zudem können netzgebundene Infrastrukturen gegen Angriffe von außen abgesichert werden. Mithilfe des Befehlszeilentools werden auch **Probleme diagnostiziert** und Reparaturen im Netzwerk durchgeführt. Ein großer Vorteil von Netsh: Netzwerkbezogene Verwaltungsaufgaben werden besonders schnell und komfortabel erledigt und lassen sich **per Skript automatisieren**.

## Netsh-Befehle ausführen: Starten der Eingabeaufforderung

Um Netsh nutzen zu können, muss man sich auf die **Ebene der Kommandozeile** begeben. Dorthin gelangt man über das „Ausführen“-Menü („Run“), das Sie folgendermaßen aufrufen:

1. Tastenkombination \[Windows\] + \[R\] drücken
2. „cmd“ in das Eingabefeld eintragen (1)
3. den „OK“-Button drücken (2)

[![Bild: Aufruf „Ausführen“-Menü](https://www.ionos.de/digitalguide/fileadmin/_processed_/e/2/csm_aufruf-ausfuehren-menue_c7dbedf7fd.webp "Aufruf „Ausführen“-Menü")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/aufruf-ausfuehren-menue.png) Aufruf „Ausführen“-Menü Anschließend öffnet sich die Eingabeaufforderung. Mit der Eingabe von „netsh“ und einer anschließenden Bestätigung mit \[Enter\] wird das Dienstprogramm gestartet:

[![Bild: Eingabeaufforderung für Netsh-Befehle](https://www.ionos.de/digitalguide/fileadmin/_processed_/c/3/csm_eingabeaufforderung-fuer-netsh-befehle_dc91fcb1ca.webp "Eingabeaufforderung für Netsh-Befehle")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/eingabeaufforderung-fuer-netsh-befehle.png) Eingabeaufforderung für Netsh-Befehle Werden Netsh-Befehle und -Skripte nicht ausgeführt oder sind tiefergehende Eingriffe in die Netzwerkkonfiguration geplant, sollte man die **Network Shell mit Administratorrechten** starten. Unter Windows 10 sind diese Schritte notwendig:

1\. Rechtsklick auf Windows-Symbol links in der Taskleiste oder Tastenkombination \[Windows\] + \[X\] drücken.

2\. Im sich öffnenden Kontextmenü den Eintrag „Eingabeaufforderung (Administrator)“ wählen:

[![Bild: Kontextmenü Windows-Symbol Taskleiste](https://www.ionos.de/digitalguide/fileadmin/_processed_/b/d/csm_kontextmenue-windows-symbol-taskleiste_d90ab06cad.webp "Kontextmenü Windows-Symbol Taskleiste")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/kontextmenue-windows-symbol-taskleiste.png) Kontextmenü Windows-Symbol Taskleiste Zu Netsh gehört die **Programmdatei *netsh.exe***, die sich im Windows-Systemordner befindet (*%windir%\\system32*). Ein Direktaufruf verkürzt die Eingabeprozedur von Netsh-Befehlen. Sie können dazu den Pfad *C:\\Windows\\System32\\netsh.exe* in die Adresszeile des Windows-Explorers eingeben und auf \[Enter\] drücken. Im sich öffnenden Eingabefenster können Sie dann umgehend Netsh-Befehle eingeben.

Der Direktaufruf lässt sich mit einer **Verknüpfung** beschleunigen. Ist diese einmal angelegt, reicht zukünftig ein einziger Mausklick für den Start der Befehlseingabe:

1\. Rechtsklick auf den Windows-Desktop. Auf den Menüeintrag „Neu“ klicken (1), dann im nächsten sich öffnenden Kontextmenü auf „Verknüpfung“ klicken (2):

[![Bild: Kontextmenü Verknüpfung anlegen](https://www.ionos.de/digitalguide/fileadmin/_processed_/f/8/csm_kontextmenue-verknuepfung-anlegen_4296d39522.webp "Kontextmenü Verknüpfung anlegen")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/kontextmenue-verknuepfung-anlegen.png) Kontextmenü Verknüpfung anlegen 2\. Im **Assistenten für Verknüpfungen** den Pfad *C:\\Windows\\System32\\netsh.exe* eingeben (1) und auf „Weiter“ klicken (2):

[![Bild: Pfadeingabe für Netsh-Verknüpfung](https://www.ionos.de/digitalguide/fileadmin/_processed_/3/4/csm_pfadeingabe-fuer-netsh-verknuepfung_cc165d870e.webp "Pfadeingabe für Netsh-Verknüpfung")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/pfadeingabe-fuer-netsh-verknuepfung.png) Pfadeingabe für Netsh-Verknüpfung 3\. Dann sollten Sie einen **aussagekräftigen Namen** für die Verknüpfung vergeben (1), die anschließend nach einem Klick auf „Fertig stellen“ (2) auf dem Desktop abgelegt wird:

[![Bild: Namenseingabe für Netsh-Verknüpfung](https://www.ionos.de/digitalguide/fileadmin/_processed_/d/8/csm_namenseingabe-fuer-netsh-verknuepfung_b2cc3afb22.webp "Namenseingabe für Netsh-Verknüpfung")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/namenseingabe-fuer-netsh-verknuepfung.png) Namenseingabe für Netsh-Verknüpfung ## So ist Netsh aufgebaut

Das Dienstprogramm Netsh stellt eine **umfangreiche Befehlssyntax** zur Verfügung. Wer damit gezielt bestimmte Aufgaben erledigen möchte, muss sich mit dem spezifischen Aufbau der Network Shell vertraut machen. Die Struktur des Dienstprogramms basiert auf **Kontexten**, die verschiedene Verwaltungsebenen repräsentieren. Jeder Kontext deckt eine bestimmte Netzwerk-Funktionalität ab (z. B. IP-, LAN- und Firewall-Konfiguration). Für die kontextgebundene Interaktion mit anderen Windows-Komponenten nutzt das Hilfsprogramm die Dateien der Dynamic-Link Library (DLL). Netsh greift etwa auf die *Dhcpmon.dll* zu, um DHCP-Einstellungen zu ändern und zu verwalten.

Für die Nutzung eines Kontexts muss zu diesem in der Eingabeaufforderung von Windows gewechselt werden. In den **Kontext „LAN-Verwaltung“** gelangt man beispielsweise folgendermaßen:

1\. Nach Aufruf der Eingabeaufforderung „netsh“ eingeben und mit \[Enter\] bestätigen.

2\. Dann „lan“ eingeben und mit \[Enter\] bestätigen.

3\. Nun zeigt die Eingabeaufforderung den Kontextwechsel an: *netsh lan&gt;*

[![Bild: Kontextwechsel Netsh](https://www.ionos.de/digitalguide/fileadmin/_processed_/9/3/csm_kontextwechsel-netsh_69fce3029a.webp "Kontextwechsel Netsh")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/kontextwechsel-netsh.png) Kontextwechsel Netsh Haben Sie in den Kontext „LAN“ gewechselt, stehen **kontextspezifische** und **kontextübergreifende Befehle** zur Verfügung. Zu den kontextspezifischen Befehlen zählt beispielsweise „set“ (konfiguriert Einstellungen auf Schnittstellen). Ein Beispiel für einen grundsätzlichen und kontextübergreifenden Netsh-Befehl ist der Hilfebefehl „/?“, der in jedem Bereich die verfügbaren Unterkontexte und -befehle auflistet. Im Bereich „LAN“ wird nach dessen Eingabe folgende Liste mit kontextspezifischen und -übergreifenden Befehlen angezeigt:

[![Bild: Befehle im Netsh-Kontext „LAN“](https://www.ionos.de/digitalguide/fileadmin/_processed_/d/1/csm_befehle-im-netsh-kontext-lan_5e0e207f21.webp "Befehle im Netsh-Kontext „LAN“")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/befehle-im-netsh-kontext-lan.png) Befehle im Netsh-Kontext „LAN“ Wechselt man beispielsweise in den **Firewall-Kontext**, sieht die dazugehörige Befehlsreferenz so aus:

[![Bild: Befehle im Netsh-Kontext „Firewall“](https://www.ionos.de/digitalguide/fileadmin/_processed_/b/a/csm_befehle-im-netsh-kontext-firewall_9b0ce357e5.webp "Befehle im Netsh-Kontext „Firewall“")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/befehle-im-netsh-kontext-firewall.png) Befehle im Netsh-Kontext „Firewall“ Neben der kontextgebundenen Struktur gibt es noch weitere Besonderheiten bei der Bedienung. Netsh kann entweder im nichtinteraktiven oder im interaktiven Modus genutzt werden. Im **nichtinteraktiven Modus** werden etwa wichtige Netzwerkeinstellungen in eine Textdatei exportiert und für eine spätere Wiederherstellung wieder importiert.

Im **interaktiven Modus** können beispielsweise direkte Anfragen gestartet werden. Gibt man „netsh interface ip show address“ ein, wird die aktuelle IP-Adresse des Computers angezeigt. Die Nutzung des interaktiven Modus kann **online oder offline** erfolgen. Erstgenannter Modus setzt Operationen direkt um, der Offlinemodus speichert Aktionen und führt sie später aus. Die Aktivierung der hinterlegten Aktionen erfolgt zum gewünschten Zeitpunkt mit dem Netsh-Befehl „commit“.

## Die Netsh-Befehle und ihre Kontexte

Wir haben die **wichtigsten Netsh-Befehle** mit einer kurzen Erläuterung der Kontexte in der folgenden Übersicht zusammengestellt. Handelt es sich um einen allgemeinen kontextübergreifenden Befehl, fehlen weitere Erläuterungen in der rechten Spalte. Je nach Betriebssystemversion und Rolle im Netzwerk (Client oder Server) können die zur Verfügung stehenden **Befehle punktuell abweichen**. Die Befehlsausgabe bei einem Computer mit Windows Server 2016 Datacenter lautet:

<table>
  <tbody>
    <tr>
      <td><strong>Befehl</strong></td>
      <td><strong>Umsetzung</strong></td>
      <td><strong>Netsh-Kontext verwaltet</strong></td>
    </tr>
    <tr>
      <td>..</td>
      <td>Wechsel zu einer Kontextebene höher</td>
      <td></td>
    </tr>
    <tr>
      <td>?</td>
      <td>Zeigt eine Liste der Befehle an</td>
      <td></td>
    </tr>
    <tr>
      <td>abort</td>
      <td>Verwirft Änderungen, die im Offlinemodus vorgenommen wurden</td>
      <td></td>
    </tr>
    <tr>
      <td>add</td>
      <td>Fügt einen Konfigurationseintrag zur Liste hinzu</td>
      <td></td>
    </tr>
    <tr>
      <td>advfirewall</td>
      <td>Wechsel zum „netsh advfirewall“-Kontext</td>
      <td>Firewall (Richtlinien und Konfiguration)</td>
    </tr>
    <tr>
      <td>alias</td>
      <td>Fügt einen Alias hinzu</td>
      <td></td>
    </tr>
    <tr>
      <td>branchcache</td>
      <td>Wechsel zum „netsh branchcache“-Kontext</td>
      <td>Einstellung zum Branchcache</td>
    </tr>
    <tr>
      <td>bridge</td>
      <td>Wechsel zum „netsh bridge“-Kontext</td>
      <td>Netzwerkbrücke</td>
    </tr>
    <tr>
      <td>bye</td>
      <td>Beendet das Programm</td>
      <td></td>
    </tr>
    <tr>
      <td>commit</td>
      <td>Überträgt Änderungen, die im Offlinemodus vorgenommen wurden</td>
      <td></td>
    </tr>
    <tr>
      <td>delete</td>
      <td>Löscht einen Konfigurationseintrag aus der Liste der Einträge</td>
      <td></td>
    </tr>
    <tr>
      <td>dhcpclient</td>
      <td>Wechsel zum „netsh dhcpclient“-Kontext</td>
      <td>DHCP-Client</td>
    </tr>
    <tr>
      <td>dnsclient</td>
      <td>Wechsel zum „netsh dnsclient“-Kontext</td>
      <td>DNS-Clienteinstellungen</td>
    </tr>
    <tr>
      <td>dump</td>
      <td>Zeigt ein Konfigurationsskript an</td>
      <td></td>
    </tr>
    <tr>
      <td>exec</td>
      <td>Führt eine Skriptdatei aus</td>
      <td></td>
    </tr>
    <tr>
      <td>exit</td>
      <td>Beendet das Programm</td>
      <td></td>
    </tr>
    <tr>
      <td>firewall</td>
      <td>Wechsel zum „netsh firewall“-Kontext</td>
      <td>Firewall (Richtlinien und Konfiguration)</td>
    </tr>
    <tr>
      <td>help</td>
      <td>Zeigt eine Liste der Befehle an</td>
      <td></td>
    </tr>
    <tr>
      <td>http</td>
      <td>Wechsel zum „netsh http“-Kontext</td>
      <td>http-Servertreiber (http.sys)</td>
    </tr>
    <tr>
      <td>interface</td>
      <td>Wechsel zum „netsh interface“-Kontext</td>
      <td>IP-Konfiguration (v4, v6)</td>
    </tr>
    <tr>
      <td>ipsec</td>
      <td>Wechsel zum „netsh ipsec“-Kontext</td>
      <td>IPSec-Richtlinien</td>
    </tr>
    <tr>
      <td>ipsecdosprotection</td>
      <td>Wechsel zum „netsh ipsecdosprotection“-Kontext</td>
      <td>Schutz vor IPSEC-Denial-of-Service-Angriffen</td>
    </tr>
    <tr>
      <td>lan</td>
      <td>Wechsel zum „netsh lan“-Kontext</td>
      <td>drahtgebundene Netzwerkschnittstellen</td>
    </tr>
    <tr>
      <td>namespace</td>
      <td>Wechsel zum „netsh namespace“-Kontext</td>
      <td>DNS-Clientrichtlinien</td>
    </tr>
    <tr>
      <td>netio</td>
      <td>Wechsel zum „netsh netio“-Kontext</td>
      <td>Bindungsfilter</td>
    </tr>
    <tr>
      <td>offline</td>
      <td>Setzt den aktuellen Modus auf offline</td>
      <td></td>
    </tr>
    <tr>
      <td>online</td>
      <td>Setzt den aktuellen Modus auf online</td>
      <td></td>
    </tr>
    <tr>
      <td>popd</td>
      <td>Wechsel zum durch pushd im Stapel gespeicherten Kontext</td>
      <td></td>
    </tr>
    <tr>
      <td>pushd</td>
      <td>Überträgt den aktuellen Kontext auf den Stapel</td>
      <td></td>
    </tr>
    <tr>
      <td>quit</td>
      <td>Beendet das Programm</td>
      <td></td>
    </tr>
    <tr>
      <td>ras</td>
      <td>Wechsel zum „netsh ras“-Kontext</td>
      <td>Remote-Access-Server</td>
    </tr>
    <tr>
      <td>rpc</td>
      <td>Wechsel zum „netsh rpc“-Kontext</td>
      <td>Konfiguration RPC-Dienst</td>
    </tr>
    <tr>
      <td>set</td>
      <td>Aktualisiert Konfigurationseinstellungen</td>
      <td></td>
    </tr>
    <tr>
      <td>show</td>
      <td>Zeigt Informationen an</td>
      <td></td>
    </tr>
  </tbody>
</table>

## Syntaxparameter für Netsh – was bedeuten sie?

Um konkrete Aktionen und Aufgaben umzusetzen, können Netsh-Befehle mit **optionalen Parametern** versehen werden. Das Syntaxschema für die Kombination von Netsh-Befehlen und -Parametern lautet:

```none
netsh [-a Aliasdatei] [-c Kontext] [-r Remotecomputer] [-u [Domänenname\]Benutzername] [-p Kennwort | *] [Befehl | -f Skriptdatei]
```

Die folgenden Parameter sind **allesamt optional**, können also je nach Bedarf ergänzt und verwendet werden:

<table>
  <tbody>
    <tr>
      <td>-a</td>
      <td>Rückkehr zur Netsh-Eingabeaufforderung nach Ausführung der Aliasdatei</td>
    </tr>
    <tr>
      <td>Aliasdatei (engl.: AliasFile)</td>
      <td>Gibt den Namen der Textdatei an, die mindestens einen Netsh-Befehl enthält</td>
    </tr>
    <tr>
      <td>-c</td>
      <td>Wechsel in den angegebenen Netsh-Kontext</td>
    </tr>
    <tr>
      <td>Kontext (engl.: Context)</td>
      <td>Platzhalter für den einzugebenden Kontext (z. B. WLAN)</td>
    </tr>
    <tr>
      <td>-r</td>
      <td>Veranlasst, dass der Befehl auf einem entfernten Computer (Remotecomputer) ausgeführt wird; dort muss der Remoteregistrierungsdienst ausgeführt werden.</td>
    </tr>
    <tr>
      <td>Remotecomputer (engl.: RemoteComputer)</td>
      <td>Name des Remotecomputers, der konfiguriert wird</td>
    </tr>
    <tr>
      <td>-u</td>
      <td>Zeigt an, dass der Netsh-Befehl unter einem Benutzerkonto ausgeführt wird</td>
    </tr>
    <tr>
      <td>Domänenname\\ (engl.: DomainName\\)</td>
      <td>Bezeichnet die Benutzerkonto-Domäne (Standardwert ist die lokale Domäne, wenn kein spezieller Domänenname angegeben ist)</td>
    </tr>
    <tr>
      <td>Benutzername (engl.: UserName)</td>
      <td>Namen des Benutzerkontos</td>
    </tr>
    <tr>
      <td>-p</td>
      <td>Ein Kennwort für das Benutzerkonto kann eingegeben werden.</td>
    </tr>
    <tr>
      <td>Kennwort (engl: Password)</td>
      <td>Gibt das Kennwort für das Benutzerkonto an, das man mit *-u Benutzername* angegeben hat</td>
    </tr>
    <tr>
      <td>Netsh-Befehl (engl.: NetshCommand)</td>
      <td>Auszuführender Netsh-Befehl</td>
    </tr>
    <tr>
      <td>-f</td>
      <td>Beendet Netsh nach Ausführung der Skriptdatei</td>
    </tr>
    <tr>
      <td>Skriptdatei (engl.: ScriptFile)</td>
      <td>Auszuführendes Skript</td>
    </tr>
  </tbody>
</table>

### Zurücksetzen des TCP/IP-Stacks mit Netsh

Eine häufige Anwendung von Netsh-Befehlen ist **das Zurücksetzen des TCP/IP-Stacks**, der für den Austausch von Datenpaketen in Netzwerken sorgt. Bei Netzwerk- und Internetproblemen kann diese Maßnahme, die z. B. defekte oder falsch eingerichtete TCP/IP-Protokolle entfernt, sinnvoll sein. Mit folgendem **Reparaturbefehl** wird ein Reset durchgeführt und TCP/IPv4 neu installiert:

```none
netsh int ip reset
```

Eine **Protokolldatei**, die die erfolgten Änderungen dokumentiert, kann zusätzlich angelegt werden:

```none
netsh int ip reset c:\tcpipreset.txt
```

Nach Durchführung des Resets muss der **Computer neu gestartet** werden.

Tipp Netsh-Befehle können auch in Batch-Dateien (*\*.bat*) verwendet werden, um Routineaufgaben zu automatisieren. In unserem Ratgeber „[Batch-Datei erstellen](https://www.ionos.de/digitalguide/server/tools/batch-datei-erstellen/ "Batch-Datei erstellen")“ erfahren Sie mehr.

### Im- und Export von Netzwerkeinstellungen

Mit Netsh können Sie auch **aktuelle Netzwerkeinstellungen** in eine einfache Textdatei exportieren. Bei Netzwerkproblemen wird dann eine funktionierende und fehlerfreie Konfiguration zügig wiederhergestellt.

Im ersten Schritt (Export) wird die **Netzwerkkonfiguration ausgelesen**, in eine Textdatei geschrieben (*netcnfig.txt*) und im Beispielverzeichnis „Netzwerkkonfiguration“ auf dem Laufwerk *C:\\* hinterlegt. Den Ordner „Netzwerkkonfiguration“ müssen Sie vor dem erstmaligen Export manuell auf dem Ziellaufwerk anlegen (das geschieht nicht automatisch durch Netsh). Dann wechseln Sie in die Eingabeaufforderung und geben folgenden Code ein:

```none
netsh -c interface dump>c:\Netzwerkkonfiguration\netcnfig.txt
```

Für den späteren **Import der Einstellungen** ist die folgende Befehlseingabe erforderlich:

```none
netsh -f c:\Netzwerkkonfiguration\netcnfig.txt
```

Tipp Windows 10 unterstützt auch bei der Eingabeaufforderung **Copy-and-Paste**. Sie können die Befehlssyntax einfach aus diesem Artikel kopieren und anschließend ins Eingabefenster einfügen.

### IP-Konfiguration mit Netsh

Ein verbreiteter Anwendungsfall von Netsh ist die **Änderung von IP-Einstellungen**. Soll ein Rechner im Netzwerk keine statische, sondern eine automatisch zugewiesene IP-Adresse erhalten, setzt man dafür das [Dynamic Host Configuration Protocol (DHCP)](https://www.ionos.de/digitalguide/server/konfiguration/dhcp-das-client-server-protokoll-im-ueberblick/ "DHCP – das Client-Server-Protokoll im Überblick") ein. Dieses Kommunikationsprotokoll weist Clients in einem Netzwerk automatisch IP-Adressen und weitere erforderliche Konfigurationsdaten zu. Für den Vorgang sind mehrere Schritte nötig:

Im ersten Schritt werden die aktuellen Einstellungen und **Namen der verfügbaren Netzwerkadapter** abgerufen:

```none
netsh interface ipv4 show interface
```

[![Bild: Anzeige Netzwerkadapter](https://www.ionos.de/digitalguide/fileadmin/_processed_/3/5/csm_anzeige-netwerkadapter_63e2405a9c.webp "Anzeige Netzwerkadapter")](https://www.ionos.de/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/anzeige-netwerkadapter.png) Anzeige Netzwerkadapter Nun wird ein **bestimmter LAN-Adapter** (in diesem Beispiel: Ethernet) als Adressat für die IP-Zuweisung über DHCP bestimmt:

```none
netsh interface ipv4 set address name="Ethernet" source=dhcp
```

Danach übernimmt DHCP die **dynamische Verwaltung für Netzwerkeinstellungen**, die den Ethernet-Adapter betreffen.

### Windows-Firewall ein- und ausschalten

Wenn Sie die **Windows-Firewall aktivieren oder deaktivieren** wollen, reicht eine einfache Netsh-Befehlssyntax aus. Eine Firewall aktivieren Sie wie folgt:

```none
netsh firewall set opmode enable
```

Die Deaktivierung der Firewall geschieht mit folgender Befehlszeile:

```none
netsh firewall set opmode disable
```

Hinweis In einigen Kontexten empfiehlt Windows Alternativen zur Netzwerkadministration mit Netsh. Häufiger genannt wird dabei die [Windows PowerShell](https://www.ionos.de/digitalguide/server/knowhow/windows-powershell/ "Windows PowerShell"), zu der Sie eine Einführung in unserem Digital Guide finden.


This is a markdown version of: [https://www.ionos.de/digitalguide/server/tools/netsh/](https://www.ionos.de/digitalguide/server/tools/netsh/) for AI/LLM consumption.