Netzwerkverkehr in Echtzeit mit Tshark überwachen

WiresharkWiresharkBeginner
Jetzt üben

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

Einführung

In diesem Lab lernen Sie, wie Sie mithilfe des Befehlszeilentools tshark von Wireshark den Netzwerkverkehr in Echtzeit überwachen können. Sie üben das Erfassen von Paketen auf der eth0-Schnittstelle, das Konfigurieren von Echtzeit-Statistik-Updates und die Analyse zusammengefasster Ausgaben mit Schlüsselbefehlen wie -i und --update-interval.

Durch praktische Übungen beobachten Sie TCP-Handshakes, beenden Sitzungen und interpretieren Echtzeit-Verkehrsdaten, einschließlich IP-Adressen und Protokollen. Dieses Lab bietet praktische Erfahrungen mit wichtigen Netzwerkanalyse-Techniken.

Starten der Paketerfassung mit -i eth0

In diesem Schritt lernen Sie, wie Sie mithilfe des Befehlszeilentools tshark von Wireshark eine Netzwerkpaketerfassung auf der eth0-Schnittstelle starten. Dies ist die grundlegende Operation für die Netzwerkverkehrsanalyse.

Netzwerkschnittstellen sind die physischen oder virtuellen Punkte, an denen Ihr Computer an ein Netzwerk angeschlossen ist. Der -i-Schalter in tshark gibt an, von welcher Netzwerkschnittstelle Pakete erfasst werden sollen. In den meisten Linux-Systemen repräsentiert eth0 die erste Ethernet-Schnittstelle, die in der Regel Ihre primäre kabelgebundene Netzwerkverbindung ist. In unserer LabEx-VM-Umgebung ist eth0 die Standard-Ethernet-Schnittstelle, die mit dem Netzwerk verbunden ist.

Wenn Sie tshark ohne Filter ausführen, erfasst es gesamten Netzwerkverkehr, der durch die angegebene Schnittstelle geht. Dies umfasst sowohl eingehende als auch ausgehende Pakete. Der Befehl, den wir verwenden werden, bietet eine Echtzeitansicht dieses Verkehrs.

Folgen Sie diesen Schritten, um die Erfassung zu starten:

  1. Öffnen Sie das Terminal in Ihrer LabEx-VM (Sie sollten sich bereits im Verzeichnis ~/project befinden).
  2. Führen Sie den folgenden Befehl aus, um die Erfassung auf eth0 zu starten:
tshark -i eth0

Dieser Befehl weist tshark an, auf der eth0-Schnittstelle zu lauschen und jedes Paket anzuzeigen, sobald es erfasst wird. Die Ausgabe zeigt detaillierte Informationen zu jedem Netzwerkpaket in Echtzeit.

Sobald die Paketerfassung beginnt, sollten Sie eine Ausgabe ähnlich der folgenden sehen:

Capturing on 'eth0'
1 0.000000000 192.168.1.100 → 192.168.1.1    TCP 74 55942 → 80 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 SACK_PERM=1 TSval=123456789 TSecr=0 WS=128
2 0.000123456 192.168.1.1 → 192.168.1.100    TCP 74 80 → 55942 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=1460 SACK_PERM=1 TSval=987654321 TSecr=123456789 WS=128

Jede Zeile repräsentiert ein erfasstes Paket und zeigt seinen Zeitstempel, die Quell- und Ziel-IP-Adressen, den Protokolltyp (in diesem Fall TCP) und verschiedene protokollspezifische Details. Das erste Paket zeigt die Initiierung einer TCP-Verbindung (SYN-Flag), während das zweite die Antwort (SYN-ACK) zeigt.

Um die Erfassung zu stoppen, drücken Sie Ctrl+C im Terminal. Dies zeigt eine Zusammenfassung der erfassten Pakete an, bevor Sie wieder zur Eingabeaufforderung gelangen. Die Zusammenfassung enthält Statistiken darüber, wie viele Pakete erfasst und verarbeitet wurden.

Einstellen von 1-Sekunden-Updates mit --update-interval 1000

