Felderlehre

Einer der vielen Schlüssel zur Analyse von Netzwerkverkehr stellt das Wissen um die Bedeutung der einzelnen Spalten beziehungsweise Felder in der Ausgabe Tshark dar. Welche Felder das Werkzeug anzeigt, legen Sie mit den Parametern -T und -e fest; die Tabelle "Tshark: Felder" gibt Aufschluss über gängige Namen und deren Bedeutung.

Tshark: Felder

Feldname Beschreibung
frame.number Nummer des Pakets im Datenstrom
frame.time_relative relativer Zeitstempel des Pakets
ip.src IP-Adresse des Senders
ip.dst IP-Adresse des Empfängers
col.Info Inhalt der empfangenen Pakete

Wenn Sie alle Felder so wie in Listing 3 manuell, sollten Sie bei einem Ping auf LinuxUser.de eine zu Abbildung 2 nahezu identische Ausgabe erhalten. Darin fehlen lediglich die Pfeile -> zwischen der Quell- und Ziel-IP. Daneben besteht die Möglichkeit, die Ausgabe gleich als CSV-Datei aufzubereiten. Mit den zusätzlichen Schaltern -E separator=, -E quote=d -E header=y setzt das Tool die einzelnen Felder in Anführungsstriche, trennt sie durch Kommas voneinander und gibt eine Zeile mit den Namen der Spalten aus (Listing 4).

Listing 3

$ sudo tshark -i any -T fields -e frame.number -e frame.time_relative -e -e ip.src -e ip.dst -e col.Info

Listing 4

$ sudo tshark -i any -T fields -e frame.number -e frame.time_relative -e ip.src -e ip.dst -e col.Info -E separator=, -E quote=d -E header=y
frame.number,frame.time_relative,ip.src,ip.dst,col.Info
"1","0.000000000","127.0.0.1","127.0.1.1","Standard query 0x79e1  A linux-user.de"

Aus Platzgründen sind aus dem Beispiel Meldungen der Software gekürzt, die vor dem Ausführen mit Root-Rechten warnen. Das Ergebnis des Aufrufs leiten Sie bei Bedarf über Bordmittel in eine Datei um.

Ab in die Tiefen!

Ohne Angabe zusätzlicher Parameter zeigt das Programm einfach jeglichen Datenverkehr an, der über das ausgewählte Interface fließt. Das hilft zwar manchmal, in vielen Fällen geht es aber um konkrete Datenströme, wie etwa HTTP oder Samba- und NFS-Verbindungen. Die anderen Pakete stören dann nur. Hier bietet das Tool diverse Möglichkeiten zum Filtern an, wobei Sie viele davon miteinander kombinieren dürfen.

Im folgenden Szenario lauscht auf dem lokalen System mit der IP-Adresse 192.168.0.14 am Interface eth0 ein Apache-Webserver, der verschiedene Webseiten für ein Intranet anbietet. Ein Teilnehmer vom Rechner mit der IP-Adresse 192.168.0.12 berichtet von Problemen mit der Verbindung. Mittels des Aufrufs aus der ersten Zeile von Listing 5 prüfen Sie das auf dem Server.

Listing 5

$ sudo tshark -i eth0 host 192.168.0.12 and port 80
$ sudo tshark -i eth0 host 192.168.0.12 and port 80 -R http
$ sudo tshark -xi eth0 host 192.168.0.12 and port 80 -R http
$ sudo tshark -i eth0 host 192.168.0.12 and port 80 -R http -T fields -e text

Mit dem Parameter -i eth0 beschränken Sie die Analyse auf das Interface eth0, während host 192.168.0.12 nur Pakete anzeigt, die von oder zu dieser IP-Adresse laufen. Der Schalter port 80 fokussiert auf HTTP-Verkehr, während das Schlüsselwort and die beiden Parameter host und port miteinander verkettet.

Abbildung 3 zeigt, wie die HTTP-Verbindung im Rahmen eines TCP-Handshakes [7] erfolgreich zustande kommt. Den eigentlichen HTTP-Datenverkehr (Frame 10, 13 und 15) gilt es, hier noch aus der umfangreichen Ausgabe herauszufischen.

Abbildung 3: Der Client greift erfolgreich auf eine Webseite im Intranet zu.

Mehr Übersicht verschafft der Einsatz von sogenannten Read-Filtern: Sie ermöglichen es, die Flut der Pakete mittels angegebener Kriterien einzuschränken. Im konkreten Fall wollen Sie eigentlich nur die relevanten Vorgänge im HTTP-Protokoll beobachten (Listing 4, Zeile 2). Abbildung 4 zeigt, dass der Netzwerkteilnehmer 102.168.0.12 mittels der HTTP-Methode GET die Seite aufruft (Frame 16), wobei der Webserver hinter der IP-Adresse 192.168.0.14 mit dem HTTP-Status 200 antwortet und die Seite ausliefert (Frame 19, 21 und 22).

Abbildung 4: Mittels des Read-Filters http zeigt Tshark nur die relevanten Daten an.

Read-Filter bietet noch weitaus mächtigere Möglichkeiten zur Auswahl von ganz bestimmten Datenströmen. Weitere Beispiele [8] und detailliertere Beschreibungen [9] finden Sie online.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 6 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 02/2018: PAKETE VERWALTEN

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

sharklinux
Gerd-Peter Behrendt, 18.01.2018 23:58, 0 Antworten
Hallo zusammen, ich habe sharklinux von der DVD Installiert. 2x, jedesmal nach dem Reboot ist di...
Anfänger sucht Ratschläge
Alucard Nosferatu, 18.01.2018 21:56, 1 Antworten
Guten Tag, meine Wenigkeit würde gerne auf einer meiner Festplatten von meinen Feldrechnern e...
Suchprogramm
Heiko Taeuber, 17.01.2018 21:12, 1 Antworten
Hallo liebe Community, keine Ahnung ob dieses Thema hier schon einmal gepostet wurde. Ich hab...
Linux Mint als Zweitsystem
Wolfgang Robert Luhn, 13.01.2018 19:28, 4 Antworten
Wer kann mir helfen??? Habe einen neuen Laptop mit vorinstaliertem Windows 10 gekauft. Möchte g...
externe soundkarte Kaufempfehlung
lara grafstr , 13.01.2018 10:20, 3 Antworten
Hallo Ich bin auf Suche nach einer externen soundkarte.. Max 150 Euro Die Wiedergabe is...