ITエンジニアの技術メモ

神奈川在住のITエンジニアの備忘録です。主にプログラミング(Perl, Java など)やネットワーク技術について、自分の中で整理するためにゆるゆると書いています。誰かのご参考になれば幸いです。

内部通信をパケットキャプチャする方法

Linuxでは、OS標準の tcpdump コマンドで内部通信のパケットキャプチャを取得することができる。tcpdump コマンドのオプションで「-i lo」を付ければ良い。

ちなみに、tcpdump コマンドで「-w dumpfile.cap」を指定すると、dumpfile.cap に、 wireshark 上で表示可能な形式でパケットダンプが出力される。

 

一方、Windowsでは、OS標準の機能では内部通信のパケットキャプチャを取得することはできない(はず)。それを実現したい場合、RawCap等のツールを導入するか、内部通信でも一度外部に通信が出るように (パケットキャプチャが張っているレイヤを通るように)、OSのルーティング・テーブルを弄る、といった手段がある。

 

パケットキャプチャというと、外部との通信の情報を取得するイメージを持つ人が多いと思うのが、OS内のプロセス間通信(内部通信)の情報を取得したくなることもあるので、ここに書いておく。