Update 3. Februar 2016: Das ist neu in WireShark 2.0.1
Die aktuelle Version 2 bietet im Vergleich zu den Vorgängerversionen wichtige Verbesserungen, wie eine bessere Sprachunterstützung, einen optimierten Sniffvorgang und eine neue Benutzeroberfläche. Wir stellen Ihnen alle Neuerungen von WireShark 2.0.1 auf dieser Unterseite vor.
Ende des Updates, Beginn des ursprünglichen Artikels:
Mit Wireshark die Netzwerk-Kommunikation auswerten
Ob Desktop-PC, Notebook, Server, Tablet, Router oder Smartphone – sie alle tauschen Nachrichten untereinander aus. Damit unterschiedliche Netzwerk-Geräte miteinander kommunizieren können, müssen sie die gleiche Sprache sprechen und sich an einige Regeln halten. Für die Kommunikation von IT-Systemen wurden diese Regeln deshalb schon vor Jahrzehnten in dem ISO/OSI-Modell festgeschrieben. Es regelt die Art und Weise, wie IT-Geräte beziehungsweise Systeme miteinander kommunizieren und welche Netzwerk-Protokolle, zum Beispiel TCP/IP oder UDP, sie für welche Zwecke verwenden. Diese Netzwerkkommunikation können Sie bis ins kleinste Detail verfolgen. Mit einem genialen Gratis-Tool namens Wireshark, das auch professionelle Netzadministratoren einsetzen, um den Netzwerk-Traffic zu analysieren.
Netzwerk-Probleme systematisch lösen
Installation von Wireshark

Wireshark ist ein ausgefeiltes Analysetool zur Überwachung und Kontrolle des Datenaustausches in Netzwerken, das sich als Standard-Werkzeug für die Fehleranalyse und das Aufspüren von Netzwerk-Problemen etabliert hat. Sie können sich diesen Netzwerk-Sniffer kostenlos aus dem Internet herunterladen (Software, mit der man die die Netzwerk-Kommunikation mitschneiden und auswerten kann, bezeichnet man als Netzwerk-Sniffer oder kurz als Sniffer – das englische Wort für “Schnüffler”).
Tipp: Wireshark mit der AVM Fritzbox verwenden
Für Aufgaben rund um die Protokollanalyse, der Lastermittlung oder um zu prüfen, welche Datenpakete versandt oder empfangen werden, stellt es eine wertvolle Hilfe dar. Verfügbar ist Wireshark für Linux und Windows. Laden Sie sich die für Ihr Betriebssystem passende Version herunter und richten Sie Wireshark auf Ihrem Rechner ein.
Wireshark verwenden
Nach dem Setup des Programmes können Sie sogleich die Verwaltungskonsole starten.
Die Verwaltungskonsole von Wireshark

Nach dem Start öffnet sich ein Übersichtsbildschirm. Unter Capture finden Sie die beiden Zweige „Interface List“ und „Capture Options“. Als „Interface“ werden die Netzwerkschnittstellen bezeichnet (also die im PC eingebauten Netzwerkkarten oder Netzwerkchips). Über eine dieser Schnittstellen liest Wireshark die Kommunikation im Netzwerk mit. Die „Options“ erlauben eine weitere Konfiguration der Arbeitsweise des Tools. Unter „Capture Help“ sind Hilfen eingeblendet, die Sie nicht ignorieren sollten. Unter der Rubrik „File“ sind die Möglichkeiten zur Speicherung der Analysedaten hinterlegt. Ferner finden Sie hier einige recht gute Beispiele für die Arbeit mit Wireshark. Ganz rechts sind Hinweise und Links auf die Online-Hilfe und die Website eingeblendet.
Rechtliche Voraussetzungen für Sniffer-Einsatz klären
Bevor Sie nun beginnen mit Wireshark den Netzwerk-Traffic zu analysieren, müssen Sie sich über zwei Dinge im Klaren sein: Ist es in der Netzwerk-Umgebung, in der Sie sich befinden, überhaupt erlaubt, die Datenpakete zu analysieren? Im eigenen privaten Heimnetzwerk wird das kein Problem darstellen, im Unternehmensnetz aber sollten Sie vorher die datenschutzrechtlichen Vereinbarungen prüfen. Dürfen Sie überhaupt Änderungen am Netzwerk und der Datentransfer vornehmen?
Die 10 besten Open-Source-Werkzeuge für Administratoren

