Wireshark Tutorial Teil 2
Inhalt
Teil 1
Einleitung
Grundlagen der Datenübertragung
Installation
Teil 2
Übung 1: Ping und ICMP
Aufzeichnung starten
Testdaten erzeugen
Erste Filter
Filter erweitern
Frames im Detail
Übungsaufgaben zu Übung 1
Teil 3
Wireshark anpassen
Das Menü View
Übung 2: RTT bestimmen
Übungsaufgaben
Teil 4
Capture Filter
Syntax
Operatoren
Beispiele
Zugriff auf Inhalte ab einem Offset
Übungsaufgaben
In dieser Übung lernen Sie, Netzwerkverkehr aufzuzeichnen, zu filtern und auszuwerten.
Über die Menüasuwahl Capture / Interfaces kommen Sie zum gleichnamigen Dialog.
Dieser Dialog zeigt alle von Wireshark erkannten Netzwerkschnittstellen mit ihren IP-Adressen an.
Zusätzlich werden die übertragenen Pakete und die Pakete pro Sekunde angezeigt.
Über die Schalfläche Details lassen sich weiter Informationen zu den einzelnen Interfaces
abrufen. Die Details-Funktion ist allerdings nur unter Windows verfügbar.
Capture Interfaces
Mit der Schaltfläche Capture starten Sie die Aufzeichnung der Datenübertragung.
Die Aufzeichnung läuft und Wireshark zeigt in einem Statusfenster die Anzahl der aufgezeichneten Frames
(Captured Packets) an.
Protokollverteilung beim Aufzeichnen
Für die erste Übung setzen wir ein Ping auf den Host www.google.de ab. Dazu geben Sie
in einer Shell oder Eingabeaufforderung das Kommando ping www.google.de ein.
C:\>ping www.google.de
Ping www.google.de [66.249.93.104] mit 32 Bytes Daten:
Antwort von 66.249.93.104: Bytes=32 Zeit=76ms TTL=243
Antwort von 66.249.93.104: Bytes=32 Zeit=77ms TTL=243
Antwort von 66.249.93.104: Bytes=32 Zeit=75ms TTL=244
Antwort von 66.249.93.104: Bytes=32 Zeit=75ms TTL=243
Ping-Statistik für 66.249.93.104:
Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0 (0% Verlust),
Ca. Zeitangaben in Millisek.:
Minimum = 75ms, Maximum = 77ms, Mittelwert = 75ms
Jetzt halten wir die Datenaufzeichnung im Wireshark mit der Schaltfläche Stop im Capture-Fenster an.
Wireshark bereitet die aufgezeichneten Frames nun auf und zeigt sie an.
Da wir beim Aufzeichnen keinen Filter gesetzt hatten, wurde sämtlicher Netzwerkverkehr mitgeschnitten.
Das wichtigste Instrument zum Auswerten von Traces sind Filter. Mit Filtern wird die Anzeige
auf die interessanten Frames eingeschränkt. Um nur noch Traffic von und zu unserer eigenen IP-Adresse
zu sehen, geben wir im Eingabefeld Filter von Wireshark folgenden Ausdruck ein:
ip.addr == 192.168.1.2
beim Filtern
Als IP-Adresse setzen wir die IP-Adresse des Sniffers ein (wurde unter Capture / Interfaces angezeigt).
Wireshark zeigt nun nur noch Frames an, die diese Filterbedingung erfüllen. Mit der Schaltfläche Clear kann
die Filterbedingung gelöscht werden.
Im nächsten Schritt werden wir die Anzeige weiter einschränken. Uns interessiert nur der
Traffic des Ping-Kommandos. Ping nutzt eine Protokoll namens ICMP. Wir erweitern die Filterbedingung
entsprechend:
ip.addr == 192.168.1.2 && icmp
Mit dem Operator && werden die einzelnen Filterbedingungen UND-verknüpft. ICMP schränkt die Anzeige
auf das Protokoll ICMP ein.
Alle ICMP Pakete
In der Anzeige sollten jetzt nur noch ICMP-Pakete unserer eigenen IP-Adresse zu sehen sein.
Das Hauptfenster von Wireshark teilt sich in drei Bereiche: die Paketliste (engl. packet list pane),
die Paketdetails (engl. packet details pane) und die Hexadezimale Paketanzeige (engl. packet bytes pane).
Die in der Paketliste angezeigten Spalten können über die Menüauswahl Edit / Preferences ausgewählt werden.
Paketliste
Die Spalte No. zeigt die Nummer des Frames an. Durch den aktiven Filter müssen die Nummern jetzt nicht
fortlaufend sein. Die Spalte Source zeigt den Absender eine Frames an. In der Spalte Destination steht der
Empfänger des Frames. Die Spalte Protocol gibt das Protokoll in diesem Frame an.
Die Spalte Info enthält zusätzliche Angaben zum Frame.
Alle ICMP Echo Request soltten von unserer eigenen IP-Adresse zu einer IP-Adresse von Google laufen.
Die ICMP Echo Replies sollten als Source die Google-IP enthalten.
Paketdetails
Im mittleren Teil des Bildschirm werden die Details zum ausgewählten Frame angezeigt.
Wir wählen zuerst ein ICMP Echo Request in der Paketliste mit der Maus aus.
In den Paketdetails werden die Layer (Schichten) des Datenframes angezeigt.
Durch Anklicken des Plus-Symbols kann der gewählte Layer erweitert werden.
Sehen wir uns die Layer im einzelnen an.
Ganz oben in den Paketdetails finden wir Informationen von Wireshark zum betreffenden Frame:
Größe des Frames, aufgezeichnete Größe (Stichwort Slicing), Zeit und Zeitdifferenz zum vorgehenden Frame.
Frame 6086 (74 bytes on wire, 74 bytes captured)
Arrival Time: Feb 23, 2006 15:18:20.081749000
Time delta from previous packet: 3211.323936000 seconds
Time since reference or first frame: 3211.323936000 seconds
Frame Number: 6086
Packet Length: 74 bytes
Capture Length: 74 bytes
Protocols in frame: eth:ip:icmp:data
Die nächste Zeile liefert Informationen zum OSI-Layer 2 (Ethernet).
Dort sehen wie die MAC-Adressen von Absender und Empfänger. Die MAC-Adresse
des Empfängers wird im Normalfall die MAC-Adresse des Default Routers sein.
Ethernet II, Src: 192.168.2.157 (00:30:f1:ee:90:7b), Dst: 192.168.2.1 (00:30:f1:f5:0e:5b)
Destination: 192.168.2.1 (00:30:f1:f5:0e:5b)
Source: 192.168.2.157 (00:30:f1:ee:90:7b)
Type: IP (0x0800)
Weiter geht es mit dem Layer 3: Internet Protocol (IP).
Dort finden wir Angaben wie IP-Flags, die Time to live (TTL), das Protokoll und
Absender- und Empfänger-IP-Adressen.
Internet Protocol, Src: 192.168.2.157 (192.168.2.157), Dst: 66.249.93.104 (66.249.93.104)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
0000 00.. = Differentiated Services Codepoint: Default (0x00)
.... ..0. = ECN-Capable Transport (ECT): 0
.... ...0 = ECN-CE: 0
Total Length: 60
Identification: 0x0fd3 (4051)
Flags: 0x00
0... = Reserved bit: Not set
.0.. = Don't fragment: Not set
..0. = More fragments: Not set
Fragment offset: 0
Time to live: 128
Protocol: ICMP (0x01)
Header checksum: 0xc747 [correct]
Good: True
Bad : False
Source: 192.168.2.157 (192.168.2.157)
Destination: 66.249.93.104 (66.249.93.104)
In der letzten Zeile in den Paketdetails wird das Internet Control Message Protocol (ICMP) dekodiert.
ICMP nutzt eine Kodierung bestehend aus Type und Code. Type 8, Code 0 ist ein ICMP Echo Request.
Welche Type- und Code-Werte finden wir in einem Echo Reply?
Internet Control Message Protocol
Type: 8 (Echo (ping) request)
Code: 0
Checksum: 0x475c [correct]
Identifier: 0x0300
Sequence number: 0x0300
Data (32 bytes)
Im Hexdump des Frames ist gut zu erkennen, dass Windows beim Ping das Alphabet als Nutzlast (Payload)
benutzt.
0000 00 30 f1 f5 0e 5b 00 30 f1 ee 90 7b 08 00 45 00 .0...[.0...{..E.
0010 00 3c 0f d3 00 00 80 01 c7 47 c0 a8 02 9d 42 f9 .........G....B.
0020 5d 68 08 00 47 5c 03 00 03 00 61 62 63 64 65 66 ]h..G\....abcdef
0030 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 ghijklmnopqrstuv
0040 77 61 62 63 64 65 66 67 68 69 wabcdefghi
Machen Sie sich mit der Benutzeroberfläche von Wireshark vertraut.
- Löschen Sie den aktuellen Filter.
- Welche IP-Adressen finden Sie im aktuellen Tracefile?
- Welche Protokolle zeigt Wireshark an?
- Setzen Sie erneut einen Filter auf die eigene IP-Adresse.
- Welche Type-Angabe finden Sie in den Ethernet-Frames auf dem OSI-Layer 2?
- Speichern Sie den aktuellen Trace als Datei uebung1.pcap ab.
Hilfe im Forum
Im Netzwerkforum erhalten Sie Hilfe zur Nutzung von Wireshark.
- Fragen zur Installation und Benutzung von Wireshark posten Sie bitte
an das Forum Tools.
- Fragen zur Netzwerkprotokollen und Protokollanalyse posten Sie bitte
an das Forum Netzwerkprotokolle und Dienste.
Weiterführende Informationen
Unter den folgenden Links finden Sie interessante Seiten zum Thema Protokollanalyse:
|