netstat
Kurz: Ein Befehl, der offene Ports, aktive Verbindungen und Netzwerkstatistiken des eigenen Rechners anzeigt.
Genauer: netstat (Network Statistics) zeigt, welche Ports auf dem Rechner lauschen und mit welchen Gegenstellen gerade Verbindungen bestehen. Unter Linux ist ss der moderne Nachfolger. Damit prüft man, ob ein Dienst läuft und ob unerwartete Verbindungen existieren.
Im Detail
Wichtige Optionen
| Aufruf | Wirkung |
|---|---|
netstat -an | alle Verbindungen und lauschenden Ports, numerisch |
netstat -ano | zusätzlich die Prozess-ID (PID) |
netstat -b | zugehöriges Programm (Administratorrechte nötig) |
netstat -r | Routing-Tabelle |
netstat -s | Statistiken je Protokoll ([[tcp |
netstat -an | findstr :443 | nur Zeilen mit Port 443 |
Beispielausgabe
Proto Lokale Adresse Remoteadresse Status
TCP 0.0.0.0:80 0.0.0.0:0 ABHÖREN
TCP 192.168.1.23:51234 76.76.21.21:443 HERGESTELLT
UDP 0.0.0.0:68 *:*Zustände einer TCP-Verbindung
- LISTENING (ABHÖREN): Ein Dienst wartet auf Verbindungen.
- ESTABLISHED (HERGESTELLT): Die Verbindung steht, Daten fließen.
- TIME_WAIT: Die Verbindung wurde geschlossen, der Port wird noch kurz reserviert.
- SYN_SENT / SYN_RECEIVED: Aufbau läuft (Drei-Wege-Handschlag).
- CLOSE_WAIT: Die Gegenstelle hat geschlossen, das lokale Programm noch nicht.
Typische Anwendungen
- Port belegt? Startet ein Server nicht, weil der Port schon benutzt wird?
netstat -ano | findstr :3000zeigt die PID, im Task-Manager findet man das Programm (siehe EADDRINUSE). - Läuft mein Dienst? Steht er in der Liste mit LISTENING?
- Verdächtige Verbindungen: Mit
-boder-anoherausfinden, welches Programm mit welcher Adresse spricht. - Firewall-Test: Siehe, ob ein Port nur lokal (
127.0.0.1) oder für alle (0.0.0.0) offen ist.
Siehe auch: Netzwerkbefehle in der CMD, Port, TCP, Three-Way-Handshake, EADDRINUSE: Port bereits belegt, Firewall, Standard-Port, CMD