Wie http Verkehr in Wireshark filtern?


88

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

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

Vielen Dank!

Antworten:


72

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

icmp

und ein Anzeigefilter von:

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

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

tcp port 80

oder ein Anzeigefilter von:

tcp.port == 80

oder:

http

Beachten Sie, dass ein Filter von httpnicht den beiden anderen entspricht, was Handshake- und Terminierungspakete umfasst.

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. Verwenden Sie beispielsweise Folgendes, um nur Pakete zu erfassen, die an Port 80 gesendet wurden:

dst tcp port 80 

Koppeln Sie das mit einem httpAnzeigefilter, oder verwenden Sie:

tcp.dstport == 80 && http

Weitere Informationen über die Capture - Filter, lesen Sie „ Filterung während der Aufnahme “ aus dem Wireshark Gebrauchsanweisung, die Capture - Filter - Seite auf dem Wireshark Wiki, oder pcap-Filter (7) man - Seite. Informationen zu Anzeigefiltern finden Sie auf der Seite Anzeigefilter im Wireshark-Wiki. Das Dialogfeld "Filterausdruck" unterstützt Sie beim Erstellen von Anzeigefiltern.


1
Entschuldigung, ich habe vergessen, die Details der "Ping" -Anforderung zu erwähnen. Dies ist die Windows-Ping-Methode. Es scheint, dass ICMP keinen Bezug zu meinem Fall hat.
— Par

Siehe den Screenshot des Ping in Wireshark ich gerade angeschlossen haben
— Par

Ich habe die Frage von "Ping" in "http" geändert, damit Ihre Antwort im Kontext keinen Sinn ergibt. Ich +1, weil es eine gute Ping-Antwort ist.
— Simeon Pilgrim

18

Verwenden Sie einfach einen DisplayFilter httpwie diesen:

Beispiel für Filter anzeigen


Wenn ich das tue, bekomme ich 0 angezeigt und 45k erhalten, und ich treffe Websites, irgendwelche Ideen? Ich schaue auf Wi-Fi: en0
— SuperUberDuper

7

Es ist kein Ping. Ein Ping, wie bereits gesagt durch Outis, ist eine ICMP Echo - Anfrage. Ihr Trace zeigt den Aufbau und die sofortige Beendigung einer HTTP-Verbindung an InternetCheckConnection(). Die fragliche IP-Adresse 77.222.43.228 wird in http://repkasoft.com/ aufgelöst. Dies ist vermutlich die URL, an die Sie weiterleiten InternetCheckConnection().

Sie können den Datenverkehr mit dieser IP mithilfe des Erfassungs- oder Anzeigefilters filtern host == 77.222.43.228.


2

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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.