Netzwerk Sniffer Wireshark starten
Wenn Sie beides bejahen – und nur dann – dann können sie ein Interface (siehe nebenstehendes Bild) auswählen, über welches das Tool das Netzwerk scannt. Starten Sie anschließend den Scanlauf mit einem Klick auf „Start“. Wireshark beginnt nun sofort mit dem Scannen des Netzwerks und zeigt dieses in einer Übersichtsmaske mit mehreren Fenstern an. Im oberen Bereich sehen Sie eine Übersicht mit jeweils einer Zeile zu jedem Datentransfer. Darin finden Sie unter anderem die Quelle und das Ziel der Kommunikation, ferner das Protocol (zum Beispiel TCP, UDP, DNS oder ARP) und weitere Angaben. Im mittleren Bereich finden Sie eine detaillierte Darstellung dazu. Das ist die Analyse, die Wireshark vorgenommen hat. Es liefert Ihnen Angaben zu den Protokollen und den Inhalten. Ganz unten sehen Sie die Hexadezimaldarstellung des Datenpaketes eingeblendet.

Netzwerkanalyse am Beispiel ARP
Am Beispiel eines ARP-Requestes wollen wir die Arbeit mit Wireshark aufzeigen. Siehe dazu das nebenstehende Bild. Das Protokoll ARP (Address Resolution Protocol) wird in jedem TCP/IP-Netz benötigt. Sie werden folglich in jedem TCP-Netz ARP-Pakete finden. Durch ARP erfolgt die Auflösung einer IP-Adresse in die MAC-Adresse (die jede Netzwerkkarte besitzt und mit der sich jeder Netzwerkadapter eindeutig identifizieren lässt). Dazu sendet der suchende Knoten (der Sender) zuerst einen Broadcast ARP-Request an alle Systeme im Subnetz mit der Aufforderung, die MAC-Adresse des Empfängers bekannt zu geben. Das System, dessen IP-Adresse mit der IP-Adresse im ARP-Request übereinstimmt, antwortet darauf mit einem ARP-Reply. Auf dem nebenstehenden Screenshot finden Sie diese beiden Pakete, den Arp-Request und ARP-Reply in den Zeilen 2 und 3.

