目的
VMware ESXi インストール済みのサーバーをプロビジョニングしたときの初期設定を確認し、その後、使いやすいように設定変更をします。
初期状態の確認
ルーティング情報の確認
vmk0 経由でプライベート通信が可能になっており、デフォルトゲートウェイも vmk0 に設定されています。
[root@vmware01:~] esxcfg-route -l
VMkernel Routes:
Network Netmask Gateway Interface
10.180.29.0 255.255.255.192 Local Subnet vmk0
default 0.0.0.0 10.180.29.1 vmk0
VMkernel情報の確認
vmk0 が1つあり、プライベート側からのマネジメント用に設定されています。
[root@vmware01:~] esxcfg-vmknic -l
Interface Port Group/DVPort/Opaque Network IP Family IP Address Netmask Broadcast MAC Address MTU TSO MSS Enabled Type NetStack
vmk0 Management Network IPv4 10.180.29.34 255.255.255.192 10.180.29.63 00:50:56:62:0c:af 1500 65535 true STATIC defaultTcpipStack
vmk0 Management Network IPv6 fe80::250:56ff:fe62:caf 64 00:50:56:62:0c:af 1500 65535 true STATIC, PREFERRED defaultTcpipStack
標準仮想スイッチ情報の確認
「vSwitch0」という標準仮想スイッチに、物理NIC「vmnic0」が割り当てられています。
ポートグループは、「Management Network」のみで、通常デフォルトで入っている「VM Network」が存在していません。
「VM Network」が存在しないことによって、OVFテンプレートのデプロイ時にエラーが起こるなどの弊害があるため、あとでCLIから追加しておきます。
[root@vmware01:~] esxcli network vswitch standard list
vSwitch0
Name: vSwitch0
Class: etherswitch
Num Ports: 1536
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: Management Network
vmnic(物理NIC)の確認
vmnic0 がプライベート側の物理NIC、vmnic1がパブリック側の物理NICとして認識されています。
[root@vmware01:~] esxcli network nic list
Name PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description
------ ------------ ------ ------------ ----------- ----- ------ ----------------- ---- -------------------------------------
vmnic0 0000:04:00.0 ixgbe Up Up 1000 Full 0c:c4:7a:bb:2d:00 1500 Intel(R) Ethernet Controller X540-AT2
vmnic1 0000:04:00.1 ixgbe Up Up 1000 Full 0c:c4:7a:bb:2d:01 1500 Intel(R) Ethernet Controller X540-AT2
vmnic2 0000:05:00.0 ixgbe Up Down 0 Full 0c:c4:7a:bb:2d:02 1500 Intel(R) Ethernet Controller X540-AT2
vmnic3 0000:05:00.1 ixgbe Up Down 0 Full 0c:c4:7a:bb:2d:03 1500 Intel(R) Ethernet Controller X540-AT2
vmnic4 0000:06:00.0 ixgbe Up Down 0 Half 0c:c4:7a:bb:2d:04 1500 Intel(R) Ethernet Controller X540-AT2
vmnic5 0000:06:00.1 ixgbe Up Down 0 Half 0c:c4:7a:bb:2d:05 1500 Intel(R) Ethernet Controller X540-AT2
全体でやること
初期構成に加えて、以下の図のような構成にしていきます。
SSH で ESXi サーバーにログインして、設定していきます。

