その1とその2では自宅とAzure間で単純にS2S VPNを構成した。
今回はBGPを利用してAzureに構成した2つのVnetと自宅を接続してみる。
Azure 側の設定
以下公式ドキュメントを参考に実施。
VPNGWのSKUはBasic以外のものを選択し、ASNには接続先とかぶらないものを指定。
LNGWでは対向となる自宅側の情報を設定。NVDNSで取得したFQDNを利用した。
注意点としてはアドレス空間を/32で指定すること。
接続リソースでもBGPを有効化。
また今回はAzure内のVNet間でもBGPを有効化したVPNを構成するのでその接続リソースも作成。
もちろんVNet間の接続もBGPを有効化しておく。
RTX830 側の設定
VPN自体の設定は前回と同様。
Azure側との接続でBGPを有効にしたいので、ヤマハのドキュメントや先人のブログを参考に設定した。
実際に設定したBGP関連の設定は以下。
bgp use on
bgp autonomous-system 65500
bgp log neighbor packet
bgp neighbor 1 65515 10.1.100.254 hold-time=30 gateway=tunnel1 local-address=192.168.100.1 ignore-capability=on
bgp neighbor 2 65516 10.2.100.254 hold-time=30 gateway=tunnel2 local-address=192.168.100.1 ignore-capability=on
bgp router id 192.168.100.1
bgp import filter 1 include 192.168.100.0/24
bgp import 65515 static filter 1
bgp import 65516 static filter 1
設定を投入後、bgp configure refresh を実行して設定を動作に反映させれば出来上がり。
動作確認
show ip route を実行すると、VNetへの経路がBGPで広報されていることが分かる。
もちろんpingもOK。
# show ip route
宛先ネットワーク ゲートウェイ インタフェース 種別 付加情報
default - PP[01] static
10.1.0.0/16 - TUNNEL[1] BGP path=65515
10.1.100.254/32 - TUNNEL[1] static
10.2.0.0/16 - TUNNEL[2] BGP path=65516
10.2.100.254/32 - TUNNEL[2] static
192.168.100.0/24 192.168.100.1 LAN1 implicit
#
# show status bgp neighbor
BGP neighbor is 10.1.100.254, remote AS 65515, local AS 65500, external link
BGP version 4, remote router ID 10.1.100.254
BGP state = Established, up for 01:52:10
Last read 00:00:07, hold time is 30, keepalive interval is 10 seconds
Received 791 messages, 1 notifications, 0 in queue
Sent 694 messages, 0 notifications, 0 in queue
Connection established 2; dropped 1
Last reset 01:53:39
Local host: 192.168.100.1, Local port: 1163
Foreign host: 10.1.100.254, Foreign port: 179
BGP neighbor is 10.2.100.254, remote AS 65516, local AS 65500, external link
BGP version 4, remote router ID 10.2.100.254
BGP state = Established, up for 01:55:57
Last read 00:00:07, hold time is 30, keepalive interval is 10 seconds
Received 790 messages, 0 notifications, 0 in queue
Sent 700 messages, 0 notifications, 0 in queue
Connection established 1; dropped 0
Last reset never
Local host: 192.168.100.1, Local port: 179
Foreign host: 10.2.100.254, Foreign port: 50752
#
# ping 10.1.0.4
10.1.0.4から受信: シーケンス番号=0 ttl=63 時間=18.438ミリ秒
10.1.0.4から受信: シーケンス番号=1 ttl=63 時間=14.127ミリ秒
10.1.0.4から受信: シーケンス番号=2 ttl=63 時間=14.152ミリ秒
3個のパケットを送信し、3個のパケットを受信しました。0.0%パケットロス
往復遅延 最低/平均/最大 = 14.127/15.572/18.438 ミリ秒
# ping 10.2.0.4
10.2.0.4から受信: シーケンス番号=0 ttl=63 時間=11.927ミリ秒
10.2.0.4から受信: シーケンス番号=1 ttl=63 時間=12.562ミリ秒
10.2.0.4から受信: シーケンス番号=2 ttl=63 時間=13.439ミリ秒
3個のパケットを送信し、3個のパケットを受信しました。0.0%パケットロス
往復遅延 最低/平均/最大 = 11.927/12.642/13.439 ミリ秒
Azureへのtunnelが冗長化されているかも確認。
RTXとVNet1を接続しているtunnelをdisableに変えると数分で経路が更新され、RTXとVNet2を接続しているtunnel経由でVNet1に接続ができる。
# tunnel disable 1
#
# show ip route
宛先ネットワーク ゲートウェイ インタフェース 種別 付加情報
default - PP[01] static
10.1.0.0/16 - TUNNEL[2] BGP path=65516 65515
10.1.100.254/32 - TUNNEL[1] static
10.2.0.0/16 - TUNNEL[2] BGP path=65516
10.2.100.254/32 - TUNNEL[2] static
192.168.100.0/24 192.168.100.1 LAN1 implicit
#
# show status bgp neighbor
BGP neighbor is 10.1.100.254, remote AS 65515, local AS 65500, external link
BGP version 4, remote router ID 0.0.0.0
BGP state = Active
Last read 00:00:00, hold time is 30, keepalive interval is 10 seconds
Received 797 messages, 1 notifications, 0 in queue
Sent 699 messages, 0 notifications, 0 in queue
Connection established 2; dropped 2
Last reset 00:00:26
Local host: unspecified
Foreign host: 10.1.100.254, Foreign port: 0
BGP neighbor is 10.2.100.254, remote AS 65516, local AS 65500, external link
BGP version 4, remote router ID 10.2.100.254
BGP state = Established, up for 01:57:10
Last read 00:00:02, hold time is 30, keepalive interval is 10 seconds
Received 799 messages, 0 notifications, 0 in queue
Sent 707 messages, 0 notifications, 0 in queue
Connection established 1; dropped 0
Last reset never
Local host: 192.168.100.1, Local port: 179
Foreign host: 10.2.100.254, Foreign port: 50752
# ping 10.1.0.4
10.1.0.4から受信: シーケンス番号=0 ttl=63 時間=14.392ミリ秒
10.1.0.4から受信: シーケンス番号=1 ttl=63 時間=14.786ミリ秒
10.1.0.4から受信: シーケンス番号=2 ttl=63 時間=15.230ミリ秒
3個のパケットを送信し、3個のパケットを受信しました。0.0%パケットロス
往復遅延 最低/平均/最大 = 14.392/14.802/15.230 ミリ秒
#
# ping 10.2.0.4
10.2.0.4から受信: シーケンス番号=0 ttl=63 時間=13.449ミリ秒
10.2.0.4から受信: シーケンス番号=1 ttl=63 時間=12.403ミリ秒
10.2.0.4から受信: シーケンス番号=2 ttl=63 時間=12.910ミリ秒
3個のパケットを送信し、3個のパケットを受信しました。0.0%パケットロス
往復遅延 最低/平均/最大 = 12.403/12.920/13.449 ミリ秒
Azureとの接続で他に試すとするなら、経路の重み付けとかAct-Act構成とかかな。
Vitural WANでも触ってみるか。