Einschränkung der Erfassungsgröße in Tshark

WiresharkWiresharkBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Labor lernen Sie, die Größe der Paketüberwachung in Wireshark mithilfe von Tshark-Befehlen zu steuern. Sie werden zwei wichtige Techniken erkunden: die Begrenzung der Gesamtzahl der Pakete mit -c 500 und die Beschränkung der Paketlänge mit -s 128, um nur Header zu erfassen und Speicherplatz zu sparen.

Durch praktische Übungen an der Schnittstelle eth1 erfassen Sie den Datenverkehr in limited.pcap und beobachten, wie sich verschiedene Einstellungen auf Ihre Erfassungen auswirken. Diese praktische Erfahrung hilft Ihnen, die Paketerfassung für verschiedene Analysefälle zu optimieren.

Paketanzahl mit -c 500 einstellen

In diesem Schritt lernen Sie, die Dauer der Paketerfassung zu steuern, indem Sie die Anzahl der von Tshark erfassten Pakete begrenzen. Tshark ist die Befehlszeilenversion von Wireshark und ideal für automatisierte Erfassungen. Die Option -c ist besonders wertvoll, wenn Sie eine repräsentative Stichprobe des Netzwerkverkehrs benötigen, ohne Ihr System durch kontinuierliche Erfassung zu überlasten.

  1. Öffnen Sie zunächst das Terminal in Ihrer LabEx-VM. Das System platziert Sie automatisch im richtigen Arbeitsverzeichnis (~/project), sodass Sie sofort beginnen können.

  2. Die Befehlstruktur verwendet dieses grundlegende Muster:

    tshark -c [Anzahl] [weitere Optionen]

    Hier bestimmt [Anzahl], wann die Erfassung genau beendet wird, indem die maximale Anzahl der zu erfassenden Pakete angegeben wird. Dies verhindert unbestimmte Läufe, die Ihren Speicher füllen könnten.

  3. Lassen Sie uns zunächst die verfügbaren Netzwerkschnittstellen identifizieren. Führen Sie den folgenden Befehl aus:

    tshark -D

    Sie sehen eine Liste der Schnittstellen, ähnlich wie folgt:

    1. eth0
    2. eth1 (Dummy-Schnittstelle)
    3. any
    4. lo (Schleifenschnittstelle)
    ...

    Wir verwenden für unsere Erfassungen eth1, da es sich um eine Dummy-Schnittstelle handelt, die für dieses Labor erstellt wurde, um eine konsistente Datenverkehrsgenerierung sicherzustellen.

  4. Lassen Sie uns als Hauptübung 500 Pakete erfassen. Führen Sie diesen Befehl aus:

    tshark -c 500 -i eth1

    Der Befehl sudo ist erforderlich, da die Paketerfassung administrative Berechtigungen benötigt. Dies teilt tshark mit, die Netzverbindung eth1 zu überwachen.

  5. Um etwas Datenverkehr zu generieren, den tshark erfassen kann, öffnen Sie ein neues Terminalfenster (oder teilen Sie das aktuelle Terminal) und führen Sie den folgenden Befehl aus:

    ping -c 10 google.com

    Dies sendet 10 ICMP-Pakete an google.com und erzeugt Netzwerkaktivität auf eth1, die tshark erfassen kann.

  6. Während die Pakete fließen, sehen Sie Echtzeitausgaben im tshark-Terminal. Nach genau 500 Paketen beendet tshark die Erfassung automatisch. Die Ausgabe sieht ähnlich aus (obwohl sie für 500 Pakete deutlich länger sein wird):

    Erfassung auf 'eth1'
        1 0.000000000 192.168.X.X -> 142.250.X.X ICMP 84 Echo (ping) Anfrage  id=0xXXXX, seq=1/256, ttl=64 (Antwort in 2)
        2 0.000000000 142.250.X.X -> 192.168.X.X ICMP 84 Echo (ping) Antwort id=0xXXXX, seq=1/256, ttl=117 (Anfrage in 1)
    ... (viele weitere Zeilen)
    500 Pakete erfasst
  7. Bevor die vollständige Erfassung von 500 Paketen erfolgt, testen Sie mit einer kleineren Stichprobe, um das Verfahren zu verstehen. Dieser 10-Paket-Versuch hilft, Ihre Einrichtung zu verifizieren:

    tshark -c 10 -i eth1

    Denken Sie daran, Datenverkehr in einem anderen Terminal zu generieren, während dieser Befehl ausgeführt wird.

Snapshot-Länge mit -s 128 definieren

