# tcpdump [option] [filter1] [and|or|not filter2]
オプション | 意味 | 説明 |
-i int | interface | キャプチャするインターフェース名 any で lo0 も含む全インターフェース |
-X | ||
-n | no lookup | 名前解決をしない |
-N | no domain | |
-p | プロミスキャス モードを利用しない | |
-q | quick | すばやい、限定された情報だけ出力 |
-v | verbose | 詳細情報を出力 (TTL など) |
-vv | verbose^2 | もっと詳細情報を出力 |
-vvv | verbose^3 | さらに詳細情報を出力 |
-s | size | 各フレームから抽出するサイズ パケットの中身も見るなら MTU 以上にする (デフォルトは 68 byte) |
-w filename | write | 内容をファイルに出力する STRFTIME(3)の変数の利用も可能 |
-C size | -w オプション使用時、一定サイズごとにファイルをローテートする (KB (KiB ではない)) filename の後に 1 から順にナンバリングされる | |
-G time | -w オプション使用時、一定間隔ごとにファイルをローテートする (秒) STRFTIME(3)の変数の利用しないと順次上書きされる |
フィルタ | 説明 |
[src|dst] host ip-addr | IP アドレス |
[src|dst] net ip-addr/mask | ネットワーク アドレス |
ether src|dst|host mac-addr | MAC アドレス |
proto | プロトコル (tcp, udp, icmp など) |
proto [src|dst] port num | ポート番号 |
ex) 特定送信元 IP アドレスから特定ポートへのパケットをキャプチャする
# tcpdump src host 192.168.0.1 and tcp port 80
ex) 複数ポートのパケットをキャプチャする
# tcpdump tcp port \(80 or 443\)
ex) 特定ポート以外のパケットをキャプチャする
# tcpdump not tcp port 22
ex) Wireshark 等で解析するログを取得する
# tcpdump -s 1500 -w filename
ex) DNS 通信を dnsdump_MMDD_hhmmss.pcap に保存し、24 時間毎にローテートする
#pre(soft){{
# nohup tcpdump -i any port 53 -s 1500 -w dnsdump_%m%d_%H%M%S.pcap -G 86400