Mobile-Menu

Troubleshooting und Netzwerkanalysen im Terminal durchführen TCPDump: Netzwerkdiagnose für das Command Line Interface

Von Thomas Joos 5 min Lesedauer

TCPDump ist ein mächtiges Kommandozeilen-Tool für Netzwerkanalyse und -überwachung. Es ermöglicht das Erfassen und Analysieren von Netzwerkpaketen auf einem Netzwerkinterface. Entwickelt für UNIX-Systeme, ist es aufgrund seiner Vielseitigkeit und Effizienz weit verbreitet.

Das Kommandozeilen-Werkzeug TCPDump gehört zu den beliebtesten und mächtigsten Netzwerksanalyse-Tools.(Bild:  The Tcpdump Group)
Das Kommandozeilen-Werkzeug TCPDump gehört zu den beliebtesten und mächtigsten Netzwerksanalyse-Tools.
(Bild: The Tcpdump Group)

TCPDump arbeitet auf der Ebene des Netzwerk-Interfaces und fängt alle Pakete ab, die über dieses Interface laufen. Durch seine Fähigkeit, Rohdaten von Netzwerkpaketen zu erfassen, dient es zur Fehlersuche, Netzwerkanalyse und zur Überwachung der Netzwerksicherheit. In den meisten Fällen ist TCPDump bereits auf einem Linux-System verfügbar. Für den Start sind Root-Rechte notwendig.

Quick Start: TCPDump in der Praxis

Generell ist es durchaus legitim, zu behaupten, dass TCPDump zu den beliebtesten und mächtigsten Tools für die Analyse des Netzwerks gehört. Das Tool bietet umfangreiche Parameter, lässt sich gleichzeitig aber auch mit wenigen Parametern starten, um einen schnellen Überblick zum Netzwerkverkehr zu erhalten. Um den Datenverkehr anzuzeigen, der auf einer Netzwerkschnittstelle eingeht, kann der folgende Befehl verwendet werden:

Bildergalerie
tcpdump -i eth0

Dabei kann TCPDump den Netzwerkverkehr nicht nur im Terminal in Echtzeit anzeigen, sondern auch in einer PCAP-Datei speichern. Diese lässt sich anschließend mit anderen Tools analysieren, zum Beispiel auch Wireshark. Das geht mit:

tcpdump -w file.pcap

Um die erstellte Datei mit TCPDump anzuzeigen, kann der folgende Befehl verwendet werden:

tcpdump -r file.pcap

Diese einfachen Befehle zeigen, wie TCPDump schon ohne große Einarbeitung viele Informationen beschaffen kann, die für das Troubleshooting im Netzwerk wichtig sind. Mit Filterausdrücken lassen sich diese Möglichkeiten noch erweitern.

Filter in TCPDump nutzen

TCPDump erlaubt die Verwendung von Filterausdrücken, um gezielt bestimmte Datenverkehre zu analysieren. Beispiele:

  • tcpdump ip – Filtert alle IP-Pakete
  • tcpdump port 80 – Erfasst nur Pakete, die auf oder von Port 80 gesendet werden
  • tcpdump src 192.168.1.1: – Erfasst alle Pakete von der Quelladresse 192.168.1.1.

TCPDump unterstützt auch erweiterte Funktionen wie die Analyse von VLAN-Tagging oder IPv6-Verkehr und kann wie erwähnt mit anderen Tools wie Wireshark kombiniert werden, um eine grafische Analyse der erfassten Daten zu ermöglichen.

Für tiefergehende Analysen bietet TCPDump erweiterte Filterausdrücke, die eine spezifische und detaillierte Paketerfassung ermöglichen. Diese erweiterten Filter nutzen Kombinationen aus Protokolltypen, Portnummern, IP-Adressen und weiteren Kriterien, um präzise die gesuchten Datenströme zu isolieren. Beispielsweise ermöglicht der Befehl

tcpdump 'tcp[tcpflags] & (tcp-syn) != 0'

das Erfassen von nur den TCP-Paketen, die das SYN-Flag gesetzt haben, was für die Analyse von TCP-Verbindungsaufbauten nützlich ist. Ebenso kann durch die Kombination von IP-Adressen und Portnummern, wie in

tcpdump src 10.1.1.1 and dst port 8080

der Verkehr von einer spezifischen Quelle zu einem bestimmten Zielport gefiltert werden. Solche erweiterten Filter sind besonders wertvoll in komplexen Netzwerkumgebungen, wo Standardfilter nicht ausreichen, um die gewünschten Daten effizient zu isolieren. Hier ist ein einfacher Befehl, der HTTPS-Verkehr liefert:

tcpdump -nnSX Anschluss 443

Es gibt eine Vielzahl weiterer Kombinationsmöglichkeiten. Passwörter und Benutzernamen im unverschlüsselten Datenverkehr (HTTP, FTP, TELNET) können durch TCPDump ebenfalls identifiziert werden:

tcpdump -A -i eth0 'port http or port ftp or port telnet' | grep -i 'user\|pass\|login'