In diesem Schritt lernen Sie, die Snapshot-Länge (snaplen) bei der Paketerfassung mit der Option -s in Tshark festzulegen. Dies bestimmt, wie viel von jedem Paket erfasst wird. 128 Byte ist ein gängiger Wert, der Paket-Header erfasst und gleichzeitig Speicherplatz spart. Die Snapshot-Länge ist besonders nützlich, wenn Sie nur die Paket-Header für die Analyse benötigen und nicht den vollständigen Paketinhalt.

  1. Stellen Sie zunächst sicher, dass Sie sich im Standard-Arbeitsverzeichnis ~/project in Ihrem Terminal befinden. Hier führen wir alle unsere Erfassungsbefehle aus, um die Organisation zu gewährleisten.

  2. Die Option für die Snapshot-Länge (-s) begrenzt die Menge jedes Pakets, das erfasst wird, indem die Anzahl der zu erfassenden Bytes angegeben wird. Kleinere Werte sparen Festplattenspeicher, aber möglicherweise gehen wichtige Nutzdaten verloren. Die grundlegende Syntax lautet:

    tshark -s [Länge] [weitere Optionen]
  3. Lassen Sie uns Pakete mit einer Snapshot-Länge von 128 Byte zusammen mit der Paketanzahl aus dem vorherigen Schritt erfassen. Dieser Befehl erfasst die ersten 128 Bytes jedes Pakets, bis 500 Pakete erreicht sind:

    tshark -c 500 -s 128 -i eth1

    Denken Sie daran, Datenverkehr in einem separaten Terminal (z. B. ping -c 10 google.com) zu generieren, während tshark läuft.

  4. Sie sehen die Ausgabe, die die ersten 128 Bytes jedes Pakets anzeigt. Die Erfassung wird automatisch nach 500 Paketen beendet, wie durch die Option -c festgelegt. Diese Kombination hilft, sowohl die Größe als auch die Dauer der Erfassung zu verwalten. Die Ausgabe ähnelt dem vorherigen Schritt, aber die Paketdetails könnten abgeschnitten sein, wenn sie 128 Byte überschreiten.

    Erfassung auf 'eth1'
        1 0.000000000 192.168.X.X -> 142.250.X.X ICMP 84 Echo (ping) Anfrage  id=0xXXXX, seq=1/256, ttl=64 (Antwort in 2)
    ... (viele weitere Zeilen)
    500 Pakete erfasst
  5. Um besser zu verstehen, wie sich die Snapshot-Länge auf die Erfassungen auswirkt, versuchen Sie diese Vergleichsbefehle. Beachten Sie, wie sich die angezeigte Datenmenge mit verschiedenen -s-Werten ändert. Denken Sie daran, Datenverkehr für jeden Befehl zu generieren.

    tshark -c 5 -s 64 -i eth1 ## Erfasst nur 64 Bytes pro Paket
    tshark -c 5 -s 0 -i eth1  ## Erfasst ganze Pakete (Standard)

    Die Einstellung -s 0 teilt tshark mit, das gesamte Paket zu erfassen, was nützlich ist, wenn Sie den vollständigen Paketinhalt benötigen, aber mehr Speicherplatz verbraucht.

Netzwerkverkehr mit -i eth1 erfassen

In diesem Schritt konzentrieren wir uns darauf, Netzwerkverkehr von einer bestimmten Schnittstelle mit der Tshark-Option -i zu erfassen. Netzwerkschnittstellen sind die physischen oder virtuellen Verbindungen, die Ihr Computer zur Kommunikation mit Netzwerken verwendet. Wenn Sie mehrere Schnittstellen (wie WLAN und Ethernet) haben, ist die Angabe der richtigen Schnittstelle für die gezielte Paketanalyse entscheidend.

  1. Öffnen Sie Ihr Terminal und navigieren Sie zum Arbeitsverzeichnis:

    cd ~/project
  2. Der Flag -i teilt Tshark mit, welche Netzwerkschnittstelle überwacht werden soll. Die grundlegende Befehlstruktur lautet:

    tshark -i [Schnittstelle] [weitere Optionen]

    Hier sollte [Schnittstelle] durch den tatsächlichen Schnittstellennamen ersetzt werden, typischerweise eth1 in unserem Laborumfeld.

  3. Kombinieren wir dies nun mit dem, was wir über Paketlimits (-c) und Snapshot-Länge (-s) gelernt haben. Dieser Befehl erfasst 500 Pakete von der Schnittstelle eth1 und speichert nur die ersten 128 Bytes jedes Pakets:

    tshark -c 500 -s 128 -i eth1

    sudo ist erforderlich, da die Paketerfassung administrative Berechtigungen benötigt.

  4. Um Testverkehr zu generieren, während die Erfassung läuft, öffnen Sie ein weiteres Terminalfenster und führen Sie aus:

    ping -c 3 google.com

    Dies sendet 3 ICMP-Pakete an die Server von Google, die in Ihrer Erfassung erscheinen sollten. Das Beobachten dieser bekannten Pakete hilft, die korrekte Funktion Ihrer Erfassung zu verifizieren.

  5. Die Erfassung stoppt automatisch nach 500 Paketen, aber Sie können sie jederzeit manuell stoppen, indem Sie drücken:

    Strg+C

    Dieser Tastaturbefehl beendet den Erfassungsprozess sicher und bewahrt gleichzeitig alle erfassten Daten.

