Foto mit freundlicher Genehmigung von Michael_P
Dieser Artikel wurde von Balakrishnan M verfasst
Vor einiger Zeit haben wir 11 Beispiele zur Verwendung des Dienstprogramms editcap zum Erfassen von Netzwerk-Dumps überprüft. Lassen Sie uns in diesem Artikel das Mergecap-Dienstprogramm und die tshark-Befehle überprüfen.
Mergecap ist ein Tool zum Kombinieren von Paket-Dumps, das mehrere Dumps in einer einzigen Dump-Datei kombiniert. Basierend auf dem Zeitstempel werden die Pakete geordnet in die Ausgabedatei geschrieben. Standardmäßig wird die Ausgabedatei im libpcap-Format geschrieben. Mit Mergecap-Optionen können wir jedoch Ausgaben in verschiedenen unterschiedlichen Formaten generieren, einschließlich derjenigen, die vom Wireshark-Tool unterstützt werden.
Mergecap ist im Wireshark-Paket verfügbar. Stellen Sie sicher, dass das Wireshark/ethereal-Paket installiert ist, um Mergecap zu verwenden.
Kombinieren Sie zwei Dump-Dateien zu einer einzigen output_dump-Datei
Kombiniert input_dump1- und input_dump2-Capture-Dateien und schreibt in die output_dump-Datei.
# mergecap -v input_dump1 input_dump2 -w output_dump
In diesem Beispiel enthält input_dump2 die Pakete, die nach input_dump1 erfasst werden. Der output_dump enthält am Anfang intput_dump2-Pakete, gefolgt von intput_dump1-Paketen.
# mergecap input_dump1 input_dump2 -w output_dump -a
Ausgabe-Dump-Datei auf Standardausgabe drucken
Kombinieren Sie zwei Netzwerk-Dump-Dateien und geben Sie die Ausgabe auf der Standardausgabe aus, anstatt sie in eine Datei zu schreiben.
# mergecap -v input1_dump input2_dump -w -
Ausgabedatei in einem bestimmten Kapselungsformat drucken
Verwenden Sie die Option -T, um die Ausgabedatei im gewünschten Kapselungsformat zu erhalten, wie unten gezeigt.
# mergecap -v -T ether -w merge_cap capture1 capture2 capture3
3. Pakete bestimmter Länge zusammenführen
In diesem Beispiel enthält der output_dump die Pakete mit maximal 100 Byte Länge.
# mergecap -v -s 100 dump1 dump2 dump3 -w output_dump
Tshark – Paketerfassungstool
Tshark ist ein leistungsstarkes Tool zum Erfassen von Netzwerkpaketen, das zur Analyse des Netzwerkverkehrs verwendet werden kann. Es wird mit der Verteilung des Wireshark-Netzwerkanalysators geliefert.
Erfassen Sie kontinuierlich die Netzwerkerfassung
Das folgende Beispiel erfasst die Netzwerkpakete kontinuierlich für 60 Sekunden. Nach 60 Sekunden Aufnahme stoppt es automatisch. capture_out enthält die Pakete, die in den letzten 60 Sekunden im Netzwerk geflogen sind.
# tshark -q -w capture_out -a duration:60
Im folgenden Beispiel werden Pakete auf dem Bildschirm ausgegeben und gleichzeitig in die Ausgabedatei geschrieben.
# tshark -S -q -w capture_out -a duration:10
Netzwerkstatistiken mit tshark erfassen
Verwenden Sie den folgenden Befehl, um zu sehen, wie viele Pakete in einem bestimmten Intervall im Netzwerk fließen.
# tshark -q -w capture_duration1 -a duration:1 -z io,stat,1
Netzwerkpakete für einen bestimmten Host erfassen
Verwenden Sie das folgende Beispiel, um den Paketfluss für einen bestimmten Host (übertragene und empfangene Pakete) zu erfassen. In diesem Beispiel konnten wir sehen, dass für den Host 192.168.1.185 pro Sekunde wie viele Pakete im Netzwerk geflogen sind
# tshark -S -q -w capture_duration6 -a duration:6 -z io,stat,1,ip.addr==192.168.1.150 After capturing all the packets for 6 seconds duration, it will print the statistics as like the following, 145 packets dropped 19749 packets captured IO Statistics Interval: 1.000 secs Column #0: ip.addr==192.168.1.185 | Column #0 Time |frames| bytes 000.000-001.000 2733 545242 001.000-002.000 2991 583374 002.000-003.000 3310 650716 003.000-004.000 3236 641896 004.000-005.000 3518 690860 005.000-006.000 3310 654988 006.000-007.000 638 122812
Netzwerkpakete auf einem bestimmten Port erfassen
Dieses Beispiel erfasst nur die ssh-Pakete.
# tshark -f “tcp port 22” -w capture_out
Netzwerkpakete für eine bestimmte Dauer erfassen
Das folgende Beispiel erfasst Pakete für eine bestimmte Dauer (5 Sekunden) und wechselt zur nächsten Datei, wenn die Größe der erfassten Datei eine bestimmte Größe erreicht (1000 KB).
# tshark -a filesize:1000 -a duration:5 -a files:5 -w ethcap1
Beispieldateiname für Ausgabe-Capture mit Größe:
ethcap1_00001_20090216174203 - 1000K ethcap1_00002_20090216174205 - 1000K ethcap1_00003_20090216174207 - 835K
Andere tshark Capture-Befehle
Verwenden Sie die Option -c, um die Pakete bis zu einer bestimmten Paketanzahl zu erfassen. Das folgende Beispiel erstellt die ethcap1-Datei nur mit 10 Paketen.
# tshark -c 10 -w ethcap1
Verwenden Sie die Option -r, um Netzwerkpakete als komprimierte Datei zu lesen.
# tshark -r capture_dump.gz
Verwenden Sie die Option -r, um nur bestimmte Pakettypen anzuzeigen. Das folgende Beispiel erstellt die Datei capture_dump nur mit den rtp-Paketen im Netzwerkanalysator.
# tshark -R “rtp” -r capture_dump
Verwenden Sie den Filter unten, um die TCP-Pakete zu erfassen, die auf Port 1720 fließen.
# tshark -f “tcp port 1720”
Das folgende Beispiel erfasst Pakete, die entweder an Port 1720 oder 1721 ankommen.
# tshark -f “port 1720 or port 1721” -w capture_dump
Standardmäßig verwendet tshark das eth0-Gerät, um die Paketerfassung durchzuführen. Sie können auch einen bestimmten Ethernet-Adapter angeben, indem Sie die Option -i verwenden, wie unten gezeigt.
# tshark -i eth1 -w -a duration:10 capture_dump
Dieser Artikel wurde von Balakrishnan Mariyappan. verfasst Er arbeitet bei bk Systems (p) Ltd und ist daran interessiert, zu Open Source beizutragen. The Geek Stuff freut sich über Ihre Tipps und Gastartikel.