目的
1台のESX上の1つの標準仮想スイッチ上に、複数のポートグループ(それぞれ別のVLANをアサインする体)を作成し、互いに疎通できるようにする。また、外のネットワークからもアクセスできるようにする。
以前NATのためにVyOSを導入したので、そのルーティング機能を使う。以下が公式のユーザーガイド。
https://wiki.vyos.net/wiki/User_Guide#Routing
ただ、今回やりたかったことに関しては、結局不要でした。
①外部ネットワーク間(クライアントPC - vCenter間)
②ポートグループ間(PSC - AD/DNS間)
③外部ネットワークに足を出しているVMと完全なインターナルのポートグループ間(vCenter - PSC間)
④外部ネットワーク - 内部ネットワーク間(クライアントPC - PSC間)
表現がうまくないですが、例えばvCenter,VyOSの外部IPアドレス(10.62.130.242,243)は会社等から払い出されるもの、すなわち特に何もしなくてもお互い疎通できるアドレスで、その裏にプライベートな環境を作ろうとしているイメージです。そのため①はVyOSなしでもできます。
設定
ESX環境セットアップ
ESX上にポートグループを3つ作成します。
- VM Network(外部ネットワークに相当, 10.62.130.0/24)
- VLAN0100(内部ネットワークその1, 192.168.4.0/23)
- VLAN0200(内部ネットワークその2, 192.168.20.0/24)
これらのポートグループ、もしくはその親になる仮想スイッチにて、Promiscuous(無差別)モードを有効にすることを忘れずに。
VMを構築し、各VM内で各々のNICにIPアドレス、D/G等を設定します。さらに、ESX上でそれぞれのNICを対応するポートグループにアサインします。
VM | NIC | IP address | Default Gateway |
---|---|---|---|
vCenter | NIC1 | 10.62.130.242 | 10.62.130.1 |
PSC | NIC1 | 192.168.5.1 | 192.168.5.254 |
AD | NIC1 | 192.168.20.1 | 192.168.20.254 |
この状態では、①の通信は可能ですが他はNGです。
VyOSインストール
インストールについてはこちらで実施済としています。
インターフェースの追加
OVFのデプロイでは、1つのNICしか作成されないので、VMの情報を編集してNICを必要なだけ追加する。
追加したインターフェースにIPアドレスを振る。
※最初に作成したインターフェースにはコンソールから設定する必要有。今回は割愛。
vyos@vyos:~$ configure
[edit]
vyos@vyos# set interfaces ethernet eth1 address '192.168.5.254/23'
[edit]
vyos@vyos# set interfaces ethernet eth1 description 'VLAN3902'
[edit]
vyos@vyos# set interfaces ethernet eth2 address '192.168.20.254/24'
[edit]
vyos@vyos# set interfaces ethernet eth2 description 'VLAN3914'
[edit]
vyos@vyos# commit
[edit]
vyos@vyos# save
Saving configuration to '/config/config.boot'...
Done
[edit]
vyos@vyos#
[edit]
直接接続されたネットワーク間に関しては、これだけでルーティングが学習される。
vyos@vyos# exit
exit
vyos@vyos:~$
vyos@vyos:~$
vyos@vyos:~$ show ip route
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
I - ISIS, B - BGP, > - selected route, * - FIB route
S>* 0.0.0.0/0 [1/0] via 10.62.130.1, eth0
C>* 10.62.130.0/24 is directly connected, eth0
C>* 127.0.0.0/8 is directly connected, lo
C>* 192.168.4.0/23 is directly connected, eth1
C>* 192.168.20.0/24 is directly connected, eth2
この時点で、②が可能になります。
vCenterにNIC2を追加
vCenterを以下のように変更します。
VM | NIC | IP address | Default Gateway |
---|---|---|---|
vCenter | NIC1 | 10.62.130.242 | N/A |
NIC2 | 192.168.5.2 | 192.168.5.254 | |
PSC | NIC1 | 192.168.5.1 | 192.168.5.254 |
AD | NIC1 | 192.168.20.1 | 192.168.20.254 |
この状態では、③はおろか、元々できていた①もNGとなります。
始めはVyOSにクライアントPC向けのStatic Routeがないためかと考え、以下のように追加しましたが結果は変わらず。
vyos@vyos:~$ configure
[edit]
vyos@vyos# set protocol static route 152.62.23.0/24 next-hop 10.62.130.1
[edit]
vyos@vyos#
[edit]
vyos@vyos# commit
[edit]
vyos@vyos# save
Saving configuration to '/config/config.boot'...
Done
[edit]
vyos@vyos# exit
exit
vyos@vyos:~$ show ip route
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
I - ISIS, B - BGP, > - selected route, * - FIB route
S>* 0.0.0.0/0 [1/0] via 10.62.130.1, eth0
C>* 10.62.130.0/24 is directly connected, eth0
C>* 127.0.0.0/8 is directly connected, lo
S>* 152.62.23.0/24 [1/0] via 10.62.130.1, eth0
C>* 192.168.4.0/23 is directly connected, eth1
C>* 192.168.20.0/24 is directly connected, eth2
基本的にNIC1に来た通信はNIC1から帰っていくため、上記ではNGでした。
このケースでは、vCenterだけはVM上でStatic Routeを切って対応しました。
C:\Windows\system32>route add -p 152.62.23.0 mask 255.255.255.0 10.62.130.1 if 13
OK
C:\Windows\system32>route print
===========================================================================
Interface List
13...00 0c 29 f2 0b 0a ......Intel(R) 82574L Gigabit Network Connection #2
12...00 0c 29 f2 0b 00 ......Intel(R) 82574L Gigabit Network Connection
1...........................Software Loopback Interface 1
14...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
15...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.5.254 192.168.5.200 266
10.62.130.0 255.255.255.0 On-link 10.62.130.242 266
152.62.23.0 255.255.255.0 10.62.130.1 10.62.130.242 11
192.168.4.0 255.255.254.0 On-link 192.168.5.200 266
===========================================================================
Persistent Routes:
Network Address Netmask Gateway Address Metric
0.0.0.0 0.0.0.0 192.168.5.254 Default
これで①②③がOKとなります。
SNATの設定
④に関してはSNAT, DNATを設定することで可能になります。こちらは以前カバーしたので割愛します。
まとめ
これである程度複雑なネットワークパターンでも実装できそうです。
ただ今回はVLANを実際には振っていないので、そこは次回以降の宿題とします。