- 1 Section
- 10 Lessons
- unbegrenzt
- CMD – Windows-Kommandozeile10
- 1.1CMD vs. PowerShell vs. WSL
- 1.2Navigation: cd, dir, md, rd, tree
- 1.3Dateioperationen: copy, move, del, ren, type
- 1.4Netzwerkbefehle: ipconfig, ping, tracert, nslookup
- 1.5Systeminformationen: systeminfo, tasklist, taskkill
- 1.6Batch-Scripting: Grundstruktur und Variablen
- 1.7Batch: Schleifen und Bedingungen
- 1.8Erweiterte Netzwerkdiagnose: arp, route, netsh
- 1.9Benutzer und Rechte: net user, net localgroup
- 1.10Praxisszenarien: Troubleshooting mit CMD
Erweiterte Netzwerkdiagnose: arp, route, netsh
Mit den Befehlen aus L4 löst du die meisten Alltags-Probleme – aber wenn es um tiefere Netzwerk-Analyse geht (Routing-Probleme, ARP-Konflikte, Firewall-Diagnose, WLAN-Profile), brauchst du die nächste Stufe. arp, route, netstat und vor allem netsh sind die Werkzeuge dafür.
Diese Befehle sind älter und teilweise zugunsten der PowerShell-Cmdlets als „deprecated" markiert. Aber: sie funktionieren überall, in jedem Windows, ohne Module nachladen zu müssen. Auf einem fremden System ist CMD oft das Einzige was sofort verfügbar ist. netsh insbesondere ist immer noch das mächtigste Tool für die Firewall-Konfiguration und WLAN-Verwaltung.
1) arp – die IP-MAC-Tabelle verstehen
Im lokalen Netzwerk reden Geräte nicht direkt über IP-Adressen, sondern über MAC-Adressen – die Hardware-Identitäten der Netzwerkkarten. Damit deine Pakete die richtige MAC erreichen, hat dein Computer eine Tabelle: IP-Adresse → MAC-Adresse. Das ist die ARP-Tabelle. arp -a zeigt sie:
Spalten:
- Internetadresse – die IP eines Geräts in deinem Subnetz
- Physische Adresse – dessen MAC-Adresse
- Typ – „dynamisch" (per ARP gelernt, läuft nach Sekunden ab) oder „statisch" (Broadcast-/Multicast-Adressen)
Analogie: stell dir die ARP-Tabelle wie ein Telefonbuch für die Hausnummern deiner Straße vor. Wenn du was zu „Haus Nummer 10" willst (IP), brauchst du die genaue Adresse (MAC). Dein Computer fragt einmalig per ARP-Broadcast „Wer hat IP 192.168.1.10?" und merkt sich die Antwort.
2) Interaktive ARP-Tabelle
Klick auf eine Zeile um zu sehen wofür sie da ist. Beachte die markierte Zeile:
3) ARP-Befehle: anzeigen, löschen, hinzufügen
Wann nützlich: Wenn du in einem schlecht konfigurierten Netz ein Gerät ansprechen willst, aber ARP nicht funktioniert. Oder wenn ein Gerät umgezogen ist und der Cache noch die alte MAC hat – dann arp -d ZIEL-IP erzwingt eine Neuauflösung. Mehr zu ARP und Layer 2 in K20.
4) route print – die Routing-Tabelle
Wenn dein Computer ein Paket sendet, fragt er die Routing-Tabelle: „Wohin damit?". Das ist ein Regelwerk mit IP-Bereichen → Gateways → Schnittstellen. route print zeigt sie:
Das Wichtigste: die Default-Route in der ersten Zeile: 0.0.0.0 mit Gateway 192.168.1.1. Das bedeutet: „alles wofür ich keine speziellere Regel habe, schicke an 192.168.1.1". Das ist dein Router. Die anderen Zeilen sind Routen fürs lokale Subnetz, Loopback (127.x), und Multicast (224.x).
Probier den interaktiven Routing-Editor – füg eine statische Route hinzu und sieh den Befehl:
10.0.0.0/8 ist die interne Firma, dorthin geht's über VPN-Gateway. Mit route -p add wird die Route auch nach Reboot beibehalten.5) route add, change, delete
Alle modifizierenden route-Befehle brauchen Admin-Rechte. Persistente Routen (-p) werden in der Registry gespeichert und beim Boot wieder hergestellt. Mehr zu Routing-Konzepten findest du in K22.
6) netstat – wer redet mit wem?
netstat zeigt alle aktiven Netzwerk-Verbindungen und offenen Ports. Klassisch für Sicherheits-Audits und um zu finden welcher Prozess welchen Port belegt:
Wichtige Optionen:
-a: alle Verbindungen, auch lauschende Ports-n: numerische IPs/Ports, keine DNS-Auflösung (schneller!)-o: zeigt PID des Prozesses pro Verbindung-b: zeigt sogar den Programm-Namen (braucht Admin!)-p tcp/-p udp: filtert auf Protokoll-r: zeigt Routing-Tabelle (wieroute print)-s: Statistik
Klassischer Use-Case: „warum kann ich keinen Webserver auf Port 80 starten – wer blockiert den?":
Diese Kombination aus netstat -ano + tasklist /fi ist DAS Werkzeug für Port-Konflikte. Mehr zu Prozessen in L5.
7) netsh – das Universal-Werkzeug
netsh (Network Shell) ist der mächtigste Netzwerk-Befehl in Windows. Eigentlich ist es eine eigene Mini-Shell mit „Kontexten" – jedes Kontext hat eigene Unterbefehle. Das ist anfangs verwirrend, aber sehr mächtig:
Im Alltag tippst du meistens direkt die volle Form als einzeilen Befehl, ohne interaktiv reinzugehen:
8) netsh: die wichtigsten Kontexte
netsh interface ip show confignetsh wlan show profilesnetsh advfirewall firewall add rule ...advfirewall und wlan benutzen. Mit netsh KONTEXT show ? findest du raus was geht. Für tiefer eingehende Firewall-Konfiguration siehe K09 Firewalls.9) WLAN-Profile mit netsh wlan
Ein extrem nützlicher Trick: gespeicherte WLAN-Passwörter auslesen. Funktioniert mit Admin-Rechten:
Wichtig zum Thema Datenschutz: das Auslesen von WLAN-Passwörtern braucht zwar Admin-Rechte, ist aber rechtlich nur unproblematisch wenn es dein eigenes Gerät / Netz ist. Auf fremden Geräten könnte das computerstrafrechtlich relevant sein – siehe K06. Mehr zu WLAN-Sicherheit in K23.
10) Firewall mit netsh advfirewall
Die Windows-Firewall steuern. Mehr zu den Konzepten in K09:
Die Firewall ohne Not abzuschalten ist eine schlechte Idee – mehr zu Firewall-Best-Practices in K09. Gezielte Regeln für nötige Ports sind besser.
11) IP-Konfiguration mit netsh interface
Statt mit der GUI kannst du IP-Adressen auch per Befehl setzen – wichtig für Server-Setups:
Das sind die Befehle die in Server-Provisioning-Skripten landen: Server bekommen ihre statische IP per CMD-Skript zugewiesen, statt manueller GUI-Klickerei.
12) netsh trace – Packet-Capture eingebaut
Ein vergessenes Feature: netsh trace ist ein eingebauter Packet-Capture, ähnlich zu Wireshark. Praktisch wenn du keine Tools installieren darfst:
Das ist kein Werkzeug für den Alltag, aber gut zu wissen wenn du in einer eingeschränkten Umgebung ein Netzwerk-Problem debuggen musst und keine externen Tools nutzen darfst.
13) Vergleich zu PowerShell
| Aufgabe | CMD/netsh | PowerShell |
|---|---|---|
| ARP-Tabelle | arp -a | Get-NetNeighbor |
| Routing-Tabelle | route print | Get-NetRoute |
| Route hinzufügen | route add ... | New-NetRoute |
| Offene Ports | netstat -ano | Get-NetTCPConnection |
| IP setzen | netsh interface ip set address ... | New-NetIPAddress |
| Firewall-Regel | netsh advfirewall firewall add rule | New-NetFirewallRule |
| WLAN-Profile | netsh wlan show profiles | (noch via netsh) |
Für Skripte und Automation ist PowerShell deutlich besser – siehe K44 L8. Aber: CMD funktioniert überall, auch in alten Windows-Versionen, ohne Module. WLAN ist sogar das einzige wo CMD/netsh noch die einzige sinnvolle Variante ist – PowerShell hat hier keine guten nativen Cmdlets.
Zusammenfassung
arp -a zeigt IP-MAC-Tabelle deines lokalen Subnetzes; arp -d ZIEL löscht Eintrag (Force-Refresh); doppelte MACs deuten auf ARP-Spoofing hin. route print zeigt Routing-Tabelle; die 0.0.0.0-Zeile ist die Default-Route (zum Internet); route -p add ZIEL mask MASKE GATEWAY für persistente Routen. netstat -ano zeigt alle Verbindungen mit Prozess-ID; kombiniert mit tasklist /fi "pid eq N" findest du welcher Prozess einen Port belegt. netsh ist Universal-Werkzeug mit Kontexten: interface (IP-Config), wlan (WLAN-Profile, Passwörter mit key=clear), advfirewall (Firewall-Regeln), trace (Paket-Capture). Alle modifizierenden Befehle brauchen Admin-Rechte. PowerShell-Pendants in K44 L8 sind moderner für Skripte; für WLAN-Verwaltung bleibt netsh aber Standard. Mehr Routing in K22, mehr Firewalls in K09.
