パケットキャプチャtcpdumpについてのメモ

tcpdump主な使い方

eth1インターフェースで流れている全パケットをキャプチャ(基本)

 # tcpdump -n -nn -tttt -s0 -e -i eth1

パケット内容表示/16進ダンプで表示(これをやらない場合はヘッダのみキャプチャされる)

 # tcpdump -n -nn -tttt -s0 -e -i eth1 -x
# tcpdump -n -nn -tttt -s0 -e -i eth1 -X (強制アスキー変換)

icmpだけキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1 icmp

arpだけキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1 arp

eth1の80番ポートのパケットをキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1  port 80

eth1の80番ポートと22番ポートのパケット両方をキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1  port 80 or port 22

eth1の22番ポート以外のパケットをキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1 not port 22

eth1の 192.168.122.1 がパケットの送信元or先になっているパケットかつ、80番ポートを送信元or先としているパケットをキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1 host 192.168.122.1 and port 80

eth1の 192.168.122.1 がパケットの送信元になっているパケットをキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1 src host 192.168.122.1
・送信先を指定したい場合は下記のようにやる
# tcpdump -n -nn -tttt -s0 -e -i eth1 dst host 192.168.122.1

eth1の ネットワーク帯 192.168.122.* がパケットの送信元or先になっているパケットをキャプチャ

 # tcpdump -n -nn -tttt -s0 -e -i eth1 net 192.168.122

オプション説明

-n  ホスト名をDNSで引かない。
-nn プロトコル名やポート番号をそのまま表示。例えば 80 をhttpという風に表示しない。
-tttt 各ダンプ行で、デフォルト書式でタイムスタンプを表示し、その前に日付を付ける。
-i インターフェース指定
-s0 -sでキャプチャのバッファサイズを指定。デフォルトだと65535 bytes。-s0ですべてキャプチャ
-e 各ダンプ行にリンクレベルヘッダを表示(MAC アドレス等を表示)
-x -xをつけないとtcpdumpは通常ヘッダ情報のみ出力する。-xをつけるとパケットの中身も表示してくれる
-X -Xをつけるとパケットの中身の表示 & 強制ASCII変換もしてくれる。

シェアする

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

コメントする