iX 8/2019
S. 140
Praxis
Tools & Tipps

Netzwerkanalyse über die Kommandozeile

Auf­gepasst

Benjamin Pfister

Termshark wirkt wie aus einer anderen Zeit. Bei der Fern­wartung von Systemen ohne GUI kann es jedoch wertvolle Dienste leisten.

Viele Administratoren verwenden Wire­shark zur Netzwerkanalyse. Jedoch ist auf Servern oft kein grafisches User Interface aktiv. Wer dort nun über einen Paketmitschnitt eine Netzwerk­analyse erstellen muss, nutzt meist tcpdump oder den Wireshark-Ableger tshark.

Für mehr Effizienz und bessere Übersicht ist eine grafische Auswertung sinnvoll. Diese funktioniert mit den genannten Tools jedoch nicht. Hierfür sind die Daten auf dem entfernten Server zunächst im PCAP-Format aufzuzeichnen und danach auf den Administratorenrechner zu übertragen. Dort lassen sie sich mit GUI in Wireshark auswerten. Dieses Vorgehen birgt – insbesondere bei langsamer WAN-An­bindung des Servers oder bei großen Aufzeichnungen einer Langzeitanalyse – die Gefahr, dass der Transport der Aufzeichnungen die Engpässe noch verschärft.

Für eine Analyse direkt auf dem Quellsystem gibt es seit Kurzem das in Go geschriebene Tool Termshark. Dessen Entwickler haben das Look-and-Feel an Wire­shark angelehnt. Die Software liegt auf GitHub und baut primär auf tshark auf. Zusätzlich benötigt sie die ebenfalls in Go geschriebenen Open-Source-Pakete tcell für die Terminal-Darstellung und gowid unter anderem für die verwendeten Wigdets.

Anwendung und Filter

Termshark arbeitet von der Kommandozeile und kann sowohl PCAP-Dateien als auch den Netzwerk-Traffic analysieren. Bei Live-Traffic arbeiten die Filter als Capture-­Filter, das heißt, das Tool schneidet nur die Pakete mit, die die Bedingungen des Filters erfüllen. Solche Filter nutzt man, wenn sich das Interesse auf bestimmte Pakete konzentriert oder weil die Datenschutzregelungen das vorgeben. Letztere sind auf jeden Fall zu beachten. Wie in Abbildung 1 gezeigt, liefert der Aufruf

termshark -i en0 icmp
Einfache Live-Mitschnitte – hier auf ICMP-Traffic – beherrscht Termshark einwandfrei (Abb. 1).

einen Mitschnitt des ICMP-Live-Traffics auf der Schnittstelle en0. Im Fenster analysiert Termshark live den in einem anderen Terminal per ping generierten Netzwerk-Traffic. Der Aufruf

termshark -i ipsec0 -f "port 53 or (host www.heise.de and port 443)"

liefert als Capture-Filter für Verbindungen von und zu www.heise.de den DNS- und HTTPS-Traffic. Zum Auswerten eines bestehenden Mitschnitts dient

termshark -r test.pcap

Hierbei öffnet Termshark die als Parameter übergebene pcap-Datei zur Analyse. Der angegebene Filter arbeitet nur als Display-Filter. Das Anlegen im Programm funktioniert über einen Forward Slash gefolgt vom gewünschten Filter. Termshark kann die Display-Filter aus Wire­shark nutzen. Der obere Teil von Abbildung 2 zeigt einen Display-Filter auf TCP-Retransmissions. Der wirkt zusätzlich zum in der Applikation angegebenen Filter als Capture-­Filter auf www.heise.de. Term­shark filtert hier den HTTPS-Traffic inklusive des zugehörigen DNS per Cap­ture-Filter und prüft im Nachgang per Display-­Filter auf TCP-Retransmissions. Die sichtbare erneute Übertragung eines initialen TCP-SYN hatte ihren Ursprung in schlechtem Mobilfunkempfang.

Ein Wireshark-Display-Filter auf Retransmissions blendet in Termshark unspezifische Ergebnisse aus; die langen DNS-Query-Antwortzeiten im unteren Teil deuten auf eine schlechte WAN-Verbindung als Ursache hin (Abb. 2).

Letzterer lässt sich auch an der langsamen DNS-Antwortzeit im unteren Teil der Abbildung erkennen: Das Eintreffen dauerte über eine Sekunde. Um sich hierfür nicht alle DNS-Anfragen ansehen zu müssen, kam eine Verknüpfung des Display-­Filters für den FQDN im DNS-Query (dns.qry.name) und auf den DNS-Server 192.168.178.1 zum Einsatz.

Per Tabulatortaste kann man zwischen den einzelnen Menüs wechseln, ein Druck auf die Leertaste klappt die Elemente auf. Beenden lässt sich das Tool über q mit anschließender Bestätigung.

Termshark bietet nicht den vollen Wire­shark-Funktionsumfang. Grafiken und einige Zusatzfunktionen beherrscht es nicht, etwa solche für Performancedaten, Voice over IP, den RTP-Player oder SSL-Decryption. Ebenso fehlen im Vergleich zur GUI-Vorlage absolute Zeitanzeigen. Im Gegenzug überzeugt das Tool mit kürzeren Ladezeiten als sein GUI-Pendant, was besonders bei größeren Mitschnitten hilfreich ist. Gerade für eine schnelle Analyse auf einem Server über langsame WAN-Verbindungen ist Termshark eine interessante Alternative. (avr@ix.de)

Benjamin Pfister

ist IT-Systemadministrator der Stadt Kassel und Inhaber der Pfister IT-Beratung. Seine Fachgebiete sind Routing/Switching, Security und IP-Telefonie.

Kommentare lesen (1 Beitrag)