web-dev-qa-db-ja.com

Wiresharkで特定の表示フィルタリングされたリクエストに対する対応する応答を表示フィルタリングするにはどうすればよいですか?

組み込みデバイスのWebサーバー上の特定のリソースへのHTTP要求への応答で、非常に散発的なエラーを追跡しているだけです。

したがって、私の計画は、夜間(または週末)にテストを実行し、wiresharkでトラフィックをキャプチャしてから、ダンプファイルをスキミングして応答が破損していないかどうかを確認することです。

「http.request.urimatches」^/resource/to/be/tests」表示フィルターを使用すると、必要なすべてのリクエストを取得できます。

しかし、これらのリクエストに対するすべての応答が必要です-これをアーカイブするにはどうすればよいですか?

1
Peter

tshark でそれを行うことができます以下の手順に従ってください:

  1. リクエストURIで特定のパターンを持つすべてのHTTPパケットをフィルタリングします
  2. フォローTCP src IP、srcポート、dst IP、dstポートに基づくストリーム
 $ tshark -r x.pcap -R'http.request.uriは "^/resource/to/be/tested"に一致します '\ 
-Tフィールド-eip.src -e tcp .srcport -e ip.dst -e tcp.dstport |\
行の読み取り中; do 
 tshark -r x.pcap\
-R "http && ip.addr ==` echo $ line | awk '{print $ 1}' `&&\
 tcp。 port == `echo $ line | awk '{print $ 2}'` &&\
 ip.addr == `echo $ line | awk '{print $ 3}'` &&\
 tcp。 port == `echo $ line | awk '{print $ 4}'` "\ 
 echo 
 done 
1
quanta