--------------------------------------------------
◆wiresharkとは
--------------------------------------------------
定番のパケット解析ツール。
旧バージョン:Ethereal(イーサリアル))。
--------------------------------------------------
◆wireshark入手・インストール方法
--------------------------------------------------
http://www.wireshark.org/
からwindows版をダウンロード。
インストーラを起動して次へ次へ…でインストール可能。
--------------------------------------------------
◆画面表示
--------------------------------------------------
起動すると以下の3つのペインに分割されている。
(1)[Packet List]ペイン
キャプチャしたパケットが一覧表示表示。
(2)[Packet Details]ペイン
[Packet List]ペインで選択されたパケット詳細情報。
(3)[Packet Bytes]ペイン
[Packet List]で選択したパケットの内容が表示される。
--------------------------------------------------
◆操作方法
--------------------------------------------------
■NWトレースを開く
メニューのfile > open か、NWトレースのファイルを
直接ドラッグ&ドロップすることで開くことが可能。
■タイムスタンプの表示形式変更
上部メニューのView>Time Display Format >Date and Time of Day を選択すると、
パケット一覧のタイムスタンプが日時分秒表示になる。
■コンテンツの簡易的な確認方法
画面上部ペインのパケットの一覧から任意のパケットを選択すると、
下部ペインに16進の羅列とともに返却されるレスポンスのコンテンツ(html)が表示される。ただし凄く見にくい。
見やすいリクエスト/レスポンスの情報を知るには以下を使用する。
■Follow TCP Stream
パケットリストから1つ選択し右クリック>Follow TCP Stream を選択すると、
パケットのリクエスト/レスポンスの詳細情報を表示できる。
解析が終了するとサブウィンドウが表示される。
上部の赤色の文字列がリクエスト、下部の青色の文字列がレスポンスである。
これを見ればだいたいどんな画面(html)が返っているかわかる。
ただし1パケットごとにコツコツ解析していく必要があるので、
かなり面倒な作業である。
■フィルタの使い方
メニューのAnalyze>Display Filetersでサブウィンドウを開く。
HTTPなどを選択し、OK押下で、http通信のパケットのみを抽出することができる。
もっと細かいフィルタをかけるには、Display Fileterウィンドウか、メニュー上部のExpressionを開いた後、
Field name == 文字列 のように計算式を作ることで絞込み可能。
Expressionには大量に選択肢はあるが、実際に使用するのはIP内の、
ip.src ip.dst ip.addr(srcとdst両方が引っかかる)程度とのこと。
ip.src==192.168.~ のように書いて、Display FilterでApply押下で適用される。
複数条件指定する場合は and等をはさめばOK.
※特定業務でのフィルタリング(リクエストのURLの文字列で絞るなど)はできるのか?→不明
■Flow Graph
Follow TCP Streamでリクエストを絞った後にStatistics>Flow Graphをクリック。
Displayed packets
General flow
Standard source/destination addresses にチェックを入れ OK を選択
リクエストの流れが視覚的に表示されるので若干分かりやすくなる。
--------------------------------------------------
◆NWトレースの分割
--------------------------------------------------
巨大なNWトレースファイルは、先にeditcapというツールを使ってNWトレースを分割するのが適切である。これはwiresharkに付属するツールである。
■手順
プログラム>Wireshark>Wireshark Program Directory>editcap.exe を利用する。
実際にはコマンドプロンプトで、以下のように実行する。
editcap.exe [分割前のNWトレースファイル名] [分割後のファイル名] -c 10000
※-cオプションはパケット単位でファイルを分割するオプション。上記例では、10000パケット毎に分割する。
他のパラメータについては、editcap.exeと同じディレクトリ内のeditcap.htmlを参照。
タイムスタンプで分割もできるらしい。
また、分割後のファイル名には末尾に連番が付与される。
【参考】
http://www.atmarkit.co.jp/flinux/prodreview/tool_wireshark/wireshark.html
http://d.hatena.ne.jp/iox/20070513/1179039998