netstat
100%

Fehlerbehebung · Lektion 4

netstat

Lerne, Linux-Sockets, Listener, Warteschlangen und TCP-Zustände mit ss zu untersuchen.

Das ältere Werkzeug netstat zeigt Sockets, Routen und Schnittstellenstatistiken an. Auf modernem Linux ist ss das bevorzugte Werkzeug zur Socketuntersuchung, weil es Kernel-Socketzustand effizient offenlegt und mit iproute2 gepflegt wird.

Lauschende Sockets auflisten

Zeige lauschende TCP- und UDP-Sockets numerisch einschließlich ihrer Prozesse, sofern erlaubt:

$ sudo ss -lntup

-l wählt Listener aus, -n vermeidet Namensauflösung, -t und -u wählen TCP beziehungsweise UDP aus, und -p fordert Prozessdaten an. UDP ist verbindungslos; seine unverbundenen gebundenen Sockets besitzen daher keine TCP-artigen LISTEN-Handshakes.

Warum solltest du bei der Socketfehlersuche -n verwenden?

Ports, Endpunkte und Dienste

Ein lokaler Socketendpunkt verbindet eine Adresse, ein Transportprotokoll und einen Port. Eine TCP-Verbindung wird durch Protokoll sowie Quell- und Zieladressen und -ports unterschieden. /etc/services ordnet herkömmliche Namen Zahlen zu, beweist aber weder, welcher Prozess aktuell einen Port besitzt, noch welches Anwendungsprotokoll er spricht.

Was belegt ein /etc/services-Eintrag wie https 443/tcp?

TCP-Zustände lesen

Häufige Zustände sind:

  • SYN-SENT: Der lokale Endpunkt hat eine Verbindungsanfrage gesendet und wartet auf Fortschritt.
  • ESTAB: Die TCP-Verbindung ist hergestellt.
  • CLOSE-WAIT: Der Peer hat seine Senderichtung geschlossen, doch die lokale Anwendung hat ihren Socket noch nicht geschlossen.
  • TIME-WAIT: Der aktiv schließende Endpunkt wartet, damit verzögerte Segmente ablaufen und der letzte Austausch sicher verarbeitet werden kann.

Große oder wachsende CLOSE-WAIT-Mengen weisen häufig auf das Aufräumverhalten der lokalen Anwendung hin. TIME-WAIT ist ein normaler Protokollzustand; Anzahl und Ressourcenauswirkungen bestimmen, ob er betrieblich problematisch ist.

Welche Seite muss einen Socket in CLOSE-WAIT noch schließen?

Warteschlangen interpretieren

Die Bedeutung von Recv-Q und Send-Q hängt von Zustand und Protokoll ab. Bei hergestellten TCP-Sockets können sie Daten anzeigen, die auf den Empfang durch die Anwendung oder die Bestätigung der Übertragung warten. Bei lauschenden Sockets beschreiben Warteschlangenfelder den Verbindungsrückstau und nicht auf dieselbe Weise Byte der Anwendungsnutzlast.

Eine Momentaufnahme allein belegt weder Leak noch Engpass. Erfasse Stichproben über die Zeit und verknüpfe sie mit Prozessverhalten, Anwendungslatenz, erneuten Übertragungen und Ressourcengrenzen.

Warum reicht eine einzelne Momentaufnahme einer großen Socketwarteschlange nicht zur Diagnose?

Eine Untersuchung filtern

Beschränke die Ausgabe auf das betreffende Protokoll, den Zustand, Endpunkt oder Prozess:

$ ss -tn state established
$ ss -ltn 'sport = :443'

Ein Listener beweist lokale Transportbereitschaft und keine entfernte Erreichbarkeit oder einen fehlerfreien Anwendungszustand. Führe anschließend zum Symptom passende Routen-, Firewall-, Paket-, TLS- und Anwendungstests durch.

Was beweist ein TCP-Listener auf Port 443 nicht?

Lektion abgeschlossen

Sie haben netstat abgeschlossen

Du kannst ss nun zur Untersuchung des Socketzustands verwenden, ohne Ports mit Anwendungen zu verwechseln.

  • Liste Listener numerisch mit Prozesskontext auf.

  • Unterscheide herkömmliche Dienstnamen von Laufzeiteigentum.

  • Interpretiere TCP-Schließzustände aus Sicht des lokalen Endpunkts.

  • Erfasse Warteschlangen im Zeitverlauf mit Arbeitslastkontext.

  • Überprüfe entferntes Anwendungsverhalten über einen lokalen Listener hinaus.

Lernfortschritt speichern

Erstellen Sie ein kostenloses Konto, um diese Lektion zu speichern und auf jedem Gerät weiterzulernen.

Kostenloses Konto erstellen
Nächste Lektion
Zurück zu Fehlerbehebung