コマンドライン版 wireshark の tshark
使い方については
tsharkコマンドの使い方
オプションについては
tshark オプションメモ
を参考に
-i オプションでキャプチャするインターフェースの指定
-c オプションでパケット数の指定
なおデフォルトだと無限になっている
eth0 で2つのパケットを取得するのなら
1 | tshark -i eth0 -c 2 |
とすればOK
結果は
1 2 3 4 5 | 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 にして保存するなら
1 | tshark -f "udp port 53" -i eth0 -w traffic.pcap |
を実行
別端末を ctrl + alt + t で起動
1 | dig ntp.nict.jp +short |
を実行したら
ctrl + c で tshark を停止
内容をみるには
1 | tshark -r traffic2.pcap |
とすれば内容をみることができる
なお実行結果は
1 2 3 | 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に絞り込むなら
1 | tshark -i eth0 -Y 'udp.port==53' -n |
を実行
別端末を ctrl + alt + t で起動
1 | dig ntp.nict.jp +short |
を実行
これで tshark 側に通信内容が表示される