設定作業
事前情報の定義
設定対象となるESXi のベアメタルサーバーの情報を最初に定義します。
PrivateGW=10.180.29.1
PublicIP=169.51.69.228
PublicGW=169.51.69.225
ルーティング情報の追加
定義した情報に従って設定していきます。
esxcfg-route -a 10.0.0.0/8 $PrivateGW
esxcfg-route -a 161.26.0.0/16 $PrivateGW
デフォルトゲートウェイの削除
パブリック側にデフォルトゲートウェイを設定するため、プライベート側の設定は削除します。
esxcfg-route -d 0.0.0.0/0 $PrivateGW
標準仮想スイッチの作成
パブリック側に標準仮想スイッチを作成します。
esxcli network vswitch standard add -v PublicSwitch
ポートグループの作成
プライベート側に「VM Network」を作成し、パブリック側にポートグループを作成します。
esxcli network vswitch standard portgroup add --portgroup-name="VM Network" --vswitch-name=vSwitch0
esxcli network vswitch standard portgroup add -p PublicPG -v PublicSwitch
esxcli network vswitch standard portgroup add -p PublicVMkernel -v PublicSwitch
標準仮想スイッチにアップリンク(物理NIC)割り当て
先ほど作成した標準仮想スイッチにパブリックの物理NICを割り当てます。
esxcli network vswitch standard uplink add -u vmnic1 -v PublicSwitch
Public VMkernelの追加
vmk1 として、パブリック用のvmkernelを追加します。
esxcfg-vmknic -a -i $PublicIP -n 255.255.255.248 -p PublicVMkernel
デフォルトゲートウェイの追加
パブリック側のゲートウェイをデフォルトゲートウェイとして設定します。
esxcfg-route -a 0.0.0.0/0 $PublicGW
パブリックNICの有効化、無効化
以下のコマンドで操作可能です。
esxcli network nic up -n vmnic1
esxcli network nic down -n vmnic1
MTUの設定
プライベート側のジャンボフレームを有効化します。
esxcli network vswitch standard set -m 9000 -v vSwitch0
esxcli network ip interface set -m 9000 -i vmk0
動作確認
ESXi サーバーから「google.com」にpingを打つと応答があることが確認できました。
[root@vmware01:~] ping google.com
PING google.com (216.58.218.238): 56 data bytes
64 bytes from 216.58.218.238: icmp_seq=0 ttl=51 time=90.850 ms
64 bytes from 216.58.218.238: icmp_seq=1 ttl=51 time=90.841 ms
64 bytes from 216.58.218.238: icmp_seq=2 ttl=51 time=90.869 ms
--- google.com ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 90.841/90.853/90.869 ms
設定後の状態
ルーティング情報
[root@vmware01:~] esxcfg-route -l
VMkernel Routes:
Network Netmask Gateway Interface
169.51.69.224 255.255.255.248 Local Subnet vmk1
10.180.29.0 255.255.255.192 Local Subnet vmk0
161.26.0.0 255.255.0.0 10.180.29.1 vmk0
10.0.0.0 255.0.0.0 10.180.29.1 vmk0
default 0.0.0.0 169.51.69.225 vmk1
VMkernel情報
[root@vmware01:~] esxcfg-vmknic -l
Interface Port Group/DVPort/Opaque Network IP Family IP Address Netmask Broadcast MAC Address MTU TSO MSS Enabled Type NetStack
vmk1 PublicVMkernel IPv4 169.51.69.228 255.255.255.248 169.51.69.231 00:50:56:6e:7b:74 1500 65535 true STATIC defaultTcpipStack
vmk1 PublicVMkernel IPv6 fe80::250:56ff:fe6e:7b74 64 00:50:56:6e:7b:74 1500 65535 true STATIC, PREFERRED defaultTcpipStack
vmk0 Management Network IPv4 10.180.29.34 255.255.255.192 10.180.29.63 00:50:56:62:0c:af 9000 65535 true STATIC defaultTcpipStack
vmk0 Management Network IPv6 fe80::250:56ff:fe62:caf 64 00:50:56:62:0c:af 9000 65535 true STATIC, PREFERRED defaultTcpipStack
標準仮想スイッチ情報
[root@vmware01:~] esxcli network vswitch standard list
vSwitch0
Name: vSwitch0
Class: etherswitch
Num Ports: 1536
Used Ports: 4
Configured Ports: 128
MTU: 9000
CDP Status: listen
Beacon Enabled: false
Beacon Interval: 1
Beacon Threshold: 3
Beacon Required By:
Uplinks: vmnic0
Portgroups: VM Network, Management Network
PublicSwitch
Name: PublicSwitch
Class: etherswitch
Num Ports: 1536
Used Ports: 4
Configured Ports: 128
MTU: 1500
CDP Status: listen
Beacon Enabled: false
Beacon Interval: 1
Beacon Threshold: 3
Beacon Required By:
Uplinks: vmnic1
Portgroups: PublicPG, PublicVMkernel