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

当ページのリンクには広告が含まれています。

スポンサーリンク

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

ネットワーク の人気記事

  1. Linuxコマンド【 sftp 】安全なファイル転送を行う
  2. Linuxコマンド【 ssh 】リモートマシンにSSHでログインする
  3. Linuxコマンド【 scp 】リモートマシンにファイルコピーする
  4. Linuxコマンド【 ping 】ホストとの接続を確認する
  5. Linuxコマンド【 traceroute 】ホストまでの経路を表示する
  6. Linuxコマンド【 netstat 】ネットワークの接続状況を表示する
  7. Linuxコマンド【 ntpdate 】日付と時刻をNTPサーバーと同期する
  8. コマンドリファレンス
  9. Linuxコマンド【 ssh-keygen 】認証用の鍵を生成する
  10. Linuxコマンド【 arp 】ARPキャッシュを操作する

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