1. はじめに
以前、routedタイプのネットワークを作成した際の、Distributed Routingの説明にて、以下のような記述を書きました。
- デフォルトで有効になっている。
- UI上のヒントの説明は
- Non distributed routing needs to be enabled on the Edge Gateway. This would allow the disabling of distributed routing so that all VM traffic goes through the service router.- NSXを知っている人ならご存知かと思うが、実際はT1ルーターはDR(Distributed Router)とSR(Service Router)から構成されている。あるVDC内に複数のrouted networkが存在した場合、そのrouted network間の通信はDRを通る。そのため、後述するEdge Firewall(SRのFirewall)ではこの通信を制御することはできない。その場合は、Distributed Firewallを有効して通信制御するのも1つの方法だが、別の方法としてこのDistributed Routingを無効にすれば、DRを通らないのでEdge Firewallでrouted network間の通信を制御することができる。
つまり、Distributed Routingが有効の時には、SRに辿り着く前に、DRでルーティングされてしまいます。本稿では、この通りに動作していることを確認します。
過去の記事はこちら。
- 01. IBM Cloud: VMware as a Service(VMWaaS)の概要
- 02. IBM Cloud: VMware as a Service(VMWaaS) - VDCの注文
- 03. IBM Cloud: VMware as a Service(VMWaaS) - VDCの追加注文
- 04. IBM Cloud: VMware as a Service(VMWaaS) - 外部接続のためのネットワークとNAT/Firewallを構成する
- 05. IBM Cloud: VMware as a Service(VMWaaS) - RHELをプロビジョニングして疎通確認を行う
- 06. IBM Cloud: VMware as a Service(VMWaaS) - 検証: IBM Cloud private networkへの通信におけるSNATの必要性
- 07. IBM Cloud: VMware as a Service(VMWaaS) - 検証: isolated networkとの通信
- 08. IBM Cloud: VMware as a Service(VMWaaS) - 検証: routed network間の通信
- 09. IBM Cloud: VMware as a Service(VMWaaS) - Data Center Groupの構成
- 10. IBM Cloud: VMware as a Service(VMWaaS) - Distributed Firewallの構成
- 11. IBM Cloud: VMware as a Service(VMWaaS) - VDC間のVM/vApp Migration
- 12. IBM Cloud: VMware as a Service(VMWaaS) - VMWaaS APIの実行例
- 13. IBM Cloud: VMware as a Service(VMWaaS) - VMware Cloud Director OpenAPIの実行例
- 14. IBM Cloud: VMware as a Service(VMWaaS) - 検証: VIP切り替えによる高可用性構成の確認(手動切替)
- 15. IBM Cloud: VMware as a Service(VMWaaS) - 検証: VIP切り替えによる高可用性構成の確認(keepalived)
- 16. IBM Cloud: VMware as a Service(VMWaaS) - Transit Gateway接続
- 17. IBM Cloud: VMware as a Service(VMWaaS) - Veeam Backup and Replication service連携
2. ネットワーク構成
今回はroutedタイプのnetwork間の通信をしたいので、routed networkが2つ必要になります(作成手順は省略)。FirewallやNAT構成は過去の記事とは変更していませんが、念の為再掲しておきます。
- Network
Name | Scope | Routed or Isolated | Distributed Routing | Gateway CIDR |
---|---|---|---|---|
nw1-routed-vdc01 | mt-vdc01 | Routed | Enabled | 192.168.100.1/24 |
nw2-routed-vdc01 | mt-vdc01 | Routed | Enabled | 192.168.101.1/24 |
- IP Sets
IP Set name | Address range |
---|---|
IBM Cloud Private Network | 161.26.0.0/16, 166.8.0.0/14 |
syasuda-homeaddress | 111.xx.xx.xx/24 |
- Edge Firewall
rule | firewall rule name | protocol | source (IP Set等で指定) |
destination (IP Set等で指定) |
action |
---|---|---|---|---|---|
1 | IBM Cloud Private Network | - | ANY | IBM Cloud Private Network | Allow |
2 | allow-from-syasuda | SSH | syasuda-homeaddress | ANY | Allow |
default | default_rule | - | ANY | ANY | Drop |
- NAT
NAT name | NAT Type | External IP (VDC外部との通信に利用するPublic IP) |
Internal IP (NATルールが適用されるVDC内のネットワーク) |
---|---|---|---|
snat-to-external | SNAT | 150.xx.xx.xx | 0.0.0.0/0 |
dnat-to-jumpserver01 | DNAT | 150.xx.xx.yy | 192.168.100.2 (この後、プロビジョニングするサーバーに割り当てる予定のIPアドレス) |
3. Distributed Routingが有効な時の疎通確認
Jump Serverはnw1-routed-vdc01
に存在するので、新しいサーバーをnw2-routed-vdc02
に配置します。
Edge GatewayのFirewall設定では、以下のようになっているため、もしrouted network間の通信がEdge Firewallを経由するのであれば、その通信はDropされるはずです。
Jump Serverからpingを打ってみると、、、通信できてしまいます。つまり、routed network間の通信ではこのEdge GatewayのFirewall機能は働いていないことがわかります。
[root@jumpserver ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:14:01:a9 brd ff:ff:ff:ff:ff:ff
altname enp11s0
inet 192.168.100.2/24 brd 192.168.100.255 scope global noprefixroute ens192
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:fe14:1a9/64 scope link
valid_lft forever preferred_lft forever
[root@jumpserver ~]# ping 192.168.101.2
PING 192.168.101.2 (192.168.101.2) 56(84) bytes of data.
64 bytes from 192.168.101.2: icmp_seq=1 ttl=63 time=0.311 ms
64 bytes from 192.168.101.2: icmp_seq=2 ttl=63 time=0.246 ms
64 bytes from 192.168.101.2: icmp_seq=3 ttl=63 time=0.237 ms
64 bytes from 192.168.101.2: icmp_seq=4 ttl=63 time=0.209 ms
^C
--- 192.168.101.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3109ms
rtt min/avg/max/mdev = 0.209/0.250/0.311/0.037 ms
4. Distributed Routingを無効にした時の疎通確認
4-1. 「Distributed Routingを無効にする機能」を有効にする
- Edge Gateway設定のGeneralに移動。
Allow Non-Distributed Routing
がNo
になっている。EDITを押下。
-
Allow Non-Distributed Routing
を有効にしてSAVE
。 -
Allow Non-Distributed Routing
がYes
になった。
4-2. routed networkの"Distributed Routing"を無効にする
- Networkを以下のように構成する。
name | VDC | Routed or Isolated | Distributed Routing | Gateway CIDR |
---|---|---|---|---|
nw1-routed-vdc01 | mt-vdc01 | Routed | Disabled | 192.168.100.1/24 |
nw2-routed-vdc01 | mt-vdc01 | Routed | Enabled | 192.168.101.1/24 |
変更方法
- 該当のNetworkに移動。
Distributed Routing
がActive
になっている。EDIT
を押下。 -
Distributed Routing
を無効化 -
Distributed Routing
がInactive
になった。
4-3. 疎通確認
以下のように、外部には通信できますが、routed network間で疎通ができなくなりました。
[root@jumpserver ~]# ping 161.26.0.10
PING 161.26.0.10 (161.26.0.10) 56(84) bytes of data.
64 bytes from 161.26.0.10: icmp_seq=1 ttl=249 time=3.91 ms
64 bytes from 161.26.0.10: icmp_seq=2 ttl=249 time=0.872 ms
64 bytes from 161.26.0.10: icmp_seq=3 ttl=249 time=0.828 ms
64 bytes from 161.26.0.10: icmp_seq=4 ttl=249 time=0.816 ms
^C
--- 161.26.0.10 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3061ms
rtt min/avg/max/mdev = 0.816/1.606/3.908/1.329 ms
[root@jumpserver ~]# ping 192.168.101.2
PING 192.168.101.2 (192.168.101.2) 56(84) bytes of data.
^C
--- 192.168.101.2 ping statistics ---
10 packets transmitted, 0 received, 100% packet loss, time 9207ms
これは、以下の構成図のように、routed network間がSRを経由するようになり、Edge Firewallを経由するようになったからです。