設置したESXiにSSHでしか入れず、esxcliコマンドでvmkernel nicの設定したときの備忘録です。
環境
ESXi6.7u3
SSH/ESXi SHELLが有効な状態とします。
対象のスイッチはvSSです。vDSではありません。
やりたいこととやること
前提
サーバー1台。
ポート0とポート1にLANケーブルが刺さっている。
ポート0のLANには192.168.0.0/24が、ポート1のLANには192.168.1.0/24が設定されている。
ポート0の先にはVMkernel NIC:vmk0がいて、192.168.0.11/24が設定されている。
192.168.0.0/24のネットワークからESXiの管理ができる。
やりたいこと
192.168.1.0/24のネットワークからもWebで管理したい。
予想完成図
vSwitch1にポート1がアップリンクされていている。
vSwitch1にManage Network 1のポートグループがある。
Mangement Network 1にはvmk1が接続されている。
vmk1は192.168.1.11/24のIPを持ち、管理のサービスを持っている。
やること
1.vSwitch1を作る。
2.vSwitch1にポートグループ VM Network 1とManagement Network 1 を作る。
3.VMkernel NIC vmk1をポートグループ Management Network 1に作成する。
4.vmk1のIPを設定する。
5.vSwitch1に物理アダプタポート1のアップリンクを追加する。
設定中に学んだこと(vSS)
- 物理ポート
- アップリンクとしてvSSに追加する
- 1つの物理ポートは複数のvSSに割り当てられ(アップリンクでき)ない。
- 複数の物理ポートを使って(アップリンクを追加して)vSSへの接続を冗長化できる
- ポートグループ
- vSSに割り当てるもの
- vSSに複数設定できる
- 1つのポートグループは複数のvSSに割り当てられない
- VMkernel NIC
- 1つポートグループに割り当てるもの
- vSwitchに割り当てるものではない
- 1つのVMkernel NICを複数のポートグループに割り当てられない
- 管理やvMotionなどサービスを制限するのはここで行う
想像図
[ スイッチ ]
| |
[サーバーのNIC1] [サーバーのNIC2]
| |
| | <-物理線2本のリンクアグリゲーション
| |
[vSwitch (vSS)]
| |
| | <-2つのポートグループへの分岐
| |
(ポートグループ1) (ポートグループ2)
| |
(TCP/IP Stack) (TCP/IP Stack)
| |
[VMkernel NIC1] [VMkernel NIC2]
```
## 実際の設定
### 0.設定の確認
物理ポートの番号を確認します。
```
[root@esxi6.7u3:~] esxcli network nic list
Name PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description
------ ------------ ------ ------------ ----------- ----- ------ ----------------- ---- -------------------------------------------------------
vmnic0 0000:11:00.0 ntg3 Up Up 1000 Full XX:XX:XX:XX:XX:XX 1500 Broadcom Corporation NetXtreme BCM5719 Gigabit Ethernet
vmnic1 0000:11:00.1 ntg3 Up Up 1000 Full YY:YY:YY:YY:YY:YY 1500 Broadcom Corporation NetXtreme BCM5719 Gigabit Ethernet
```
物理ポートはvmnic0、vmnic1のようです。
現在ssh接続しているのはvmnic0、新しく設定を追加する対象はvmnic1となります。
### 1.vSwitchの作成
#### 確認
```
[root@esxi6.7u3:~] esxcli network vswitch standard list
vSwitch0
Name: vSwitch0
Class: cswitch
Num Ports: 5066
Used Ports: 4
Configured Ports: 128
MTU: 1500
CDP Status: listen
Beacon Enabled: false
Beacon Interval: 1
Beacon Threshold: 3
Beacon Required By:
Uplinks: vmnic0
Portgroups: VM Network, Management Network
```
前提通りです。
#### 追加
```
[root@esxi6.7u3:~] esxcli network vswitch standard add --vswitch-name=vSwitch1
```
成功すると何も出力しません。
確認します。
```
[root@esxi6.7u3:~] esxcli network vswitch standard list --vswitch-name=vSwitch1
vSwitch1
Name: vSwitch1
Class: cswitch
Num Ports: 5066
Used Ports: 1
Configured Ports: 128
MTU: 1500
CDP Status: listen
Beacon Enabled: false
Beacon Interval: 1
Beacon Threshold: 3
Beacon Required By:
Uplinks:
Portgroups:
```
vSwitch1が作成されました。
### 2.ポートグループの作成
#### ポートグループの追加
→ポートグループ "VM Network 1" の追加 (vSwitch0と同じようにするため)
→ポートグループ "Management Network 1" の追加
```
[root@esxi6.7u3:~] esxcli network vswitch standard portgroup add --portgroup-name="VM Network 1" --vswitch-name=vSwitch1
[root@esxi6.7u3:~] esxcli network vswitch standard portgroup add --portgroup-name="Management Network 1" --vswitch-name=vSwitch1
```
設定を確認します。
```
[root@esxi6.7u3:~] esxcli network vswitch standard list --vswitch-name=vSwitch1
vSwitch1
Name: vSwitch1
Class: cswitch
Num Ports: 5066
Used Ports: 1
Configured Ports: 128
MTU: 1500
CDP Status: listen
Beacon Enabled: false
Beacon Interval: 1
Beacon Threshold: 3
Beacon Required By:
Uplinks:
Portgroups: Management Network 1, VM Network 1
```
ポートグループがvSwitch1へ追加されています。
### 3.VMkernel NICの作成
→ポートグループ"Management Network 1"にVMkernel NIC "vmk1"を作成
```
[root@esxi6.7u3:~] esxcli network ip interface add --interface-name=vmk1 --portgroup-name="Management Network 1"
```
確認します。
```
[root@esxi6.7u3:~] esxcli network ip interface list
vmk1
Name: vmk1
MAC Address: 00:50:56:80:00:01
Enabled: true
Portset: vSwitch1
Portgroup: Management Network 1
Netstack Instance: defaultTcpipStack
VDS Name: N/A
VDS UUID: N/A
VDS Port: N/A
VDS Connection: -1
Opaque Network ID: N/A
Opaque Network Type: N/A
External ID: N/A
MTU: 1500
TSO MSS: 65535
RXDispQueue Size: 1
Port ID: 50331650
```
vmk1がvSwitch1のManagement Network 1ポートグループに作成されました。
### 4.vmk1のIPを設定
→VMKernel NIC "vmk1"に 192.168.1.11/24の固定IPを割り振る
```
[root@esxi6.7u3:~] esxcli network ip interface ipv4 set --interface-name=vmk1 --ipv4=192.168.1.11 --netmask=255.255.255.0 --type=static
```
IP設定を確認します。
```
[root@esxi6.7u3:~] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS
---- ------------ ------------- -------------- ------------ ----------- --------
vmk0 192.168.0.11 255.255.255.0 192.168.0.255 STATIC 192.168.0.1 false
vmk1 192.168.1.11 255.255.255.0 192.168.1.255 STATIC 0.0.0.0 false
```
入力した設定は反映されていますが、vmk1のGWが設定されていません。
GWを設定します。
```
[root@esxi6.7u3:~] esxcli network ip interface ipv4 set --gateway=192.168.1.1 --interface-name=vmk1
-I|--ipv4 or -g|--gateway can be specified only if type is specified
```
ipv4をセットするときは、すべてのオプションを指定する必要がありそうです。
オプションをすべて指定して確認します。
```
[root@esxi6.7u3:~] esxcli network ip interface ipv4 set --gateway=192.168.1.1 --interface-name=vmk1 --ipv4=192.168.1.11 --netmask=255.255.255.0 --type=static
[root@esxi6.7u3:~] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS
---- ------------ ------------- -------------- ------------ ------------ --------
vmk0 192.168.0.11 255.255.255.0 192.168.0.255 STATIC 192.168.0.1 false
vmk1 192.168.1.11 255.255.255.0 192.168.1.255 STATIC 192.168.1.1 false
```
GWも設定されました。
VMkernel NICをつけた際に自動でつくようです。
### 5.vSSのアップリンク追加
仮想スイッチと物理ポートをつなげます。
念の為、事前にvmk1を無効化しておきます。
```
[root@esxi6.7u3:~] esxcli network ip interface set --enabled=false --interface-name=vmk1
(中略)
vmk1
Name: vmk1
MAC Address: 00:50:56:80:00:01
Enabled: false
Portset: vSwitch1
Portgroup: Management Network 1
Netstack Instance: defaultTcpipStack
VDS Name: N/A
VDS UUID: N/A
VDS Port: N/A
VDS Connection: -1
Opaque Network ID: N/A
Opaque Network Type: N/A
External ID: N/A
MTU: 0
TSO MSS: 0
RXDispQueue Size: 0
Port ID: 0
```
VMkernel NICを無効化するとポートIDは0になるようです。
vmnic1とvSwitch1を接続します。
```
[root@esxi6.7u3:~] esxcli network vswitch standard uplink add --uplink-name=vmnic1 --vswitch-name=vSwitch1
```
uplinkはvswitch1の設定から確認します。
```
[root@esxi6.7u3:~] esxcli network vswitch standard list --vswitch-name=vSwitch1
vSwitch1
Name: vSwitch1
Class: cswitch
Num Ports: 5066
Used Ports: 3
Configured Ports: 128
MTU: 1500
CDP Status: listen
Beacon Enabled: false
Beacon Interval: 1
Beacon Threshold: 3
Beacon Required By:
Uplinks: vmnic1
Portgroups: Management Network 1, VM Network 1
```
vSwitch1を作成したときはUplinks:が空白でしたが、vmnic1になっています。
192.168.1.0/24のマシンから192.168.1.11にpingを打ちながらvmk1を有効にします。
```
[root@esxi6.7u3:~] esxcli network ip interface set --enabled=true --interface-name=vmk1
```
PINGが通ったら192.168.1.0/24のマシンからブラウザでログインできるか確認します。
参考資料
[Configuring vSwitch or vNetwork Distributed Switch from the command line in ESXi/ESX (1008127)](https://kb.vmware.com/articleview?docid=1008127)
## おまけ
192.168.1.0/24からもSSH接続できるように修正します。
どうやらWebブラウザでアクセスできるようになってもSSH接続はできないようです。
vmk1に「管理」のサービスをつけても、SSH接続できるようになりませんでした。
参考資料のサービスをリスタートするコマンドを打つと、エラーがかえってきます。
```
[root@esxi6.7u3:~] services.sh restart
Errors:
Invalid operation requested: This ruleset is required and connot be disabled
```
/var/log/vmkernel.logを見るとエラーは出ていなさそうですが、標準出力された瞬間だと「jumpstart」というようなところで、コマンド側にエラーが出力されていました。
/var/logのファイルを新しい順で並べると、「jumpstart-stdout.log」があり確認してみると、いろいろコマンドの実行が失敗しているようです。
メンテナンスモードが悪いかもしれないので、メンテナンスモードを抜けてみます。
```
[root@esxi6.7u3:~] vim-cmd hostsvc/maintenance_mode_exit
```
結果は同じでした。
エラーをみていきます。
```
Jumpstart failed to stop: vmsyslogd reason: Execution of command: /etc/init.d/vmsyslogd stop failed with status: 1
Jumpstart failed to stop: vmtoolsd reason: Execution of command: /etc/init.d/vmtoolsd stop failed with status: 1
Jumpstart failed to stop: memscrubd reason: Execution of command: /etc/init.d/memscrubd stop failed with status: 3
Jumpstart failed to stop: vvold reason: Execution of command: /etc/init.d/vvold stop failed with status: 3
Jumpstart failed to start: snmpd reason: Execution of command: /etc/init.d/snmpd start failed with status: 1
```
#### /etc/init.d/vmsyslogd
```
/etc/init.d/vmsyslogd restart
```
正常に再起動するようです。
#### /etc/init.d/vmtoolsd
```
[root@esxi6.7u3:~] /etc/init.d/vmtoolsd restart
vmtoolsd is not running
Errors:
Unable to complete Sysinfo operation. Please see the VMkernel log file for more details.: Sysinfo error: Not foundSee VMkernel log for details.
```
vmkernel.logに痕跡ありません。
#### /etc/init.d/memscrubd
```
[root@esxi6.7u3:~] /etc/init.d/memscrubd restart
memscrubd is not running
[root@esxi6.7u3:~] /etc/init.d/memscrubd start
The checkPages boot option is FALSE, hence memscrubd could not be started
```
vmkernel.logに痕跡ありません。
```
[root@esxi6.7u3:~] /etc/init.d/vvold restart
/etc/init.d/vvold restart, PID 2152121
Added 2152121 to /var/run/vmware/.vmware-vvol.lock-dir/vvold-lock-dir-pid (1)
watchdog-vvold: PID file /var/run/vmware/watchdog-vvold.PID does not exist
watchdog-vvold: Unable to terminate watchdog: No running watchdog process for vvold
sh: you need to specify whom to kill
Successfully cleared vvold memory reservation
PID 2152121 removed /var/run/vmware/vvold-done-calling-start
Removed /var/run/vmware/.vmware-vvol.lock-dir
Added 2152121 to /var/run/vmware/.vmware-vvol.lock-dir/vvold-lock-dir-pid (1)
vvold max reserve memory set to 200
WaitVvoldToComeUp /var/run/vmware/.vmware-vvol.started created
vvold stopped after start!
/var/run/vmware/.vmware-vvol.started is not created
Successfully cleared vvold memory reservation
PID 2152121 Created /var/run/vmware/vvold-done-calling-start
Removed /var/run/vmware/.vmware-vvol.lock-dir
[root@esxi6.7u3:~] echo $?
0
```
いろいろ出てきましたがこれは問題なさそうです。
#### /etc/init.d/snmpd
```
[root@esxi6.7u3:~] /etc/init.d/snmpd restart
root: snmpd: Administrative restart requested but agent was not enabled, nothing done.
[root@esxi6.7u3:~] echo $?
0
```
これも問題なさそうです。
とりあえずリブートします。
sshで新しく追加した側から入れず、services.shもエラーがでます。
#### ライセンス?
無償版ライセンスを適用してみます。
Webでアクセスしてもログインの画面にならないのでhostdを再起動します。
```
[root@esxi6.7u3:~] /etc/init.d/hostd restart
```
Webでアクセスできるようになりました。無償版のライセンスを割り当てます。
割り当ててもダメなようです。
### カスタムTCP/IP
ESXiの設定を見ると、TCP/IPスタックという項目があります。
デフォルト設定のみで、こちらのDGWが192.168.0.1となっています。
Webからのvmk1へのアクセスは経路的に問題ないはずですが、念の為、192.168.1.0/24用のものを作って変えてみます。
カスタムTCP/IPスタックの作成
https://docs.vmware.com/jp/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-660423B1-3D35-4F85-ADE5-FE1D6BF015CF.html
```
[root@esxi6.7u3:~] esxcli network ip netstack add -N="DGW_192.168.1.1"
[root@esxi6.7u3:~] esxcli network ip netstack list
defaultTcpipStack
Key: defaultTcpipStack
Name: defaultTcpipStack
State: 4660
DGW_192.168.1.1
Key: DGW_192.168.1.1
Name: DGW_192.168.1.1
State: 4660
```
netstackのコマンドでルーティングを追加…と思ってsetをしようとしましたが、どうもesxcli network ip netstack コマンドで作業するようではないようです。
```
esxcli network ip netstack set
Error: Missing required parameter -N|--netstack
Usage: esxcli network ip netstack set [cmd options]
Description:
set Configure settings for a given Netstack Instance.
Cmd options:
-c|--ccalgo=<str> The TCP Congestion Contol Algorithm for this netstack instance (not applied to existing connections).:
cubic: Set cubic as the algorithm
newreno: Set newreno as the algorithm
-e|--enable=<bool> Enable the netstack instance (create in kernel)
-i|--ipv6enabled=<bool>
To enable IPv6 for this netstack instance (aplied only during netstack creation).
-m|--maxconn=<long> The maximum number of connections for this netstack instance (applied only during netstack creation).
-n|--name=<str> The name for this netstack instance.
-N|--netstack=<str> The network stack instance. This name must be an interface listed in the netstack list command. (required)
```
調べていくとTCP/IPスタックのルートはipv4から適用する作業となることがわかりました。
ipv4からネットスタックのルーティングを追加してみます。
```
[root@esxi6.7u3:~] esxcli network ip route ipv4 add --gateway=192.168.1.1 --netstack=DGW_192.168.1.1 --network=192.168.1.0/24
Unable to Set: Sysinfo error: Network unreachableSee VMkernel log for details.
```
エラーが出てしまいました。
先にvmk1をdefaultstackからDGW_192.168.1.1に変更する必要がありそうです。
vmk1の設定を変更するのはできなさそうなので、一度vmk1を削除してから、netstackを指定して追加します。
esxcli network ip interface addで調べても出てきませんでしたがvmwareにオプションが載っていました。
```
[root@esxi6.7u3:~] esxcli network ip interface remove --interface-name=vmk1
[root@esxi6.7u3:~] esxcli network ip interface add --interface-name=vmk1 --portgroup-name="Management Network 1" --netstack=DGW_192.168.1.1
[root@esxi6.7u3:~] esxcli network ip interface list --netstack=DGW_192.168.1.1
vmk1
Name: vmk1 MAC Address: 00:50:56:80:0:01
Enabled: true
Portset: vSwitch1
Portgroup: Management Network 1
Netstack Instance: DGW_192.168.1.1
VDS Name: N/A
VDS UUID: N/A
VDS Port: N/A
VDS Connection: -1
Opaque Network ID: N/A
Opaque Network Type: N/A
External ID: N/A
MTU: 1500
TSO MSS: 65535
RXDispQueue Size: 1
Port ID: 50331655
```
Netstack が指定したものに変わっていました。
IPアドレスをつけていきます。
```
[root@esxi6.7u3:~] esxcli network ip interface ipv4 set --gateway=192.168.1.1 --interface-name=vmk1 --ipv4=192.168.1.11 --netmask=255.255.255.0 --type=static
[root@esxi6.7u3:~] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS
---- ------------ ------------- -------------- ------------ ------------ --------
vmk0 192.168.0.11 255.255.255.0 192.168.0.255 STATIC 192.168.0.1 false
vmk1 192.168.1.11 255.255.255.0 192.168.1.255 STATIC 192.168.1.1 false
```
追加されてます。
しかしWebからつながりません。
自分自身からも192.168.1.11にpingが通りません。
```
[root@esxi6.7u3:~] esxcli network ip route ipv4 list
Network Netmask Gateway Interface Source
----------- ------------- ----------- --------- ------
default 0.0.0.0 192.168.0.1 vmk0 MANUAL
192.168.0.1 255.255.255.0 0.0.0.0 vmk0 MANUAL
```
ipv4のルート設定がないようです。
カスタムのnetstackだとルートが追加されないようです。
```
[root@esxi6.7u3:~] esxcli network ip route ipv4 add --gateway=192.168.1.1 --netstack=DGW_192.168.1.1 --network=192.168.1.0/24
Duplicate route to network 192.168.1.0/24 found. Please delete the old route first.
```
Duplicateしているそうです。
それっぽい設定を削除してみます。
```
[root@esxi6.7u3:~] esxcli network ip route ipv4 remove --gateway=192.168.1.1 --network=192.168.1.0/24
Unable to find route 192.168.1.1/24 with gateway 192.168.1.1
```
おかしい…
ルートはないのに存在しているといわれるし、削除しても無いようです。
vmk1を削除した状態で、ルートを追加してみます。
```
[root@esxi6.7u3:~] esxcli network ip interface remove --interface-name=vmk1
[root@esxi6.7u3:~] esxcli network ip route ipv4 add --gateway=192.168.1.1 --netstack=DGW_192.168.1.1 --network=192.168.1.0/24
Unable to route to gateway address 192.168.1.1 no route to that subnet exists
```
無いと言われます。
CLIでやるのは諦めてWebから設定します。以下の条件に戻します。
```
[root@esxi6.7u3:~] esxcli network ip interface remove --interface-name=vmk1
[root@esxi6.7u3:~] esxcli network ip interface add --interface-name=vmk1 --portgroup-name="Management Network 1"
[root@esxi6.7u3:~] esxcli network ip interface ipv4 set --gateway=192.168.1.1 --interface-name=vmk1 --ipv4=192.168.1.11 --netmask=255
.255.224.0 --type=static
[root@esxi6.7u3:~] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS
---- ------------ ------------- -------------- ------------ ------------ --------
vmk0 192.168.0.11 255.255.255.0 192.168.0.255 STATIC 192.168.0.1 false
vmk1 192.168.1.11 255.255.255.0 192.168.1.255 STATIC 192.168.1.1 false
```
Webのネットワークの設定から、VMkernel NICを選択し、TCP/IP スタックをDGW_192.168.1.1に変更しようとしましたが、グレーアウトしていて変更できません。
vmk2をnetstack DGW_192.168.1.1にして、192.168.1.12のIPで作成しようとしたらエラーになりました。
vmkernel.logには「 Tcpip_Vmk: 124: rn_delete: return NULL after checking rn_dupedkey 」のようなエラーが出ています。
ですが、TCP/IPスタックのリストを見るとvmk2が作成されています。
```
[root@esxi6.7u3:~] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS
---- ------------ ------------- -------------- ------------ ------------ --------
vmk0 192.168.0.11 255.255.255.0 192.168.0.255 STATIC 192.168.0.1 false
vmk1 192.168.1.11 255.255.255.0 192.168.1.255 STATIC 192.168.1.1 false
vmk2 192.168.1.12 255.255.255.0 192.168.1.255 STATIC 0.0.0.0 false
[root@esxi6.7u3:~] esxcli network ip route ipv4 list
Network Netmask Gateway Interface Source
----------- ------------- ----------- --------- ------
default 0.0.0.0 192.168.0.1 vmk0 MANUAL
192.168.0.1 255.255.255.0 0.0.0.0 vmk0 MANUAL
```
ルートは変わりないようですが、vmk2はたしかにあります。
vmk2のGatewayを修正します。
```
[root@esxi6.7u3:~] esxcli network ip interface ipv4 set --gateway=192.168.1.1 --interface-name=vmk2 --ipv4=192.168.1.12 --netmask=255.255.255.0 --type=static
[root@esxi6.7u3:~] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS
---- ------------ ------------- -------------- ------------ ------------ --------
vmk0 192.168.0.11 255.255.255.0 192.168.0.255 STATIC 192.168.0.1 false
vmk1 192.168.1.11 255.255.255.0 192.168.1.255 STATIC 192.168.1.1 false
vmk2 192.168.1.12 255.255.255.0 192.168.1.255 STATIC 192.168.1.1 false
```
Gatewayが変わりました。しかしまだPINGは自分自身からも通りません。vmk1にも通りませんがWebからはアクセスできています。
WebからTCP/IPスタックを見ると、DGW_192.168.1.1のルーティングはvmk2対象でゲートウェイが0.0.0.0となっています。
ここでWebからIPv4ゲートウェイを192.168.1.1に修正してみます。
が、ルーティングテーブルは修正されませんでした。
元に戻します。
```
[root@esxi6.7u3:~] esxcli network ip interface remove --interface-name=vmk2
[root@esxi6.7u3:~] esxcli network ip netstack remove --netstack="DGW_192.168.1.1"
```
もう少し原因を探っておきます。
ESXiのFirewallを切ってみます。
```
[root@esxi6.7u3:~] esxcli network firewall set --enabled=false
```
タイムアウトはかわらないのでFWのせいではないようです。
下記にはダイレクトコンソールから変更するとあるので、CLIでは変更できないのかもしれません。
[管理ネットワーク用ネットワーク アダプタの選択(docs.vmware.com)](https://docs.vmware.com/jp/VMware-vSphere/6.7/com.vmware.esxi.install.doc/GUID-1638AAC4-63A1-42F1-8823-E388EE33BF53.html)
ダイレクトコンソールからは物理NICを指定していた気がします。
Web上からは物理ではなくVMkernel NICを対象に監理ネットワークの設定をしているので、そのあたりの知識と、TCP/IPスタックを利用する機会があれば解決するでしょう。
参考資料
[esxcli network Commands(vdc-repo.vmware.com)](https://vdc-repo.vmware.com/vmwb-repository/dcr-public/26334f54-ee84-47c2-b2f3-901f51cbc98a/d3f55719-4d3f-47c4-a3c5-fe9c7e5a67f6/doc/esxcli_network.html)