Anbieter zum Thema
Schnelles Ermitteln von Statistikdaten
Eine andere praktische Verwendung von tshark ist das schnelle Ermitteln von Paketen, die zu statistischen Analysen nach bestimmten Filterkriterien ausgewertet werden sollen. Auch hier ist es möglich, über die Statistikfunktionen in der Wireshark GUI fündig zu werden. Der direkte Weg über die CLI ist jedoch auch hier gegebenenfalls schneller und liefert prägnant die gewünschten Ergebnisse.
Besonders elegant ist hier der Einsatz der I/O-Statistik, wenn mit einem Durchlauf mehrere Statistikwerte ermittelt werden sollen. Um beispielsweise die Anzahl der Frames sowie deren Byte-Summe von mehreren Displayfiltern zu erhalten, werden die unterschiedlichen Filter einfach hintereinander in dem tshark-Aufruf eingetragen. Dieser eine schlanke Befehl sorgt für die Ausgabe aller erforderlichen Werte.
Der Aufruf des folgenden Befehls liefert jeweils eine Spalte für die vier geforderten Filter zurück:
D:\>tshark -r trace.pcap -qz io,stat,0,"tcp.port==80",http,smb,udp Auch hier sind zahlreiche weitere Anwendungen möglich, experimentieren ist durchaus empfehlenswert. Im Aufmacherbild sehen Sie die einzelnen Spalten für die gewünschten Filter. Setzt man anstelle der einzelnen Null im Aufruf einen Wert größer als Null ein, wird die gezeigte Statistik für Intervalle dieser Größe anstelle des gesamten Trace File erzeugt. Dies kann besonders nützlich sein, wenn man auf der Suche nach sporadisch auftretenden Fehlern ist und genau wissen möchte, zu welcher Zeit ein Treffer vorliegt.
Wer sich fragt, warum hier sowohl auf tcp.port==80 als auch auf das http-Protokoll gefiltert wird und dann auch noch unterschiedliche Daten geliefert werden, kann die Erklärung dieses Phänomens im früheren Teil dieser Serie nachlesen. Dort finden Sie auch Hinweise auf den Einfluss der TCP Stream Reassembly, durch die massive Unterschiede bei der Auswertung der Statistikdaten entstehen können.
Wenn Sie sichergehen möchten, stellen Sie im Aufruf von tshark mittels des „-o“-Parameters die gewünschten Einstellungen direkt ein. Dies kann z.B. auf relative/absolute Sequenznummern zutreffen, wenn Sie bestimmte TCP-Pakete filtern möchten, oder auch auf die erwähnte TCP Stream Reassembly.
Um diese gezielt ein- oder auszuschalten, rufen Sie tshark beispielsweise einfach mit dem Parameter tcp.desegment_tcp_stream:true oder analog tcp.desegment_tcp_streams:false auf.
Wie die verschiedenen Parameter innerhalb tshark heißen, können Sie in der preferences-Datei im Wireshark-Benutzerordner nachschlagen.
Bunt oder schwarzweiß?
Die Frage, welche Aufgaben man lieber innerhalb der GUI und welche auf der Kommandozeile bearbeiten sollte, bleibt letzten Endes dem persönlichen Geschmack überlassen. Wenn Sie bisher nicht auf der CLI gearbeitet haben, stellen die oben gezeigten Beispiele ein gutes Fundament für die Einarbeitung dar. Selbstverständlich gibt es zahlreiche Möglichkeiten, mit erweiterten Funktionen wie z.B. den Programmen sed, (g)awk, grep, cut etc. außerhalb Wiresharks CLI-Tools noch komplexere Sachverhalte zu ermitteln.
Tipp: Fangen Sie klein an und probieren Sie in den kommenden Analysen einfach aus, wie Sie Ihre Effizienz durch gezielten Einsatz von Scripting und CLI-Tools steigern können.
Lust auf mehr?
Wer sich intensiv mit Wireshark und Netzwerkanalyse auseinandersetzen will, ist bei den Wireshark-Kursen von Fast Lane gut aufgehoben: www.flane.de/wireshark.
Über den Autor
Christian Landström ist Senior Consultant und Instructor bei Fast Lane.
Artikelfiles und Artikellinks
(ID:33743730)