Datei speichern mit -w limited.pcap

In diesem Schritt lernen Sie, wie Sie erfasste Netzwerkdaten für die spätere Analyse in einer Datei speichern. Die Option -w in Tshark erstellt eine Paketdatei (pcap), die alle erfassten Netzwerkdaten erhält. Dies ist besonders nützlich, wenn Sie Netzwerkverkehrsmuster offline untersuchen oder die Erfassungen mit Kollegen teilen müssen.

  1. Stellen Sie vor Beginn sicher, dass sich Ihr Terminal im richtigen Arbeitsverzeichnis befindet. Geben Sie ein:

    cd ~/project

    Dies stellt sicher, dass alle Ihre Erfassungsdateien im angegebenen Projektordner gespeichert werden.

  2. Der Flag -w gibt Tshark an, wo die erfassten Pakete gespeichert werden sollen. Die grundlegende Befehlstruktur lautet:

    tshark -w [Dateiname] [weitere Optionen]

    Der Dateiname sollte mit der Erweiterung .pcap enden, dem Standardformat für Paketdateien.

  3. Kombinieren wir nun alle bisher gelernten Optionen in einem praktischen Beispiel. Dieser Befehl wird:

    • Genau 500 Pakete erfassen (-c 500)
    • Jedes Paket auf 128 Byte begrenzen (-s 128)
    • Auf der Schnittstelle eth1 lauschen (-i eth1)
    • Alles in einer Datei namens limited.pcap speichern (-w limited.pcap)
    tshark -c 500 -s 128 -i eth1 -w limited.pcap
  4. Während tshark läuft, öffnen Sie ein weiteres Terminalfenster, um einige Testdaten zu generieren. Diese Befehle erzeugen typische Netzwerkaktivitäten:

    ping -c 3 google.com
    curl http://example.com

    Dieser simulierte Netzwerkverkehr wird von unserer laufenden tshark-Sitzung erfasst.

  5. Nach der Erfassung von 500 Paketen (oder drücken Sie Strg+C, um die Erfassung früher zu beenden), überprüfen Sie, ob Ihre Datei vorhanden ist, und prüfen Sie deren Größe:

    ls -lh limited.pcap

    Die Ausgabe zeigt die Dateidetails, einschließlich Größe und Erstellung, ähnlich wie folgt:

    -rw-r--r-- 1 root root 56K Aug 10 XX:XX limited.pcap
  6. Um Ihre erfassten Pakete später zu überprüfen, haben Sie zwei Hauptmöglichkeiten:

    • Mit tshark (Befehlszeile):

      tshark -r limited.pcap

      Dies zeigt den Paketinhalt genau so an, wie er erfasst wurde, sodass Sie den Verkehr nach Belieben analysieren können.

    • Mit wireshark (GUI):

      Hinweis: Sie müssen diesen Befehl in der Desktop-Oberfläche ausführen.

      wireshark limited.pcap &

      Dies öffnet die Datei limited.pcap im grafischen Benutzerinterface von Wireshark, wodurch eine visuellere und interaktive Möglichkeit zur Analyse der erfassten Pakete bereitgestellt wird. Das & am Ende führt den Befehl im Hintergrund aus, sodass Sie Ihr Terminal weiter verwenden können.

Zusammenfassung

In diesem Labor haben Sie gelernt, die Größe der Paketerfassung in Tshark mithilfe essentieller Befehlszeilenparameter zu steuern. Sie haben die Paketanzahl mit -c 500 begrenzt und die Paketlänge mit -s 128 eingeschränkt, um zu beobachten, wie sich diese Optionen auf das Erfassungsverhalten und die Speichereffizienz auswirken.

Die Übungen zeigten die Kombination dieser Techniken mit der Schnittstellauswahl (-i eth1) für die gezielte Verkehrsanalyse. Durch Befehle wie tshark -c 500 -s 128 -i eth1 -w limited.pcap haben Sie praktische Erfahrung darin gesammelt, mehrere Erfassungsbeschränkungen gleichzeitig anzuwenden und die Ergebnisse für die Offline-Analyse sowohl mit tshark als auch mit wireshark zu speichern.