In diesem Schritt konfigurieren wir tshark so, dass es periodische Updates der Netzwerkverkehrsstatistiken anzeigt. Dieser Ansatz ist besonders für Anfänger hilfreich, da er eine klare und übersichtliche Ansicht der Netzwerkaktivität bietet, ohne Sie mit ständigen Paketdetails zu überfordern.

Der Parameter --update-interval steuert, wie oft tshark seine Anzeige aktualisiert. Der Wert wird in Millisekunden (ms) angegeben, wobei 1000 ms einer Sekunde entsprechen. Das bedeutet, dass wir alle Sekunden eine Momentaufnahme unseres Netzwerkverkehrs erhalten, was es einfacher macht, Muster und Veränderungen zu beobachten.

Bevor wir beginnen, verstehen wir zunächst, was wir tun:

  • Wir überwachen die eth0-Netzwerkschnittstelle (der Standard-Ethernet-Anschluss auf den meisten Systemen).
  • Anstatt jedes einzelne Paket zu sehen, werden wir zusammengefasste Zählungen sehen.
  • Die Anzeige wird automatisch alle Sekunden aktualisiert.

So richten Sie dies ein:

  1. Stellen Sie zunächst sicher, dass Sie sich im richtigen Arbeitsverzeichnis befinden. Öffnen Sie Ihr Terminal und navigieren Sie zu:
cd ~/project
  1. Führen Sie jetzt diesen Befehl aus, um die Überwachung mit 1-Sekunden-Updates zu starten:
tshark -i eth0 --update-interval 1000

Nachdem Sie diesen Befehl ausgeführt haben, sehen Sie eine Ausgabe ähnlich der folgenden:

Capturing on 'eth0'
Packets: 15
Packets: 32
Packets: 47

Wichtige Hinweise zur Ausgabe:

  • Die Anzahl der "Packets" zeigt die Gesamtzahl der seit dem Start von tshark erfassten Pakete an.
  • Jede neue Zeile repräsentiert ein Update nach dem angegebenen Intervall (1 Sekunde).
  • Die Zahlen variieren je nach Ihrer tatsächlichen Netzwerkaktivität.
  • Höhere Zahlen weisen auf mehr Netzwerkverkehr in diesem Zeitraum hin.

Diese Methode gibt Ihnen eine saubere, periodische Übersicht über die Netzwerkaktivität, was besonders nützlich ist, wenn Sie sich gerade mit der Netzwerküberwachung vertraut machen und Verkehrsmuster beobachten möchten, ohne in Details zu verlieren.

Anzeigen einer Live-Zusammenfassung mit -P

In diesem Schritt werden wir untersuchen, wie Sie mithilfe des Zusammenfassungsmodus von tshark den Netzwerkverkehr auf einer höheren Ebene überwachen können. Dies ist besonders nützlich, wenn Sie Verkehrsmuster beobachten möchten, ohne von den Details einzelner Pakete überfordert zu werden. Stellen Sie sich vor, Sie beobachten den Verkehr auf einer Autobahn, anstatt sich jedes einzelne Auto anzusehen.

Der Parameter -P weist tshark an, periodische Statistiken anzuzeigen, anstatt jedes einzelne Paket zu zeigen. In Kombination mit --update-interval wird dadurch eine dashboardähnliche Ansicht erstellt, die in Ihrem angegebenen Zeitintervall aktualisiert wird. Dieser Ansatz ist viel effizienter als das Durchscrollen durch Rohdaten von Paketen, wenn Sie nur eine Übersicht benötigen.

Bevor Sie beginnen, stellen Sie sicher, dass Sie sich im richtigen Arbeitsverzeichnis befinden, in dem Sie die Berechtigung haben, Netzwerkverkehr zu erfassen. Der Befehl, den wir verwenden werden, baut auf dem auf, was Sie in vorherigen Schritten gelernt haben:

tshark -i eth0 --update-interval 1000 -P

Hier ist, was jeder Teil macht:

  • -i eth0 gibt die Netzwerkschnittstelle an, die überwacht werden soll.
  • --update-interval 1000 setzt die Aktualisierungsrate auf 1000 Millisekunden (1 Sekunde).
  • -P aktiviert den Modus zur Anzeige periodischer Statistiken.

