pktcap-uw ユーティリティを使用して、仮想スイッチと VMXNET3 仮想マシン アダプタ間のトラフィックを監視します。

仮想スイッチと仮想マシン アダプタ間のデータパス上の特定のキャプチャ ポイントを指定できます。また、スイッチに対するトラフィックの方向およびパケットのソースまたはターゲットへの近接性によってキャプチャ ポイントを決定することができます。サポートされているキャプチャ ポイントについては、pktcap-uw ユーティリティのポイントのキャプチャ を参照してください。

前提条件

仮想マシン アダプタが VMXNET3 タイプであることを確認します。

手順

  1. ホスト上で esxtop ユーティリティを使用して、仮想マシン アダプタのポート ID を確認します。
    1. ホストへの ESXi Shell でユーティリティを開始するには、esxtop を実行します。
    2. ユーティリティのネットワーク パネルに切り替えるには、N を押します。
    3. [USED-BY] 列で、仮想マシン アダプタを探し、その PORT-ID 値をメモします。
      [USED-BY] フィールドには、仮想マシン名と仮想マシン アダプタが接続しているポートが記載されています。
    4. 「Q」 を押して、 esxtop を終了します。
  2. ESXi Shell で、pktcap-uw --switchport port_ID を実行します。
    port_ID は、 esxtop ユーティリティが [PORT-ID] 列に表示する仮想マシン アダプタの ID です。
  3. 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 で受信するパケットの内容を取得します。

    1. 別のキャプチャ ポイントのパケットまたはゲスト OS と仮想スイッチの間のパスの方向を確認するには、--capture オプションを使用するか、--dir オプションおよび --stage オプション値を組み合わせます。
      pktcap-uw コマンド オプション 目的
      --capture VnicTx 仮想マシンからスイッチに向かうパケットを監視します。
      --capture VnicRx 仮想マシンに到達した時点のパケットを監視します。
      --dir 1 --stage 0 仮想スイッチを出た直後のパケットを監視します。
      --dir 1 仮想マシンに入る直前のパケットを監視します。
      --dir 0 --stage 1 仮想スイッチに入った直後のパケットを監視します。
    2. filter_options を使用して、ソースやターゲット アドレス、VLAN ID、VXLAN ID、レイヤー 3 プロトコル、および TCP ポートに応じてパケットをフィルタリングします。
      たとえば、IP アドレスが 192.168.25.113 のソース システムからパケットを監視するには、 --srcip 192.168.25.113 フィルタ オプションを使用します。
    3. オプションを使用すると、.pcap または .pcapng ファイルに各パケットの内容、または一定数のパケットの内容を保存できます。
      • .pcap ファイルにパケットを保存するには、--outfile オプションを使用します。
      • .pcapng ファイルにパケットを保存するには、--ng および --outfile オプションを使用します。

      Wireshark などのネットワーク アナライザ ツールでファイルを開くことができます。

      デフォルトでは、pktcap-uw ユーティリティを使用して、ESXi ファイル システムのルート フォルダにパケット ファイルを保存できます。

    4. --count オプションを使用すると、パケット数のみを監視できます。
  4. --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 ホストのファイルをコピーしてツールで開き、パケットの詳細を調査します。