ESXiでのパケットキャプチャ方法

tcpdumptcpdump-uw、pktcap-uwなどのユーティリティがあるようですが、ESXiのバージョンにより使えるコマンドが変わるようです。

 

tcpdumpの使い方はこちらtcpdump-uwの使い方はこちらこちらを参照してください。

 

ESX5.5以降であれば、pktcap-uwツールが使えるので、以下を参照してください。

Using the pktcap-uw tool in ESXi 5.5 and later (2051814)

ESXi 5.5 での pktcap-uw ツールの使用 (2095809)

 

基本的なものをいくつか紹介します。

pktcap-uwを使用する前にまずはインターフェイス名を確認しておきます。

 ・ホストに接続されているすべての物理NICを表示する

    # esxcli network nic list    

 ・VMkernelポートの情報を表示する

 # esxcli network ip interface list

 ・VMKernelポートのIP情報を表示する

 # esxcli network ip interface ipv4 get

 ・ネットワーク接続がアクティブなすべての仮想マシンを表示する

 # esxcli network vm list

 ・仮想マシンのPORT-IDを確認

 # esxtop  ->  nキー

 

pktcap-uwの使用例

・ヘルプの表示

 # pktcap-uw  --help

・VMkernelポート(例:vmk0)のパケットキャプチャ

 # pktcap-uw --vmk  vmk0

・ホストのvmnic(例:vmnic0)のパケットキャプチャ

 # pktcap-uw --uplink vmnic0

仮想マシンの特定のvSwitchポート(PORT-ID)のパケットキャプチャ

 # pktcap-uw --switchport  xxxxxx

 

通常パケットキャプチャはファイルへ出力しWiresharkなどで解析すると思います。

ファイルへ出力するには -o オプションを使用します。

仮想マシンの例でファイル出力する場合

 # pktcap-uw --switchport xxxxxx  -o /tmp/VM_name.pcap

 

注意点

・pktcap は一方向に実行され、デフォルトでは受信方向のみです。
トラフィックの方向を指定するには、受信の場合は --dir 0、送信の場合は --dir 1 を使用する。デフォルトでは受信が想定されます。