SR-IOV 対応仮想マシンのゲスト OS で MAC アドレスを変更すると、仮想マシンの接続が切断されます。

問題

仮想マシンのネットワーク アダプタを SR-IOV 仮想機能 (VF) に接続するときに、仮想マシンのパススルー ネットワーク アダプタを作成します。ゲスト OS の (VF) ドライバでパススルー ネットワーク アダプタの MAC アドレスを変更すると、変更には成功したが仮想マシン ネットワーク アダプタの接続が切断されたということがゲスト OS に表示されます。ゲスト OS には新しい MAC アドレスが有効になっていることが示されますが、/var/log/vmkernel.log ファイルのログ メッセージには操作が失敗したことが示されます。

Requested mac address change to new MAC address on port VM NIC port number, disallowed by vswitch policy.

条件は: 「

  • new MAC address は、ゲスト OS の MAC アドレスです。

  • VM NIC port number は、仮想マシン ネットワーク アダプタの 16 進数形式のポート番号です。

パススルー ネットワーク アダプタが接続されるポート グループのデフォルトのセキュリティ ポリシーでは、ゲスト OS の MAC アドレスの変更は許可されていません。そのため、ゲスト OS のネットワーク インターフェイスでは、IP アドレスを取得できず接続が切断されます。

手順

パススルー ネットワーク アダプタで有効な MAC アドレスを再取得できるようにゲスト OS でインターフェイスをリセットします。DHCP を使用してアドレスを割り当てるようにインターフェイスが構成されている場合は、インターフェイスで IP アドレスが自動的に取得されます。

たとえば、Linux 仮想マシンで ifconfig コンソール コマンドを実行します。

ifconfig ethX down
ifconfig ethX up

ここで、ethXX は、ゲスト OS の仮想マシン ネットワーク アダプタのシーケンス番号を表します。