ARP-Pakete sind einfach und überschaubar. Wireshark ist allerdings in der Lage, nahezu jedes Protokoll zu analysieren. Einen kurzen Einblick liefert ihnen das nebenstehende Bild.
ISO/OSI-Modell für die Netzwerk-Kommunikation
Zur Interpretation dieser Protokolle und zur Fehlersuche werden Sie an einigen Grundkenntnissen über das ISO/OSI-Modell und dem Aufbau der Protokolle nicht vorbeikommen. Für unsere Betrachtungen sind dabei vor allen die Schichten 3 bis 5 von Interesse. Jegliche Kommunikation zwischen den Rechner findet dabei immer in mehrere Schichten statt. Dies ermöglicht universellere und austauschbare Codemodule. Diese Unterscheidung in verschieden Schichten ist für die Arbeit mit Wireshark und den Protokollen wichtig und wird daher kurz erläutert.
Netzwerkgrundlagen: ARP, TCP, IP
Die Schicht drei wird als Netzwerkschicht bezeichnet. In Ihr befindet sich die Logik zur Übertragung einer Nachricht zwischen zwei Endknoten. Dies erfolgt beispielsweise durch das IP-Protocol. Der Empfang der Nachricht ist allerdings nicht garantiert. Diese Art und Weise der Kommunikation wird auch als „connectionless“ (verbindungslos) bezeichnet. Durch einen Quittungsmechanismus (Handshake) wird die Übertragung einer Nachricht abgesichert. Diese passiert durch die Logiken in der Schicht 4 (dem TCP-Protokoll). Die Ebene 3 und 4 sorgen also lediglich dafür, dass eine Nachricht den Empfänger erreicht. Auf der Schicht fünf und höher befinden sich die Anwendungsdienste wie etwa eine Mailabfrage oder ein http-Zugriff. Damit beispielsweise der Mailclient seinen Mailserver findet, setzt er über die Basisdienste der Schicht 4 und darunter sein Anfragen ab. Der Transport der Mailanfrage aber auch der Mail selbst erfolgt dann durch die unteren Protokolle.
Dem Netzwerk-Problem auf der Spur
Nach diesen Erläuterungen, die die prinzipielle Arbeitsweise mit Wireshark aufzeigen, wenden wir uns nun einem komplexeren Beispiel zu. Die Aufgabenstellung ist dabei folgendermaßen: Mehrere Benutzer klagen, dass das Netzwerk „zu langsam“ sei. Sie als Netzwerk-Administrator sollen nun die Ursache dafür herausfinden. Beruht der Engpass auf einer gleichmäßigen aber starken und linearen Beanspruchung durch alle Benutzer oder Anwendungen oder geht die Last eher von wenigen Geräte oder Anwendungen aus?
Starten Sie dazu wieder einen Scanlauf mit Wireshark. Dieser sollte nun natürlich den Zeitraum umfassen, in dem die Netzwerk-Probleme in der Regel auftreten. Dabei zeigen sich in unserem Beispiel bereits im ersten Überblick viele Pakete mit dem Protocol RTMP.
Sie können nun im nächsten Schritt die Anzeige auf das Protokoll RTMP eingrenzen. Hierzu verwenden Sie den Anzeigefilter des Netzwerk-Sniffers Wireshark.

Filer in Wireshark verwenden
Im Übersichtsbild zeigt sich anhand der IP-Adresse aber auch bereits, dass diese Nachrichten ausschließlich zu einem Rechner übertragen werden. Sie könnten nun ebenso einen Filter auf diesen Rechner setzten. Hilfreich sind in jedem Fall aber auch die Statistiken, die Wireshark Ihnen bietet. Unter dem gleichnamigen Menü finden Sie unter anderem drei Statistiken, die mit „Endpoint list“, „Conversation“ und „Service Response Time“ umschrieben sind. Rufen Sie nun zuerst die „Endpoint List“-Statistik auf. Hier finden sie eine Liste der Kommunikation nach IP-Endgeräten (siehe auch nebenstehendes Bild). Diese Liste zeigt eindeutig die Verteilung des Datenverkehrs nach Endgeräten in dem gewählten Zeitraum. Anhand der IP-Adresse lässt sich nun auch das Gerät ausfindig machen.

Was aber noch fehlt ist die Art des Datenverkehrs. Woher rührt er? Hier hilft Google oder auch die Online-Hilfe von Wireshark weiter. Wenn Sie in einem von beiden nach dem Begriff „RTMP“ suchen, werden Sie sehen, dass es sich dabei um das „Real Time Messaging Protocol“ handelt. Dieses wird unter anderem zur Übertragung von Audio Streams, wie etwa einem Internet Radio, verwendet. Aber auch Video-Streams werden damit übertragen. Der Grund für den Engpass im Netzwerk dürfte also ein PC mit massiven Video-Streaming sein, wodurch dermaßen viel Traffic entsteht, dass das Netzwerk ausgebremst wird.
DNS-Auflösung prüfen

