Frage Wie filtert man HTTP-Traffic in Wireshark?


Ich vermute, dass mein Server eine große Last von HTTP-Anfragen von seinen Clients hat. Ich möchte das Volumen des http-Verkehrs messen. Wie kann ich es mit Wireshark machen? Oder wahrscheinlich gibt es eine alternative Lösung mit einem anderen Werkzeug?

So sieht ein einzelner http-Anfrage / Antwort-Verkehr in Wireshark aus. Der Ping wird von WinAPI funciton :: InternetCheckConnection () generiert alt text http://yowindow.com/shared/ping.png

Vielen Dank!


74
2017-12-21 08:22


Ursprung




Antworten:


Ping-Pakete sollten einen ICMP-Typ von 8 (Echo) oder 0 (Echoantwort) verwenden. Sie können also einen Erfassungsfilter verwenden von:

icmp

und ein Anzeigefilter von:

icmp.type == 8 || icmp.type == 0

Für HTTP können Sie einen Erfassungsfilter verwenden von:

tcp port 80

oder ein Anzeigefilter von:

tcp.port == 80

oder:

http

Beachten Sie, dass ein Filter von http ist nicht äquivalent zu den anderen beiden, die Handshake- und Termination-Pakete enthalten.

Wenn Sie die Anzahl der Verbindungen und nicht die Datenmenge messen möchten, können Sie die Erfassungs- oder Anzeigefilter auf eine Seite der Kommunikation beschränken. Um beispielsweise nur Pakete zu erfassen, die an Port 80 gesendet wurden, verwenden Sie Folgendes:

dst tcp port 80 

Verbinden Sie das mit einem http Filter anzeigen oder verwenden:

tcp.dstport == 80 && http

Weitere Informationen zu Capture-Filtern finden Sie unter "Filtern während des Captures"aus dem Wireshark - Benutzerhandbuch, der Filter erfassen Seite auf dem Wireshark Wiki, oder Pcap-Filter (7) Man Seite. Versuchen Sie die Anzeigefilter Filter anzeigen Seite auf dem Wireshark Wiki. Das Dialogfeld "Filterausdruck" kann Ihnen helfen, Anzeigefilter zu erstellen.


62
2017-12-21 08:33



Entschuldigung, ich habe vergessen, die Details der "Ping" -Anfrage zu erwähnen. Dies ist Windows-Art des Pingens. Es scheint, dass ICMP keine Beziehung zu meinem Fall hat. - par
Siehe den Screenshot des Ping in Wireshark, den ich gerade angehängt habe - par
Ich habe die Frage von "Ping" zu "http" geändert, so dass Sie im Kontext keinen Sinn ergeben, aber ich +1, weil es eine gute Ping-Antwort ist. - Simeon Pilgrim


Verwenden Sie einfach einen DisplayFilter http so was:

display filter example


16
2017-11-26 08:42





Es ist kein Ping. Ein Ping, wie schon sagte von outis ist eine ICMP-Echo-Anfrage. Ihr Trace zeigt den Aufbau und die sofortige Beendigung einer HTTP-Verbindung an, und das ist es InternetCheckConnection() tut. Die betreffende IP-Adresse 77.222.43.228 wird aufgelöst http://repkasoft.com/, was, denke ich, die URL ist, an die Sie weitergeleitet werden InternetCheckConnection().

Sie können den Datenverkehr mit dieser IP filtern, indem Sie einen Aufnahme- oder Anzeigefilter verwenden host == 77.222.43.228.


6
2017-12-21 08:56





Mit Wireshark 1.2+ würde ich diese Batch-Datei ausführen:

:: Script to save a wireshark trace
:: tshark -D to get interface id
@echo off
C:
cd C:\Temp\NetTracing
set PATH=%PATH%;C:\Program Files\Wireshark
echo Tracing host 127.1 or 172.1.1.1 or 10.0.0.1

tshark.exe -i 4 -a duration:900 -S -f "tcp port 80" -w trace.cap

1
2018-03-24 21:10