Linux/CentOS パケットキャプチャ
通信エラーが発生した時にtcpdumpが使えると助かるのでメモ。
環境構築だったり接続先の追加でなぜか通信がつながらない!となったときに使えると便利だと思います。
使いこなせているわけではないですが・・。
あるある話で、iptableでフィルタしていた事が原因だった場合、dump取ればパケットの確認ができてますので、絞りすぎてた!と気づくことができます。
◇基本的なコマンド
$ tcpdump [向き先] [カテゴリ] [条件値]
1.向き先
送信先:dst
送信元:src
2.カテゴリ
ポート指定:port
IP指定:net(追加オプションでmaskとすればIP帯でフィルタできます)
ex)tcpdump src net 192.168.1.0 mask 255.255.255.0
3.条件値
具体的な値(IPとかポート番号とか)を指定してください。
4.その他
ほかにも色々オプションがあります。
orをつければ複数条件指定できます。
$ tcpdump dst port 80 src net 192.168.1.1 -n -w /home/hogehoge/dumpdata_20160130
2.名前解決されないようにする
-nオプション指定をしないと勝手に名前解決されてしまい、どのIPか
よくわからなくなってしまうのでつけます。
◇コマンド実行例
特定端末からの通信(ポート:80、IP:192.168.1.1)をキャプチャする場合
$ tcpdump dst port 80 src net 192.168.1.1 -n