WiresharkでHTTPトラフィックをフィルタリングする方法は?


88

私のサーバーには、クライアントからの大量のhttpリクエストがあります。HTTPトラフィックの量を測定したい。Wiresharkでどうすればよいですか?または、おそらく別のツールを使用した代替ソリューションがありますか?

これが、Wiresharkでの単一のHTTP要求/応答トラフィックの外観です。pingはWinAPI funciton :: InternetCheckConnection()alt text http://yowindow.com/shared/ping.pngによって生成され ます

ありがとう!

回答:


72

Pingパケットは、8(エコー)または0(エコー応答)のICMPタイプを使用する必要があるため、次のキャプチャフィルターを使用できます。

icmp

および表示フィルター:

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

HTTPの場合、次のキャプチャフィルタを使用できます。

tcp port 80

または次の表示フィルター:

tcp.port == 80

または:

http

のフィルタはhttp他の2つと同等ではないことに注意してください。これには、ハンドシェイクと終了パケットが含まれます。

データ量ではなく接続数を測定する場合は、キャプチャまたは表示フィルターを通信の片側に制限できます。たとえば、ポート80に送信されたパケットのみをキャプチャするには、次を使用します。

dst tcp port 80 

それをhttp表示フィルターと組み合わせるか、以下を使用します。

tcp.dstport == 80 && http

「キャプチャフィルタの詳細については、読んでキャプチャ中のフィルタリングを Wiresharkのユーザーガイド、から」キャプチャフィルタの Wiresharkののwiki上のページ、またはPCAPフィルタ(7)マニュアルページを参照してください。ディスプレイフィルターについては、Wireshark wikiのディスプレイフィルターページをお試しください。[ フィルター式]ダイアログボックスは、表示フィルターの作成に役立ちます。


1
申し訳ありませんが、「ping」リクエストの詳細について言及するのを忘れました。これはWindowsのping方法です。icmpは私の場合とは関係がないようです。
パー

添付したWiresharkのpingのスクリーンショットを参照してください
パー

質問を「ping」から「http」に変更したので、あなたの答えは文脈上意味をなさないでしょうが、それは良いpingの答えだからです。
シメオンピルグリム

18

次のhttpようなDisplayFilterを使用するだけです。

表示フィルターの例


それを行うと、0が表示され、45kが受信され、Webサイトにヒットしましたが、アイデアはありますか?Wi-Fiを見ています:en0
SuperUberDuper

7

pingではありません。outisで既に述べたように、ping はICMPエコー要求です。トレースには、HTTP接続の確立と即時終了が表示されますInternetCheckConnection()。問題のIP 77.222.43.228は、http: //repkasoft.com/に解決されInternetCheckConnection()ます。これは、あなたが渡すURLです。

キャプチャまたは表示フィルターを使用して、このIPでトラフィックをフィルターできますhost == 77.222.43.228


2

Wireshark 1.2+を使用して、このバッチファイルを実行します。

:: 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
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.