pktcap-uw ユーティリティを使用して、仮想スイッチと VMXNET3 仮想マシン アダプタ間のトラフィックを監視します。
仮想スイッチと仮想マシン アダプタ間のデータパス上の特定のキャプチャ ポイントを指定できます。また、スイッチに対するトラフィックの方向およびパケットのソースまたはターゲットへの近接性によってキャプチャ ポイントを決定することができます。サポートされているキャプチャ ポイントについては、pktcap-uw ユーティリティのポイントのキャプチャ を参照してください。
前提条件
仮想マシン アダプタが VMXNET3 タイプであることを確認します。
手順
- ホスト上で esxtop ユーティリティを使用して、仮想マシン アダプタのポート ID を確認します。
- ホストへの ESXi Shell でユーティリティを開始するには、esxtop を実行します。
- ユーティリティのネットワーク パネルに切り替えるには、N を押します。
- [USED-BY] 列で、仮想マシン アダプタを探し、その PORT-ID 値をメモします。
[USED-BY] フィールドには、仮想マシン名と仮想マシン アダプタが接続しているポートが記載されています。
- 「Q」 を押して、 esxtop を終了します。
- ESXi Shell で、
pktcap-uw --switchport port_ID
を実行します。
port_ID は、
esxtop ユーティリティが [PORT-ID] 列に表示する仮想マシン アダプタの ID です。
- ESXi Shell で、pktcap-uw コマンドに
--switchport port_ID
引数と、特定のポイントでパケットを監視し、キャプチャしたパケットをフィルタリングし、結果をファイルに保存するオプションを指定して実行します。
pktcap-uw --switchport port_ID [--capture capture_point|--dir 0|1 --stage 0|1] [filter_options] [--outfile pcap_file_path [--ng]] [--count number_of_packets]
pktcap-uw --switchport port_ID
コマンドのオプションは角括弧 ([]) で囲まれており、縦線 (|) は代替値を表します。
pktcap-uw --switchport port_ID
コマンドをオプションなしで実行する場合、パケットの切り替えポイントとなるコンソール出力の標準スイッチまたは Distributed Switch で受信するパケットの内容を取得します。
- 別のキャプチャ ポイントのパケットまたはゲスト OS と仮想スイッチの間のパスの方向を確認するには、--capture オプションを使用するか、--dir オプションおよび --stage オプション値を組み合わせます。
pktcap-uw コマンド オプション |
目的 |
--capture VnicTx |
仮想マシンからスイッチに向かうパケットを監視します。 |
--capture VnicRx |
仮想マシンに到達した時点のパケットを監視します。 |
--dir 1 --stage 0 |
仮想スイッチを出た直後のパケットを監視します。 |
--dir 1 |
仮想マシンに入る直前のパケットを監視します。 |
--dir 0 --stage 1 |
仮想スイッチに入った直後のパケットを監視します。 |
- filter_options を使用して、ソースやターゲット アドレス、VLAN ID、VXLAN ID、レイヤー 3 プロトコル、および TCP ポートに応じてパケットをフィルタリングします。
たとえば、IP アドレスが 192.168.25.113 のソース システムからパケットを監視するには、
--srcip 192.168.25.113
フィルタ オプションを使用します。
- オプションを使用すると、.pcap または .pcapng ファイルに各パケットの内容、または一定数のパケットの内容を保存できます。
- .pcap ファイルにパケットを保存するには、--outfile オプションを使用します。
- .pcapng ファイルにパケットを保存するには、--ng および --outfile オプションを使用します。
Wireshark などのネットワーク アナライザ ツールでファイルを開くことができます。
デフォルトでは、pktcap-uw ユーティリティを使用して、ESXi ファイル システムのルート フォルダにパケット ファイルを保存できます。
- --count オプションを使用すると、パケット数のみを監視できます。
- --count オプションを使用してもパケット数を制限しない場合、Ctrl+C を押してパケットのキャプチャまたはトレースを停止します。
例: IP アドレス 192.168.25.113 から仮想マシンで受信するパケットのキャプチャ
IP アドレス 192.168.25.113 を割り当てられたソースからポート ID 33554481 の仮想マシン アダプタに到着したときの最初の 60 パケットをキャプチャし、vmxnet3_rcv_srcip.pcap という名前のファイルに保存するには、次の pktcap-uw コマンドを実行します。
pktcap-uw --switchport 33554481 --capture VnicRx --srcip 192.168.25.113 --outfile vmxnet3_rcv_srcip.pcap --count 60
次のタスク
パケットの内容がファイルに保存される場合、Wireshark などグラフィカルなアナライザ ツールを実行するシステムに ESXi ホストのファイルをコピーしてツールで開き、パケットの詳細を調査します。