概要
パケットキャプチャーをするためのコマンドの使い方~初級編~
tcpdumpは、コマンドライン上で利用するネットワーク上を流れるパケットの様子を観察するためのツールです。
tcpdumpオプション
オプション | 内容 |
-a | ネットワークアドレスとブロードキャストアドレスを名前解決する |
-c COUNT | COUNT個のパケットを受信したら終了する |
-d | コンパイル済みパケットマッチングコードを、人が読める形式で標準出力に出力し終了する |
-dd | パケットマッチングコードをC言語プログラムの一部として使える形式でダンプする |
-e | リンクレベルヘッダをそれぞれの出力行に表示する |
-f | 外部のIPv4アドレスをシンボルではなく数値で表示する |
-i INTERFACE | ネットワーク・インターフェースINTERFACEを監視する |
-l | 標準出力をバッファリングする |
-n | IPアドレスやポート番号を名前に変換しない |
-m MODULE | SMI MIBモジュールをファイルMODULEから読み込む |
-p | プロミスキャスモード(無差別透過モード)にしない |
-q | 簡易的な出力とする |
-r FILE | パケットをファイルFILEから読み込んで処理する(「-」なら標準入力から読み込む) |
-s SNAPLEN | 出力するバイト数をSNAPLENバイトとする |
-t | 時間情報を出力しない |
-tt | 時間情報を整形せずUNIX時間で表示する |
-ttt | 時間情報を直前の行との差分で表示する |
-v | やや詳細に出力する(TTLやサービス種別なども表示される) |
-vv | -vよりも詳細に出力する(NFS応答パケットの追加フィールドなども表示される) |
-vvv | -vvよりも詳細に出力する(telnet SBオプションなども表示される) |
-w FILE | 生パケットをそのままファイルFILEに出力する(-rオプションで読み込める) |
-x | パケットを16進数で表示する(リンクレベルヘッダを除く) |
-A | パケットをASCII文字で表示する |
-B BUFFERSIZE | OSのバッファサイズをBUFFERSIZEとする |
-C FILESIZE | 出力ファイルの最大サイズをFILESIZEメガバイト(MiB)とし、超えた場合は別ファイルにローテートする |
-D | tcpdumpで利用できるネットワークインターフェースをリスト表示する |
-F FILE | FILE 条件式が書かれたファイルFILEを読み込んで利用する(これ以後の引数の条件式は無視) |
-G ROTATE_SECONDS | ファイル書き込みをROTATE_SECONDS秒でローテートする |
-N | ドメイン名を表示せずホスト名のみ表示する |
-S | TCPシーケンス番号を絶対値で表示する |
-T TYPE | 条件にマッチしたパケットをTYPE(rpc、rtp、rtcp、snmp、vat、wb)で指定したタイプで翻訳する |
-X | パケットの16進数表示の際にASCII文字列も表示する |
-W FILECOUNT | ローテート回数がFILECOUNTに達したら終了する |
-Z USER | root権限ではなくユーザーUSER権限で動作する |
EXPRESSION | パケットマッチングの条件式を指定する |
tcpdump初級編
条件指定なし
インターフェースを指定して実行
# tcpdump -i [interface name]
ファイルに書き出す
# tcpdump -w dumpfile
-wで取得したキャプチャファイルをWireSharkでオープンすれば、WireSharkで解析することが可能です。
次回は条件式!!(なんちゃって中級編)
参考リンク
tcpdumpの使い方
【tcpdump】ネットワークトラフィックをダンプ出力する
ありがとうございます
コメント