【Azure】Azure とRTX830 で VPN 接続をする その3

その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でも触ってみるか。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です