Nachdem Sie den Befehl ausgeführt haben, sehen Sie eine Ausgabe, die sich alle Sekunden aktualisiert und drei Schlüsselmetriken anzeigt:

Capturing on 'eth0'
Packets: 15    Avg. packet size: 342 bytes    Packets/s: 5
Packets: 32    Avg. packet size: 356 bytes    Packets/s: 8
Packets: 47    Avg. packet size: 378 bytes    Packets/s: 7

Diese Metriken sagen Ihnen:

  1. Die Gesamtzahl der seit dem Start erfassten Pakete.
  2. Die durchschnittliche Größe dieser Pakete in Bytes.
  3. Die aktuelle Rate der Pakete, die durch die Schnittstelle fließen.

Diese Ansicht ist besonders hilfreich, um plötzliche Verkehrsspitzen oder ungewöhnliche Muster in Ihrer Netzwerkaktivität zu erkennen. Die Zahlen ändern sich dynamisch, wenn sich die Netzwerkbedingungen ändern, und geben Ihnen Echtzeit-Einblicke in das, was in Ihrem Netzwerk passiert.

Beenden mit Ctrl+C

In diesem Schritt lernen wir, wie man eine aktive tshark-Paketaufzeichnungssitzung sicher beendet. Als Anfänger ist es wichtig zu verstehen, dass das bloße Schließen des Terminals oder das Abrutschen des Prozesses abrupt zu Datenverlust führen kann. Die richtige Methode nutzt den Standard-Linux-Interrupt-Mechanismus.

Wenn Sie tshark ausführen, überwacht es kontinuierlich den Netzwerkverkehr und schreibt Daten in den Speicher. Drücken von Ctrl+C sendet ein SIGINT (Signal-Interrupt), das tshark anweist:

  1. Sofort die Aufzeichnung neuer Pakete zu stoppen
  2. Die gesammelten Statistiken abzuschließen und anzuzeigen
  3. Sauber zum Befehlseingabeaufforderung zurückzukehren

Hier ist genau, was Sie tun müssen:

  1. Stellen Sie zunächst sicher, dass Ihre tshark-Aufzeichnung läuft (verwenden Sie den gleichen Befehl wie zuvor: -i eth0 --update-interval 1000 -P)
  2. Halten Sie auf Ihrer Tastatur die Ctrl-Taste gedrückt
  3. Während Sie die Ctrl-Taste gedrückt halten, drücken Sie einmal die C-Taste

Sie werden eine Ausgabe wie diese sehen:

^C
47 packets captured

Das ^C-Symbol bestätigt, dass Sie Ctrl+C gedrückt haben. Die Zahl zeigt, wie viele Pakete während Ihrer Sitzung erfolgreich aufgezeichnet wurden. Diese Anzahl hilft Ihnen zu überprüfen, ob Ihre Aufzeichnung wie erwartet funktioniert hat, bevor Sie sie beendet haben.

Denken Sie daran, dass diese Methode alle aufgezeichneten Daten bewahrt und einen sauberen Abbruch gewährleistet, im Gegensatz zum Zwangsbeenden, bei dem Pakete, die gerade verarbeitet werden, verloren gehen könnten, wenn die Sitzung gestoppt wird.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie mithilfe von Tshark, der Kommandozeilen-Schnittstelle von Wireshark, den Netzwerkverkehr in Echtzeit überwachen können. Zu den Schlüsseltechniken gehörten das Starten der Paketaufzeichnung auf eth0 mit -i, das Einstellen periodischer Aktualisierungen über --update-interval und die Anzeige von Live-Zusammenfassungen der Pakete mit -P.

Die Übungen haben Ihnen praktische Erfahrungen bei der Aufzeichnung von Rohpaketen, der Analyse von TCP-Handshakes und der Verfolgung von Echtzeit-Verkehrsstatistiken vermittelt. Diese grundlegenden Fähigkeiten ermöglichen eine effiziente Netzwerküberwachung und Fehlerbehebung durch die paketbasierte Inspektion über die Kommandozeile.