Warum dauert es so lange, bis tcpdump pcap-Dateien liest?

2

Ich verwende ein Drittanbieter-Tool, das den Netzwerkverkehr während eines Netzwerktests als PCAP-Datei aufzeichnet. Wenn ich versuche, diese Dateien wiederzugeben, verwende ich das tcpdumpTool mit den -Aq -rOptionen und leite die Ausgabe an grep weiter. Einige der Captures haben eine Größe von 600 KB, was nicht sehr groß zu sein scheint, aber es dauert relativ lange, sie zu lesen.

Wird tcpdumpdie pcap-Datei in Echtzeit zurückgelesen, und wenn ja, wie kann ich sie beschleunigen?

Dies ist, was meine gewählten tcpdumpOptionen tun:

  • -A druckt Pakete (minus Header) in ASCII, so dass es grep- und human-freundlich ist.
  • -q druckt weniger Informationen für eine schnellere Ausgabe.
  • -r <FILE> Liest die angegebene pcap-Datei ein.

Dies ist ein Beispiel für einen tatsächlichen Befehl, den ich ausgeführt habe. Das Drucken von sechzehn Zeilen dauerte fünfundvierzig Sekunden, wenn ich erwartet hätte, dass die Ausführungszeit fast sofort oder höchstens einige Sekunden beträgt:

$ tcpdump -Aq -r z2121ecbc0186d9fa07b.pcap | grep POST

Angesichts der Tatsache, dass die Dauer des Captures weniger als eine Minute beträgt, denke ich, tcpdump -rdass das Capture in Echtzeit wiedergegeben wird, aber ich kann auf der Manpage oder im Internet nichts finden, um dies zu bestätigen, und auf keinen Fall Das sagt mir, ob es eine Möglichkeit gibt, die Echtzeitwiedergabe zu deaktivieren.

Steve HHH
quelle
Sie sagen, dass es lange dauert, aber Sie sagen nie, wie lange diese Zeit ist.
MaQleod

Antworten:

6

Dient -nzum Unterdrücken von DNS-Suchvorgängen.

Das Lesen, Analysieren und Umwandeln der Datei in eine Textausgabe ist in der Regel sehr schnell und kann nur bei sehr großen Dateien einige Zeit in Anspruch nehmen . In allen anderen Fällen verlangsamt die Namensauflösung die Arbeit. In der Regel wird darauf gewartet, dass ein DNS-Server antwortet, und manchmal wird auf eine Zeitüberschreitung gewartet, wenn dies nicht der Fall ist.

Es gibt keine Wiedergabe in Echtzeit und keinen Grund dafür. Bei Verwendung mit einer Datei wandelt tcpdump die Datei nur in eine lesbare Ausgabe um.

Pavel Šimerda
quelle
Das war genau das Problem. Ich danke dir sehr. Daran hätte ich nie gedacht. Schade, dass ich dir nicht mehr als eine Stimme geben kann.
Steve HHH
Gern geschehen. Ich arbeite täglich mit verschiedenen Netzwerktools und die Unterdrückung potenzieller DNS-Lookups ist ein Muss.
Pavel Šimerda