Einführung
tcpdump ist ein sehr nützlicher Befehl zum Untersuchen und Erfassen von Netzwerkpaketen, die in und von Ihrem Computer ein- und ausgehen. Es ist eines der gebräuchlichsten Netzwerkdienstprogramme zur Behebung von Netzwerkproblemen und Sicherheitsproblemen.
Obwohl sein Name tcpdump ist, kann es verwendet werden, um Nicht-TCP-Verkehr einschließlich UDP, ARP oder ICMP zu untersuchen.
Dieses Tutorial zeigt Ihnen, wie Sie den Befehl tcpdump in einem Linux-System verwenden.
tcpdump installieren
Standardmäßig ist tcpdump auf den meisten Linux-Distributionen installiert. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob tcpdump installiert ist oder nicht:
$ tcpdump --version
Ausgabe:
Wenn es noch nicht installiert wurde, führen wir Folgendes aus:
$ sudo apt update
$ sudo apt install tcpdump
Pakete auf Netzwerkschnittstellen erfassen
Wenn Sie tcpdump ohne Optionen ausführen, werden alle Pakete auf allen Netzwerkschnittstellen auf Ihrem Computer erfasst.
$ sudo tcpdump
Sie müssen Strg + C drücken, um zu stoppen.
Führen Sie Folgendes aus, um alle Netzwerkschnittstellen aufzulisten, deren Pakete mit dem Befehl tcpdump überprüft werden können:
$ sudo tcpdump -D
Die Ausgabe:
Wenn Sie Pakete auf einer bestimmten Netzwerkschnittstelle erfassen und die Anzahl der Pakete auf 6 beschränken möchten, führen Sie den folgenden Befehl aus:
$ sudo tcpdump -i eth0 -c 6
Die Ausgabe:
Netzwerkpakete auf einem bestimmten Host erfassen
Um die Pakete von einem bestimmten Host zu erfassen. Sie können einfach den folgenden Befehl ausführen:
$ sudo tcpdump -n host 172.19.11.101 -c 5
Netzwerkpakete auf einem bestimmten Port erfassen
Wenn Sie nur Netzwerkpakete an einem bestimmten Port filtern möchten, führen Sie den Befehl tcpdump mit der Option -n Port aus.
$ sudo tcpdump -n port 22
Netzwerkpakete von Quelle und Ziel erfassen
Wenn Sie nur Netzwerkpakete filtern möchten, die von einer bestimmten Quelle stammen, lassen Sie uns den Befehl tcpdump mit der Option src ausführen.
$ sudo tcpdump src 172.19.11.210
Um nur Netzwerkpakete zu einem bestimmten Ziel zu erfassen, führen Sie den Befehl tcpdump mit der Option dst aus.
$ sudo tcpdump dst 172.19.11.210
Netzwerkpakete mit vielen kombinierten Filtern erfassen
Um beim Ausführen des Befehls tcpdump viele Filter zu kombinieren, können Sie diese Operatoren verwenden:and (&&), or (||), not (!). Beispielsweise erfasst der folgende Befehl alle Pakete, die von der Quelle 172.19.11.210 über Port 22 kommen.
$ sudo tcpdump src 172.19.11.210 && -n port 22 -c 5
Netzwerk nach Protokoll filtern
Um die Netzwerkpakete eines bestimmten Protokolls zu erfassen, geben wir den Protokollnamen als Befehlsoption an. Zum Beispiel:
$ sudo tcpdump -n udp
Schlussfolgerung
Sie haben bereits die Details zur Verwendung des Befehls tcpdump zur Fehlerbehebung und Analyse des Netzwerks auf Ihrem Linux-System durchgegangen.
Wenn Sie Bedenken haben, lassen Sie es mich bitte wissen. Danke fürs Lesen.