Alle Zugriffe auf das Internet benötigen zwingend einen DNS-Dienst. DNS (Domain Name Service) ist im Prinzip ein Namensdienst wie ARP. ARP findet für eine IP-Adresse die zugehörige MAC-Adresse. DNS arbeite eine Stufe höher als ARP. DNS löst eine Namen wie www.pcwelt.de in eine IP-Adresse auf. Bei Problemen mit dem Internetzugang hilft Wireshark auch hier weiter. Nur müssen Sie dann nach den DNS-Einträgen in der Paketliste suchen.

Wenn Sie die Details dazu analysieren möchten, müssen Sie sich auch über den Aufbau der Pakete in Klaren sein. Das galt aber analog auch bereits für die ARP-Pakete oder die RTMP-Nachrichten. Doch für eine einfache Prüfung ob die Dienste funktionieren reicht es aus wenn sie die Nachrichten finden, ohne sie im Detail zu analysieren.

Die aktuelle Version 2 bietet im Vergleich zu den Vorgängerversionen wichtige Verbesserungen. Die Macher entwickelten zum Beispiel die Lokalisierung weiter, denn WireShark verfügt jetzt über bessere Sprachunterstützung. In der neuen Version haben die Entwickler vor allem einen Schwerpunkt darauf gelegt, den Sniffer-Vorgang zu verbessern. Die Entwickler bieten ein einstündiges Webinar welches Ihnen die Neuerungen in der Praxis zeigt:
Vor allem die Benutzeroberfläche wurde in der neuen Version überarbeitet. Sie haben aber die Möglichkeit auszuwählen, ob Sie die neue oder die ältere Oberfläche verwenden wollen. Die Oberfläche wurde dazu über eine neue Bibliothek (Qt) neu geschrieben. Diese Bibliothek wurde bereits in der Vorgängerversion genutzt, allerdings fand hier vor allem Gtk+ Einsatz. Der Grund für diese Änderung liegt vor allem in der breiteren Unterstützung von Plattformen, die Qt bietet. Hier spielt für die Entwickler vor allem der mobile Betrieb auf Android und iOS eine wichtige Rolle.
Natürlich funktioniert die Bedienung im Grunde genommen noch genauso wie bei vorhergehenden Versionen. Aktualisieren Sie also von Vorgängerversionen zur neuesten Version, müssen Sie sich nicht großartig gewöhnen.
WireShark kann auch in der neuen Version als 32-Bit- oder als 64-Bit-Programm auf Windows-Rechnern installiert werden. Zusätzlich stellen die Entwickler auch eine portable Version zur Verfügung. Neben Windows wird auch MacOS X ab Version 10.6 unterstützt. Selbstverständlich steht die neue Version auch für verschiedene Linux-Distributionen zur Verfügung. Vor allem Debian, Ubuntu, Arch Linux, Gentoo, openSUSE, Red Hat, Fedora und Slackware gehören zu den unterstützten Systemen.

Neuerungen in WireShark 2.0.1
Viele Verbesserungen in WireShark wurden vor allem in der grafischen Oberfläche und den verschiedenen Menüs vorgenommen. Die Entwickler haben die zahlreichen Aufzeichnungs-Optionen (Capture Options) konsolidiert. Diese sind es vor allem über den Menüpunkt Aufzeichnen/Optionen zu erreichen. Weitere Optionen sind an der gleichen Stelle über die Schaltfläche „Interfaces verwalten“

