
最近WireSharkを使用することが多くなってきた。
地図を載せた組み込み系のソフトから、
正しく地図情報が送られてきているかの確認に使用することが多い。
WireSharkとは
WireSharkは高機能なパケット取得・プロトコル解析ソフトで、
ネットワークに流れるパケット情報をリアルタイムで調査することが可能だ。
ネットワークエンジニアには必須のツールであるといえる。
※最も私はネットワークエンジニアではないが
WireSharkは以下からインストールすることができる。
https://www.wireshark.org/download.html
インストール時に特に困ることはなかった(と思う)。
起動すると、キャプチャしたいインタフェースを聞かれるので、
ダブルクリックして起動する。
キャプチャを開始すると、メイン画面に次々とパケットが表示される。
フィルタリング
たくさんのパケットが次から次へ流れてくるため、
フィルタしないと見づらい。
そこで、下記の表示フィルタに検索条件を入力して絞り込む。
IPを指定して検索
たいてい、確認したいパケットの
SourceのIPやDestinationのIPが分かっていると思うので、
それらを指定して検索。
1 2 3 4 5 6 7 8 |
// IPアドレスを指定して検索 ip.addr == 192.168.1.21 // SourceのIPアドレスを指定して検索 ip.src == 192.168.1.121 // SourceのIPアドレスとDestinationのIPアドレスを指定して検索 ip.src == 192.168.1.121 && ip.dst == 192.168.1.122 |
ポートを指定して検索
これもかなり使う。
指定したポートで通信できているかを確認するときに使う。
1 2 |
// ポート指定して検索 tcp.port == 8080 |
TCP制御フラグを指定して検索
地味に使うことが多い。
SYNが飛んでいるのか、ACKが返ってきているのかなど、
疎通確認時に有効。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
// SYNフラグが設定されたパケットの表示 tcp.flags.syn==1 // SYNフラグが設定されていないパケットの表示 tcp.flags.syn==0 // ACKフラグが設定されたパケットの表示 tcp.flags.ack==1 // ACKフラグが設定されていないパケットの表示 tcp.flags.ack==0 // ACKフラグとSYNフラグが設定されたパケットの表示 tcp.flags.syn==1 && tcp.flags.ack==1 // ACKフラグかSYNフラグが設定されたパケットの表示 tcp.flags.syn==1 or tcp.flags.ack==1 |
以上です。
コメントフォーム