コマンドライン版 wireshark の tshark
使い方については
tsharkコマンドの使い方
オプションについては
tshark オプションメモ
を参考に
-i オプションでキャプチャするインターフェースの指定
-c オプションでパケット数の指定
なおデフォルトだと無限になっている
eth0 で2つのパケットを取得するのなら
tshark -i eth0 -c 2
とすればOK
結果は
Running as user "root" and group "root". This could be dangerous. Capturing on 'eth0' 1 0.000000000 AsustekC_67:e6:38 → Spanning-tree-(for-bridges)_00 STP 60 Conf. Root = 32768/0/60:45:cb:67:e6:38 Cost = 0 Port = 0x8001 2 2.000087602 AsustekC_67:e6:38 → Spanning-tree-(for-bridges)_00 STP 60 Conf. Root = 32768/0/60:45:cb:67:e6:38 Cost = 0 Port = 0x8001 2 packets captured
となる
最初のメッセージは
root ユーザで行うとでる警告文
-f オプションでフィルタリング
-w オプションで保存ファイル名の指定
-r オプションで保存したパケットファイルからの読み出し
-q オプションで表示する出力を減らす
DNS通信をキャプチャし
traffic.pcap にして保存するなら
tshark -f "udp port 53" -i eth0 -w traffic.pcap
を実行
別端末を ctrl + alt + t で起動
dig ntp.nict.jp +short
を実行したら
ctrl + c で tshark を停止
内容をみるには
tshark -r traffic2.pcap
とすれば内容をみることができる
なお実行結果は
Running as user "root" and group "root". This could be dangerous. 1 0.000000000 192.168.1.134 → 192.168.1.1 DNS 94 Standard query 0xbecb A ntp.nict.jp OPT 2 0.000822310 192.168.1.1 → 192.168.1.134 DNS 162 Standard query response 0xbecb A ntp.nict.jp A 133.243.238.244 A 133.243.238.163 A 61.205.120.130 A 133.243.238.164 A 133.243.238.243 OPT
となっている
パケットの監視を行いフィルタリングするなら
-Y オプションを使う
先ほどと同じようにDNSに絞り込むなら
tshark -i eth0 -Y 'udp.port==53' -n
を実行
別端末を ctrl + alt + t で起動
dig ntp.nict.jp +short
を実行
これで tshark 側に通信内容が表示される