Egal, um welchen Dienst es sich dreht, den Benutzern geht es immer zu langsam. Der Schwerpunkt des ADMIN-Magazins 05/2011 verrät, mit welchen Tools man ... (mehr)

Pakete spiegeln

Allerdings sind heute schon in kleinen Heimnetzen Switches sehr verbreitet, von Unternehmensnetzen ganz zu schweigen. Der Sinn von geswitchten Netzen besteht gerade in einer Entzerrung des Datenverkehrs, sodass eine an einem Switch angeschlossene Station ohnehin nur noch solche Datenpakete erhält, die auch für sie bestimmt sind. Aus diesem Grund bietet sich für die Analyse in geswitchten Netzen das Verwenden der bei vielen Geräten implementierten Port-Mirror-Funktion an, um die gespiegelten Port-Daten der zu analysierenden Station der Netzwerkkarte der lokalen Station, auf der Wireshark installiert ist, von außen zuzuleiten. Einzelheiten dazu sind im Kasten "Glossar" zu finden.

Vor dem ersten Einsatz ist Wireshark zu konfigurieren. Im Menü »Capture | Options« legt der Admin beispielsweise im Listenfeld rechts oben fest, über welche Netzwerkschnittstelle Wireshark den Datenverkehr mitschneidet (Abbildung 1). Er kann aber auch zuvor im Menü »Capture | Interfaces« , das sämtliche im Host eingebauten Netzwerkinterfaces zeigt, bei der gewünschten Netzwerkkarte auf die Schaltfläche »Options« klicken und landet dann im gleichen Dialog.

Abbildung 1: Vor dem Start der Protokollierung steht die grundlegende Konfiguration von Wireshark unter Capture | Options.

Außerdem kann er hier eine Reihe weiterer Rahmenbedingungen für die Aufzeichnung festlegen. So lassen sich im Feld rechts neben der Schaltfläche »Capture Filter« eigene Filter definieren. Für das aufkommende Datenvolumen ist es entscheidend, wie der zu analysierende Host mit dem Internet verbunden ist. Ein Filter kann dann unter anderem dafür sorgen, dass Wireshark nur den Internet-Datenverkehr dieses Hosts akzeptiert oder sich auf Protokolle beschränkt, die das zu untersuchende Problem auch wirklich tangieren. Andernfalls müsste sich der Admin aus einer riesigen Anzahl von Protokollen oder Broadcasts erst die relevanten Pakete heraussuchen.

Wireshark kennt zwei Arten von Filtern, deren Syntax leider unterschiedlich ist, nämlich Capture-Filter und Display-Filter. Mit Capture-Filtern legt der Admin fest, welche Pakete Wireshark überhaupt mitprotokolliert. Capture-Filter bestimmen das zu erwartende Datenvolumen und sind somit für die zur Analyse verfügbare Datenbasis zuständig. Auf das Ergebnis der Capture-Filterung kann der Admin zur weiteren Analyse Display-Filter anwenden. Capture-Filter benutzen die Syntax von Libpcap. Das Filtern nach einer bestimmten MAC-Adresse sieht in der Libpcap-Syntax so aus:

ether host 00:25:4b:bd:24:94

Möchte der Admin dagegen die Anzeige auf diese MAC-Adresse beschränken, lautet die zugehörige Display-Filter-Syntax:

eth.addr==00.25.4b.bd.24.94

Display-Filter sind allerdings deutlich flexibler. So kann der Admin etwa bei Display-Filtern nach einzelnen Feldern in allen unterstützten Pakettypen selektieren (Abbildung 2).

Abbildung 2: Wireshark bringt vordefinierte Display-Filter mit und erlaubt mit seiner Filter-Toolbar auch das interaktive Erstellen von Display-Filtern.

Die Entscheidung zum Verwenden von Capture- oder Display-Filtern hängt von einer Reihe von Faktoren ab. Die wichtigsten Vor- und Nachteile führt die Tabelle "Capture-Filter versus Display-Filter" auf.

Wireshark konfigurieren

Um sich mit Wireshark vertraut zu machen, kann sich der Admin beispielsweise einen groben Überblick über den Netzwerkverkehr verschaffen, der beim gewünschten Host ankommt. Dazu ist es notwendig, sämtliche bekannten Applikationen, die regelmäßig über das Netz kommunizieren, wie Browser, E-Mail-Clients oder Messenger zunächst zu schließen. Anschließend wählt er im Menü »Capture | Options« die betreffende Netzwerkkarte aus und passt gegebenenfalls die Puffergröße seinen Wünschen an. Von der gewählten Puffergröße hängt es ab, wie viele Pakete Wireshark im Speicher festhalten kann, bevor das Programm Daten auf die Festplatte schreiben muss. Bei Netzen mit extrem hohen Datenaufkommen empfiehlt sich ein großer Wert.

Mit der Option »Capture packets in promiscucous mode« liest das Interface wie beschrieben den gesamten ankommenden Datenverkehr mit und gibt die Daten zum Verarbeiten an das Betriebssystem weiter. Ein Limitieren der Paketgröße ist normalerweise nicht erforderlich, weshalb die entsprechende Option per Default nicht gesetzt ist. Da der komplette Datenverkehr analysiert werden soll, kommt zunächst kein Capture-Filter zum Einsatz. Im Bereich »Display Options« empfiehlt es sich außerdem, »Update list of packets in real time« zu deaktivieren, damit Wireshark nicht zu viele Systemressourcen beansprucht.

Außerdem gibt es rechts unten im Bereich »Name Resolution« noch weitere wichtige Optionen. Mit »Enable Network Name Resolution« wandelt Wireshark sämtliche IP-Adressen mittels DNS in Namen um, was unter Umständen recht lange dauern kann, weshalb die Option per Default zugunsten von »Enable MAC name resolution« deaktiviert ist.

Im Bereich »Capture Files(s)« kann der Admin Einfluss auf das Speichern der Capture-Daten nehmen. Normalerweise speichert Wireshark sämtliche Capture-Daten in einer einzigen Datei, die der Admin an dieser Stelle spezifizieren kann. Gibt er keine Datei an, speichert Wireshark die Daten automatisch temporär, und der Admin kann jederzeit mithilfe des Menüs »File« wählen, in welcher Datei er die Daten ablegen möchte.

Mit der Option »Use multiple Files« ist es aber auch möglich, das Speichern auf mehrere Dateien zu verteilen. Außerdem lässt sich deren Größe begrenzen oder die Datenmenge durch Aktivieren eines Ringpuffers beschränken, sodass Wireshark bei einem Überschreiten der vorgegebenen Größen immer die schon existierenden Daten überschreibt.

Mit »Start« beginnt Wireshark mit dem Aufzeichnen der Daten. Zum Protokollieren des Datenverkehrs für das ausgewählte Device genügt es, Wireshark einfach eine Zeit lang laufen zu lassen, wobei das Hauptfenster von Wireshark permanent die mitprotokollierten Pakete in der Paket-Liste anzeigt.

Mit den Funktionen im Menü »Go« navigiert der Admin durch die Paketliste. Jetzt kann der Nutzer oder Admin auch einige typische Applikationen, etwa Webanwendungen im Browser oder VoIP-Tools, starten.

In der Spalte »Protocol« lässt sich erkennen, zu welcher Protokollgruppe das jeweilige IP-Paket gehört. Nach einiger Zeit kann der Admin das Aufzeichnen mit »Capture | Stop« anhalten, und Wireshark zeigt sämtliche eingesammelten Pakete an (Abbildung 3).

Abbildung 3: Der komplette, ungefilterte Datenverkehr auf dem gewählten Interface.
comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019