Dadurch lassen sich Einstellungen wesentlich besser vornehmen und Netzwerke auch effizienter überwachen, da die Konfiguration nicht an verschiedenen Stellen versteckt ist. Neben der bereits erwähnten, erweiterten Sprachenunterstützung, bietet die Version 2 auch einen verbesserten VoIP-Player, zusätzliche Werkzeuge für die Überwachung von WLANs und bessere Visualisierung. WireShark 2.0.1 steht in den Sprachen Englisch, Deutsch, Französisch und Chinesisch zur Verfügung, bietet jetzt aber auch Unterstützung für Italienisch, Japanisch und Polnisch.
Für eine verbesserte Analyse sorgen auch die neuen Statistikbäume für DNS, HPFEEDS und HTTP2. Die meisten Widgets lassen sich jetzt direkt aktivieren oder eben deaktivieren.
Zusätzlich zur Überwachung von Netzwerken lassen sich mit der neuen Version auch Probleme mit USB-Geräten beheben. Dazu wird auf dem Rechner zusätzlich noch USBPcap installiert.
Die Konfigurationsdateien werden in Linux jetzt nicht mehr im Verzeichnis $HOME/.wireshark, sondern in $HOME/.config/wireshark gespeichert.
Netzwerk-Pakete mit Linux und Windows sniffern
Geht es um die schnelle Netzwerküberwachung helfen kleine Tools wie tcpdump http://www.pcwelt.de/ratgeber/5-Tcpdump-und-Wireshark-1464862.html . Der Vorteil des Tools ist es, dass es in so gut wie allen Linux- und Unix-Distributionen integriert ist, auch in Kali-Linux. Außerdem lassen sich mit diesem Tool Dateien erstellen, die mit WireShark analysiert werden können. Sie können in Windows-Netzwerken können auch auf den tcpdump-Klon Windump (https://www.winpcap.org/windump) setzen. Windump benötigt die kostenlose Erweiterung WinPcap (https://www.winpcap.org/install/default.htm) für die Sniffervorgänge. Diese Erweiterung wird aber auch von WireShark benötigt, und zusammen mit WireShark installiert.
Die 10 wichtigsten Linux-Befehle für Netzwerk und Internet
Um Daten von tcpdump mit Wireshark zu analysieren, müssen Sie mit der Option -s 0 die ganzen Pakete mitschneiden und mit -w die Rohdaten speichern. Die Rohdaten werden anschließend in Wireshark eingelesen: tcpdump -s 0 -w outputwire.dmp. Sinnvoll ist das zum Beispiel, wenn Sie mit WireShark 2 den SSL-Datenverkehr auf Rechnern nach verfolgen wollen. Auf diesem Weg können Sie auf Windows, aber auch auf Linux und Mac OS Browser wie Chrome und Firefox überwachen. Wollen Sie zum Beispiel in Linux, oder auf einem Mac-Rechner den SSL-Datenverkehr mit WireShark 2 überwachen, starten Sie zunächst die Überwachung mit dem Tool tcpdump:
sudo tcpdump -i en0 -s 0 tcp port https -w ~/Desktop/capture.pcap
Achten Sie aber darauf, die korrekte Netzwerkschnittstelle zu verwenden. Danach können Sie den gespeicherten Datenverkehr in WireShark analysieren. Rufen Sie dazu über „Bearbeiten/Einstellungen/Protocols“ die Einstellungen für SSL auf. Hier können Sie verschiedene Einstellungen vornehmen. Sie haben mit der neuen Version auch die Möglichkeit verschlüsselten Inhalt anzuzeigen. Dazu müssen sie im Terminal von Mac OS folgenden Befehl eingeben:
touch ~/Desktop/session-key.log export SSLKEYLOGFILE=”~/Desktop/session-key.log”
Starten Sie danach in der Konsole zum Beispiel Chrome und öffnen eine URL, wird das session-key.log erstellen. Chrome starten Sie zum Beispiel über das Terminal mit dem Befehl:
open /Applications/Google Chrome.app
Nachdem die Daten eingelesen wurden, öffnen Sie Wireshark und lesen die erstellte Dumpdatei ein. Dabei spielt es keine Rolle ob Wireshark auf dem gleichen Rechner oder einem anderen Rechner geöffnet wird. Die Datei lässt sich auf diesem Weg zum Beispiel per Mail versenden und auf anderen Rechnern analysieren. Solche Dateien werden in Wireshark über FileOpen geöffnet. Nachdem die Dumpdatei geöffnet wurde, lässt sie sich in Wireshark genauso analysieren wie Livemitschnitte des Netzwerkes.