今日の人気記事

  1. chown - ファイルの所有者やグループを変更 - Linuxコマンド
  2. gzip - ファイルを圧縮・展開 - Linuxコマンド
  3. ssh - リモートマシンにSSHでログイン - Linuxコマンド
  4. head - ファイルの先頭数行を表示 - Linuxコマンド
  5. コマンドの実行結果・標準出力をファイルに保存

tcpdump - ネットワークのトラフィックをダンプ - Linuxコマンド

スポンサーリンク

tcpdumpコマンドは、ネットワークのトラフィックをダンプするコマンドです。

tcpdumpコマンド

書式

tcpdump [オプション] [条件式]

ネットワークインターフェースを通るパケットのヘッダ情報を表示します。

オプション

-c パケット数指定したパケット数を受信した後、コマンドを終了します。
-dパケットマッチングコードを人間が読める形式で標準出力にダンプします。
-ddパケットマッチングコードをC言語の利用可能形式でダンプします。
-dddパケットマッチングコードを10進数でダンプします。
-eリンクレベルヘッダーを表示します。
-F ファイル名フィルター条件式が記載されたファイル名を指定します。
-i インターフェース監視するインターフェースを指定します。
-l標準出力をバッファします。
-nアドレス、ポート番号の名前解決を行いません。
-q限定したプロトコルの情報のみを表示します。
-r ファイル名オプション -w で作成したファイルを読み込みます。
-t時間情報を表示しません。
-w ファイル名指定したファイル名にパケット情報を書き込みます。
-v詳細情報を表示します。
-vvもっと詳細情報を表示します。
-vvvもっともっと詳細情報を表示します。
-xパケットを16進数で表示します。
-X16進数で表示されるときに、ASCII文字も表示します。

条件式

typehost、net、port が利用可能です。
dirsrc(送信元)、dst(送信先)、src or dst、src and dst を指定します。
protoプロトコルをしています。

使用例

オプションなしで、tcpdumpコマンドを実行します。するとネットワークのトラフィックがダンプされます。かなり多いです。コマンドの終了は「Ctrlキー」を押しながら「Cキー」を押します。

# tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
13:23:09.775749 IP example.com.60002 > example.jp.61968: Flag, length 192
13:23:09.776476 IP example.com.57687 > aa.bb.cc.dd.domain: 52004+ PTR? aa.bb.cc.dd.in-addr.arpa. (45)
13:23:09.776822 IP aa.bb.cc.dd.domain > example.jp.57687: 52004 1/2/2 PTR example.jp. (163)
13:23:09.777098 IP example.com.50227 > aa.bb.cc.dd.domain: 52180+ PTR? aa.bb.cc.dd.in-addr.arpa. (45)
13:23:09.777420 IP aa.bb.cc.dd.domain > example.jp.50227: 52180 NXDomain 0/1/0 (104)
13:23:09.793807 IP hoge.ne.jp.60574 > example.jp: Flags [.], ack 3194754837, win 16614, length 0
… 略 …

受信するパケットを指定してコマンドを実行します(オプション -c)。

# tcpdump -c 1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
13:28:30.034248 IP aa.com.52972 > bb.com.http: Flags [P.],
 seq 145672862:145673134, ack 3287795824, win 64240, length 272
1 packets captured
5 packets received by filter
0 packets dropped by kernel

監視するインターフェース(オプション -i)、条件式でポート番号(port)を指定します。

# tcpdump -i eth0 port 22
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
23:10:50.112177 IP example.jp.ssh > hoge.com.62934: Flags [P.], seq 32718:72830, ack 3277,
 win 2641, options [nop,nop,TS val 109623997 ecr 553388297], length 112

関連コマンド

arp, ifconfig, netstat, ping /p>

関連記事(一部広告含む)