■ 環境構築
* 今回の想定環境は、以下の通り。* OS : CentOS7
インストール
# インストール sudo yum install tcpdump # バージョン確認 tcpdump --helpDebian系の場合
# インストール sudo apt-get install tcpdump
■ 使い方
# w : 出力ファイル名 sudo tcpdump host 127.0.0.1 -w dump.pcap # ssh以外をキャプチャリング(not port 22) sudo tcpdump -w dump.pcap not port 22 => 出力ファイルを、Wireshark(以下の関連記事を参照)で開き、ダンプファイルを調査するhttps://blogs.yahoo.co.jp/dk521123/31486925.html
sudo tcpdump -i eth1 port 8080 sudo tcpdump -i any port 8080
オプション
`オプション | `説明 | 備考 |
-i [Interface] | インターフェースを指定 | any を指定すると全てのインタフェース |
-w [file] | キャプチャ結果を書き出す |
http://itpro.nikkeibp.co.jp/article/COLUMN/20140512/556024/?rt=nocnt
http://blog.livedoor.jp/sonots/archives/18239717.html
使用上の注意
* root権限で実行する * 出力ファイルの拡張子は「.pcap」にしといたほうがいい(Wiresharkで開くために)
トラブル
トラブル内容* tcpdumpコマンドを実行したところ、以下の「エラー内容」が表示され キャプチャが開始されないエラー内容
tcpdump: WARNING: SIOCGIFADDR: nflog: No such device tcpdump: NFLOG link-layer type filtering not implemented解決案
https://centossrv.com/patio/centossrv.cgi?read=2898&ukey=0
より [1] 「ip addr」を実行する ~~~~ 1: enoxxxxxxxx: <BROADCAST,MULTICAST,UP,LOWER_UP> ... << 「enoxxxxxxxx」をメモっとく ... ~~~~ [2] 「sudo tcpdump -D」を実行する ~~~~ 1.nflog ... 2.nfqueue ... 3.enoxxxxxxxx ... << 「enoxxxxxxxx」の番号「3」をメモっとく ... ~~~~ [3] 「-iオプション」で、手順[2]の番号を指定する(キャプチャ開始されるはず) ~~~~ $ sudo tcpdump -i 3 host 127.0.0.1 -w dump.pcap tcpdump: listening on enoxxxxxxxx, link-type EN10MB (Ethernet), capture size 65535 bytes ~~~~
参考文献
http://qiita.com/tossh/items/4cd33693965ef231bd2ahttps://www.softel.co.jp/blogs/tech/archives/5257