The world's most advanced operating system.

システム構築時にはネットワーク回りの問題が発生することは少なくない。初めて利用するデータセンターで、初めて扱うアプライアンスが導入され、いくつものルータとL2スイッチが設置され、ファイアウォールの設定も設計通りになっているとは限らない。このような環境では設計書通りに作業してもシステム構築がうまくいかないことがある。

特にネットワークを流れる中身は通常目にすることがないため、どこに問題が発生しているのかを調べる手がかりすら得られないことがある。こういったケースではtcpdump(1)というコマンドを使ってネットワークインタフェースを通過しているパケットそのものの内容をチェックする方法が、問題解決への近道になることが多い。

まず、モニタリングしたいネットワークインタフェースをifconfig(8)コマンドを使って調べる。

ifconfig

次にtcpdump(1)コマンドに-iオプションでインタフェースを指定し、さらにsudo(8)経由で実行する。より詳しいデータが欲しい場合にはtcpdump(1)に-vまたは-vvといったオプションを追加で指定する。

sudo tcpdump -i インタフェース名

Unix系のオペレーティングシステムではよく使われる方法だが、Mac OS Xにも同じ機能が用意されており、システム構築時やネットワークに問題が発生したときの調査ツールとして活用できる。

ifconfig(8)でインタフェースを確認

tcpdump(1)でパケットを確認