Nested ESXiを使用するには、「MACアドレス変更」「偽装転送」「無差別モード(プロミスキャスモード : promiscuous mode)」を許可しセキュリティを緩和する必要があります。これらセキュリティ機能は、標準仮想スイッチ(VSS)や分散仮想スイッチ(VDS)の各ポート配下に1つのMACアドレスしか存在しない事を前提としたセキュリティ機能ですが、仮想ルータやNested ESXiを使用する場合は各ポート配下に複数のMACアドレスが存在するため、設定変更が必要となります。
デフォルトの挙動確認
「Nested ESXiの構築方法」に基づき、Nested ESXiを構築します。Nested ESXiの内部にcentos80(192.168.1.80)というホストを作成します。すると、このホストにはpingが到達しません。
centos221(192.168.1.221)からpingを実行した結果は以下の通りです。
[root@centos221 ~]# ping 192.168.1.142 -c 3 PING 192.168.1.142 (192.168.1.142) 56(84) bytes of data. 64 bytes from 192.168.1.142: icmp_seq=1 ttl=64 time=2.50 ms 64 bytes from 192.168.1.142: icmp_seq=2 ttl=64 time=1.03 ms 64 bytes from 192.168.1.142: icmp_seq=3 ttl=64 time=0.869 ms --- 192.168.1.142 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 6ms rtt min/avg/max/mdev = 0.869/1.466/2.496/0.731 ms [root@centos221 ~]# [root@centos221 ~]# [root@centos221 ~]# ping 192.168.1.80 -c 3 PING 192.168.1.80 (192.168.1.80) 56(84) bytes of data. --- 192.168.1.80 ping statistics --- 3 packets transmitted, 0 received, 100% packet loss, time 83ms [root@centos221 ~]#
ESXiの気持ちになって考えれば、vSwitchの各ポート配下は仮想マシンしか居ないはずなのでMACアドレスは1つしかないし、MACアドレスが頻繁に変わるのは「MACアドレスが偽装される」ようなセキュアではない状態と考えます。この考え方は「vSphere 標準スイッチのセキュリティ強化」を参照ください。
ですが、このセキュリティの考え方は、仮想マシンが複数のMACアドレスを持つような仮想ルータやNested ESXiでは当てはまりません。このような場合はセキュリティ設定「MACアドレス変更」「偽装転送」「無差別モード」を承諾する必要があります。
セキュリティの緩和設定
セキュリティの緩和方法は色々な設定方法があります。以下3つを紹介します。
標準仮想スイッチ – ポートグループ単位の設定
[root@centos221 ~]# ping 192.168.1.80 -c 3 PING 192.168.1.80 (192.168.1.80) 56(84) bytes of data. 64 bytes from 192.168.1.80: icmp_seq=1 ttl=64 time=2.72 ms 64 bytes from 192.168.1.80: icmp_seq=2 ttl=64 time=0.899 ms 64 bytes from 192.168.1.80: icmp_seq=3 ttl=64 time=0.992 ms --- 192.168.1.80 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 12ms rtt min/avg/max/mdev = 0.899/1.538/2.724/0.839 ms [root@centos221 ~]#
標準仮想スイッチ – スイッチ単位の設定
[root@centos221 ~]# ping 192.168.1.80 -c 3 PING 192.168.1.80 (192.168.1.80) 56(84) bytes of data. 64 bytes from 192.168.1.80: icmp_seq=1 ttl=64 time=2.72 ms 64 bytes from 192.168.1.80: icmp_seq=2 ttl=64 time=0.899 ms 64 bytes from 192.168.1.80: icmp_seq=3 ttl=64 time=0.992 ms --- 192.168.1.80 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 12ms rtt min/avg/max/mdev = 0.899/1.538/2.724/0.839 ms [root@centos221 ~]#
分散仮想スイッチ – スイッチ単位の設定
[root@centos221 ~]# ping 192.168.1.80 -c 3 PING 192.168.1.80 (192.168.1.80) 56(84) bytes of data. 64 bytes from 192.168.1.80: icmp_seq=1 ttl=64 time=2.72 ms 64 bytes from 192.168.1.80: icmp_seq=2 ttl=64 time=0.899 ms 64 bytes from 192.168.1.80: icmp_seq=3 ttl=64 time=0.992 ms --- 192.168.1.80 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 12ms rtt min/avg/max/mdev = 0.899/1.538/2.724/0.839 ms [root@centos221 ~]#