Anwendung von TCPDump in Active-Directory-Umgebungen

TCPDump erweist sich auch in Active-Directory-Umgebungen als nützlich für die Überwachung und Analyse des Netzwerkverkehrs, der mit AD-Operationen verbunden ist. Zum Beispiel kann TCPDump verwendet werden, um den Verkehr zwischen Domain Controllern und Client-Systemen zu überwachen. Mit einem Filterausdruck wie „tcpdump -i eth0 port 389“ kann der Administrator LDAP-Verkehr (Standardport 389) erfassen, der für die Abfrage und Verwaltung von AD-Daten wesentlich ist.

Ebenso kann der Kerberos-Verkehr, der für die Authentifizierung im AD wichtig ist, durch Erfassen des Verkehrs auf Port 88 analysiert werden. Dies ist besonders hilfreich, um Probleme bei der Anmeldung oder bei der Ticketvergabe zu diagnostizieren. Auch die Überwachung von DNS-Anfragen, die für die Lokalisierung von AD-Diensten kritisch sind, kann durch einen Filter wie „tcpdump -i eth0 port 53“ erfolgen.

Troubleshooting typischer Netzwerkprobleme mit TCPDump

TCPDump ist auch ein effektives Werkzeug für das Troubleshooting von gängigen Netzwerkproblemen. Beispielsweise kann TCPDump bei Konnektivitätsproblemen genutzt werden, um die erfolgreiche Übertragung von TCP/IP-Paketen zu überprüfen. Durch die Verwendung eines Filters wie „tcpdump -i eth0 'tcp[13] == 2'“, können SYN-Pakete, die den Beginn einer TCP-Verbindung markieren, isoliert und analysiert werden. Dies hilft bei der Identifizierung von Problemen in der Verbindungsinitialisierung.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Netzwerktechnik, IP-Kommunikation und UCC

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

Für die Diagnose von DHCP-bezogenen Problemen, wie etwa bei der Adresszuteilung oder der Verlängerung von Leases, kann TCPDump verwendet werden, um den DHCP-Verkehr zu überwachen. Ein Befehl wie „tcpdump -i eth0 port 67 or port 68“ ermöglicht das Erfassen von DHCP-Anfragen und -Antworten, da DHCP typischerweise die Ports 67 (Server) und 68 (Client) nutzt. Dies ist besonders nützlich, um Probleme zu identifizieren, bei denen Clients keine IP-Adresse vom DHCP-Server erhalten oder bei der Erneuerung von IP-Leases Schwierigkeiten haben.

Darüber hinaus kann TCPDump helfen, Probleme mit der Namensauflösung zu diagnostizieren, indem DNS-Anfragen und Antworten überwacht werden. Mit „tcpdump -i eth0 port 53“ können Administratoren DNS-Verkehr erfassen und analysieren, was bei der Fehlersuche von Problemen mit der Namensauflösung in Netzwerken entscheidend sein kann.

Mit TCPDump kann auch der Datenverkehr zu bestimmten Hosts überwacht werden, zum Beispiel auch zu verdächtigen Internetseiten. Ein Beispiel dafür ist:

tcpdump -i eth0 dst host malware.com

Weitere Filteroptionen in TCPDump für spezialisierte Einsatzgebiete

Neben den allgemeinen Anwendungen bietet TCPDump spezialisierte Filteroptionen für gezielte Einsatzgebiete. So ermöglicht beispielsweise der Filter „tcpdump 'icmp[icmptype] == icmp-echo'“ das Erfassen von ICMP Echo Requests (Ping-Anfragen), was bei der Diagnose von Netzwerklatenzen und der Erreichbarkeit von Hosts im Netzwerk hilfreich ist. Für die Überwachung von FTP-Verkehr, kann „tcpdump port 20 or port 21“ verwendet werden, um sowohl den Kontroll- als auch den Datenverkehr zu überwachen.

In Umgebungen, wo VoIP (Voice over IP) eine Rolle spielt, kann TCPDump zur Überwachung des SIP-Verkehrs (Session Initiation Protocol) genutzt werden. Mit einem Filter wie „tcpdump -i eth0 port 5060“ kann der Administrator SIP-Verkehr erfassen und Probleme in der VoIP-Kommunikation identifizieren. Für die Analyse von E-Mail-Verkehr bietet sich ein Filter wie „tcpdump port 25 or port 110 or port 143“ an, um SMTP-, POP3- und IMAP-Verkehr zu erfassen. Diese Informationen können bei der Diagnose von Problemen mit E-Mail-Diensten und deren Übertragungswegen von Nutzen sein.

Zudem kann TCPDump in Wireless-Netzwerken eingesetzt werden, um WLAN-spezifischen Verkehr zu analysieren. Ein Filter wie „tcpdump -i wlan0 type mgt subtype beacon“ ermöglicht beispielsweise das Erfassen von WLAN-Beacon-Frames, die für die Analyse von WLAN-Netzwerken und deren Leistung wichtig sind.

(ID:49984564)