188 Views
May 20, 26
スライド概要
AWSでは、Site-to-Site VPNにおいて静的ルーティングと動的ルーティング(BGP)の2種類が提供されていますが、実際に冗長構成を組んだ場合に「どの経路を通り、障害時にどのように切り替わるのか」を具体的に把握できているケースは多くありません。
そこで、本検証では動的ルーティング(BGP)を用いたAWS Site-to-Site VPNの冗長構成に焦点を当て、Transit Gateway(TGW)構成を含む複数経路環境における通信挙動を検証しました。
エヌアイデイの若手メンバーが参加し、基礎技術の習得と実践的な経験を目的とした社内の技術検証取り組みの資料です。
株式会社エヌアイデイの公式アカウントです。ソフトウェア開発、システム構築、システム運用まで幅広いICTサービスを提供する、1967年創業の独立系IT企業です。 NIDエンジニアの社内取り組みや登壇資料を共有します。
【初心者向け】 動的・静的ルートの違いがわかる! AWS VPN検証 動的ルーティング編 2026年5月31日 (検証実施時期:2023年8-10月) 株式会社エヌアイデイ ICTデザイン事業部ANA部第2課 Copyright(c)2026 NID All Rights Reserved 1
参加メンバー&検証年月 ICTデザイン事業部ANA部第2課 R.N. (2年目 ※検証当時) ICTデザイン事業部ANA部第2課 M.O (1年目 ※検証当時) ※2023年08月~10月検証実施
目次 • 検証内容 • AWS Site-to-Site VPNとは • 構成図 • Site-to-Site VPN冗長化の想定ケース • 検証環境構築手順 • 検証 • 検証結果 • 課題 • 所感 ※本資料に登場する会社名・製品・サービス名、ロゴマークなどは該当する各社の商号・商標または登録商標です。
検証内容 本検証では、カスタマーゲートウェイを用いて、 AWSとオンプレミス環境間をSite-to-Site VPN(動的ルーティング)で接続し、 冗長構成時の通信挙動を確認する。 ・Site-to-Site VPNを用いて、AWSとオンプレミス環境間の 動的ルーティング(BGP)による冗長構成を検証する。 ・VPNのトンネルがダウンした際に、冗長化された経路に 切り替わる/切り戻しできることを確認する。 ※オンプレミス環境は検証用に構築した仮想環境を使用する(AWS環境を利用) 検証は以下の2パターンで実施する。 ・VGW(Virtual Private Gateway)構成 ・TGW(Transit Gateway)構成
AWS Site-to-Site VPNとは ユーザー独自のネットワークとAWS間の通信を接続するためのVPN接続。 名前の通り拠点間のVPN接続に使用される。 類似接続 • AWS VPN(AWS Client VPN) オンプレミスとAWSのリソースを、仮想のVPNトンネルによって接続するだけでなく、PC やスマートフォンなどさまざまな端末からAWSのリソースに接続することが可能。 • AWS Direct Connect(専用線) オンプレミス側のルーターとAWS側のルーターを専用線で繋ぎ、プライベートな接続を確 立。
構成図 AWS環境 オンプレミス環境想定 VPC VPC アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #PRD-1 サブネット Customer Gateway #PRD VPN Peer #PRD-2 EC2 サブネット パブリック サブネット プライベート CiscoルータA Transit Gateway EC2 Internet (VPN) VPN Peer #DR-1 (疎通確認用) CiscoルータB Customer Gateway #DR VPN Peer #DR-2 AWS オンプレミス
Site-to-Site VPN冗長化の想定ケース(1/2) AWS環境 オンプレミス環境想定 通常経路 VPC アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #PRD-1 サブネット Customer Gateway #PRD VPN Peer #PRD-2 EC2 VPC サブネット パブリック サブネット プライベート CiscoルータA Transit Gateway EC2 Internet (VPN) VPN Peer #DR-1 (疎通確認用) CiscoルータB Customer Gateway #DR VPN Peer #DR-2 AWS オンプレミス
Site-to-Site VPN冗長化の想定ケース(2/2) AWS環境 オンプレミス環境想定 VPC VPC アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #PRD-1 サブネット Customer Gateway #PRD VPN Peer #PRD-2 EC2 サブネット パブリック サブネット プライベート 災害が発生 CiscoルータA Transit Gateway EC2 Internet (VPN) VPN Peer #DR-1 (疎通確認用) CiscoルータB Customer Gateway #DR VPN Peer #DR-2 障害発生時迂回経路 AWS オンプレミス
検証環境構築手順 AWS オンプレミス環境想定 ・VPC×1(サブネット×2) ・EC2インスタンス(ルータ)×2 ・EC2インスタンス(疎通確認用)×1 を作成 AWS環境想定 ・VPC×1(サブネット×1) AWS環境想定 ・EC2インスタンス(疎通確認用)×1 を作成 オンプレミス環境想定 VPC VPC アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 サブネット Customer Gateway #A VPN Peer #A-2 EC2 (疎通確認用) Transit Gateway Internet (VPN) AWS環境想定 TGW×1 を作成 EC2 (疎通確認用) CiscoルータB VPN Peer #B-2 AWS環境想定 ・Site-to-Site VPN×2を作成 NID検証環境 サブネット プライベート CiscoルータA AWS環境想定 Customer Gateway×2 を作成 Customer Gateway #B VPN Peer #B-1 サブネット パブリック
検証環境構築手順_Customer Gateway BGP ASN:オンプレミス側のBGP ASN IPアドレス:ルータのグローバルIP
検証環境構築手順_TGW (1/2) 16 ビット:64512 〜 65534 32 ビット:4200000000 〜 4294967294 から任意のASNを指定 ASN:64512 64512
検証環境構築手順_TGW (2/2) TGWアタッチメント VPN #A アタッチメントタイプ AWS環境想定 VPN オンプレミス環境想定) Customer Gateway VPC アベイラビリティゾーン (eu-west3a) サブネット VPN Peer #A-1 EC2 Gateway #A VPN Peer #A-2 (疎通確認用) Transit Gatewa y VPC(AWS環境想定) アタッチメントタイプ 既存 VPC アベイラビリティゾーン (eu-westルーティングオプション3a) 動的(BGPが必要) サブネット サブネット パブリック プライベート Customer VPC Ciscoルー タA EC2 Internet (VPN) (疎通確認用) Customer Gateway #B VPN Peer #B-1 Ciscoルー タB VPN #B VPN Peer #B-2 アタッチメントタイプ VPN Customer Gateway 既存 ルーティングオプション 動的(BGPが必要) NID検証環境
検証環境構築手順_Site-to-Site VPN VPN #A ターゲットゲートウェイのタイプ Transit Gateway Customer Gateway 既存 ルーティングオプション 動的(BGPが必要) トンネル内部IPバージョン IPv4 VPN #B ターゲットゲートウェイのタイプ Transit Gateway Customer Gateway 既存 ルーティングオプション 動的(BGPが必要) トンネル内部IPバージョン IPv4
検証環境構築手順_ルータ
Cisco Cloud Services Router
(CSR) 1000V - BYOL for
Maximum Performance
トンネル作成時に指定した
IKEバージョン
設定ファイル(例)
! -------------------------------------------------------------------------------! #3: Tunnel Interface Configuration
!
! A tunnel interface is configured to be the logical interface
associated
! with the tunnel. All traffic routed to the tunnel interface will be
! encrypted and transmitted to the VPC. Similarly, traffic from the
VPC
! will be logically received on this interface.
!
! Association with the IPSec security association is done through
the
! "tunnel protection" command.
!
! The address of the interface is configured with the setup for your
! Customer Gateway. If the address changes, the Customer
Gateway and VPN
! Connection must be recreated with Amazon VPC.
!
interface Tunnel1
ip address
ip virtual-reassembly
tunnel source
<interface_name/private_IP_on_outside_interface>
tunnel destination
tunnel mode ipsec ipv4
tunnel protection ipsec profile
! This option causes the router to reduce the Maximum Segment
Size of
! TCP packets to prevent packet fragmentation.
ip tcp adjust-mss 1379
no shutdown
exit
検証環境構築手順_ルータ ルータA設定 結果 ip-10-22-22-6#show running-config Building configuration... Current configuration : 9832 bytes ! ! Last configuration change at 13:14:19 UTC Wed Oct 25 2023 ! version 17.3 service timestamps debug datetime msec service timestamps log datetime msec service password-encryption service call-home platform qfp utilization monitor load 80 platform punt-keepalive disable-kernel-core platform console virtual ! hostname ip-10-22-22-6 ! boot-start-marker boot-end-marker ! ! vrf definition GS rd 100:100 ! address-family ipv4 exit-address-family ! logging persistent size 1000000 filesize 8192 immediate ! . . . . . トンネル・インタフェース設定 BGP設定 interface Tunnel1 ip address 169.254.150.158 255.255.255.252 ip tcp adjust-mss 1379 tunnel source 10.22.22.6 tunnel mode ipsec ipv4 tunnel destination tunnel protection ipsec profile ip virtual-reassembly ! interface Tunnel2 ip address 169.254.18.182 255.255.255.252 ip tcp adjust-mss 1379 tunnel source 10.22.22.6 tunnel mode ipsec ipv4 tunnel destination tunnel protection ipsec profile ip virtual-reassembly ! interface VirtualPortGroup0 vrf forwarding GS ip address 192.168.35.101 255.255.255.0 ip nat inside no mop enabled no mop sysid ! interface GigabitEthernet1 ip address dhcp ip nat outside negotiation auto no mop enabled no mop sysid ! interface GigabitEthernet3 ip address 10.22.22.58 255.255.255.240 negotiation auto no mop enabled no mop sysid ! interface GigabitEthernet4 ip address 10.100.100.4 255.255.255.240 shutdown negotiation auto no mop enabled no mop sysid router bgp 65000 bgp log-neighbor-changes bgp graceful-restart neighbor 10.22.22.21 remote-as 65000 neighbor 169.254.18.181 remote-as 64512 neighbor 169.254.18.181 ebgp-multihop 255 neighbor 169.254.18.181 fall-over neighbor 169.254.150.157 remote-as 64512 neighbor 169.254.150.157 ebgp-multihop 255 neighbor 169.254.150.157 fall-over ! address-family ipv4 network 10.22.22.0 mask 255.255.255.224 network 10.22.22.48 mask 255.255.255.240 network 192.168.100.0 neighbor 10.22.22.21 activate neighbor 169.254.18.181 activate neighbor 169.254.18.181 route-map LOCAL_PREF_75 in neighbor 169.254.18.181 route-map MED_5 out neighbor 169.254.150.157 activate exit-address-family ! . . . .
検証環境構築手順_ルータ ルータB設定 結果 ip-10-22-22-21#show running-config Building configuration... Current configuration : 10077 bytes ! ! Last configuration change at 13:14:19 UTC Wed Oct 25 2023 ! version 17.3 service timestamps debug datetime msec service timestamps log datetime msec service password-encryption service call-home platform qfp utilization monitor load 80 platform punt-keepalive disable-kernel-core platform console virtual ! hostname ip-10-22-22-21 ! boot-start-marker boot-end-marker ! ! vrf definition GS rd 100:100 ! address-family ipv4 exit-address-family ! logging persistent size 1000000 filesize 8192 immediate ! . . . . . トンネル・インタフェース設定 interface Tunnel1 ip address 169.254.217.242 255.255.255.252 ip tcp adjust-mss 1379 tunnel source 10.22.22.21 tunnel mode ipsec ipv4 tunnel destination tunnel protection ipsec profile ip virtual-reassembly ! interface Tunnel2 ip address 169.254.160.130 255.255.255.252 ip tcp adjust-mss 1379 tunnel source 10.22.22.21 tunnel mode ipsec ipv4 tunnel destination tunnel protection ipsec profile ip virtual-reassembly ! interface VirtualPortGroup0 vrf forwarding GS ip address 192.168.35.101 255.255.255.0 ip nat inside no mop enabled no mop sysid ! interface GigabitEthernet1 ip address dhcp ip nat outside negotiation auto no mop enabled no mop sysid ! interface GigabitEthernet2 ip address 10.22.22.59 255.255.255.240 negotiation auto no mop enabled no mop sysid ! interface GigabitEthernet3 ip address 10.100.100.14 255.255.255.240 shutdown negotiation auto no mop enabled no mop sysid ! BGP設定 router bgp 65000 bgp log-neighbor-changes bgp graceful-restart neighbor 169.254.160.129 remote-as 64512 neighbor 169.254.160.129 ebgp-multihop 255 neighbor 169.254.217.241 remote-as 64512 neighbor 169.254.217.241 ebgp-multihop 255 ! address-family ipv4 network 10.22.22.0 mask 255.255.255.224 network 10.22.22.48 mask 255.255.255.240 network 169.254.160.128 mask 255.255.255.252 network 169.254.217.240 mask 255.255.255.252 network 192.168.100.0 neighbor 169.254.160.129 activate neighbor 169.254.160.129 route-map LOCAL_PREF_25 in neighbor 169.254.160.129 route-map MED_15 out neighbor 169.254.217.241 activate neighbor 169.254.217.241 route-map LOCAL_PREF_50 in neighbor 169.254.217.241 route-map MED_10 out exit-address-family ! . . . .
検証 VPNアクティブ/アクティブ構成 MEDの制御で以下の優先度で通信が通るように設定 優先度:A-1 > A-2 > B-1 > B-2 AWS AWS環境想定 オンプレミス環境想定 VPC (10.22.22.0/26) プライベート:169.254.150.156/30 VPC (10.11.11.0/27) アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 サブネット (10.11.11.0/28) EC2 AS:64512 VPN Peer #A-2 (疎通確認用) Transit Gateway プライベート 10.11.11.14 MED:0(デフォルト) MED:5 Customer Gateway #A サブネット (10.22.22.0/27) サブネット (10.22.22.48/28) プライベート パブリック プライベート 10.22.22.6 CiscoルータA プライベート:169.254.18.180/30 Internet (VPN) 10.22.22.58 EC2 AS:65000 (疎通確認用) プライベート: 169.254.217.240/30 VPN Peer #B-1 ルートテーブル MED:10 10.22.22.57 Customer Gateway #B CiscoルータB 10.22.22.59 MED:15 送信先 ターゲット 10.22.22.0/26 TGW 10.11.11.0/27 local VPN Peer #B-2 プライベート 10.22.22.21 プライベート: 169.254.160.128/30 NID検証環境 ルートテーブル 送信先 ターゲット 10.11.11.0/27 ルータAのENI 10.22.22.0/26 local
検証1 全てのトンネルがUP状態の場合 AWSA-1の経路を通過する。 AWS環境想定 オンプレミス環境想定 VPC (10.22.22.0/26) プライベート:169.254.150.156/30 VPC (10.11.11.0/27) アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 サブネット (10.11.11.0/28) EC2 AS:64512 VPN Peer #A-2 (疎通確認用) Transit Gateway プライベート 10.11.11.14 MED:0(デフォルト) MED:5 Customer Gateway #A サブネット (10.22.22.0/27) サブネット (10.22.22.48/28) プライベート パブリック プライベート 10.22.22.6 CiscoルータA プライベート:169.254.18.180/30 Internet (VPN) 10.22.22.58 EC2 AS:65000 (疎通確認用) プライベート: 169.254.217.240/30 VPN Peer #B-1 ルートテーブル MED:10 10.22.22.57 Customer Gateway #B CiscoルータB 10.22.22.59 MED:15 送信先 ターゲット 10.22.22.0/26 TGW 10.11.11.0/27 local VPN Peer #B-2 プライベート 10.22.22.21 プライベート: 169.254.160.128/30 NID検証環境 ルートテーブル 送信先 ターゲット 10.11.11.0/27 ルータAのENI 10.22.22.0/26 local 優先度:A-1 > A-2 > B-1 > B-2
検証結果1 TGWルートテーブル TGWルートテーブルやtracerouteの結 果から全てのトンネルがUp状態のとき は A-1のトンネルを通過することが確認 できた traceroute(AWS→オンプレEC2) Site-to-Site VPN Aトンネルステータス show ip bgp(CiscoルータA) Site-to-Site VPN Bトンネルステータス show ip route(CiscoルータA)
検証2 AWS AWS環境想定 オンプレミス環境想定 A-1のトンネルがダウンした場合 プライベート:169.254.150.156/30 →A-2のトンネルを通過する。 VPC (10.11.11.0/27) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 サブネット (10.11.11.0/28) EC2 AS:64512 VPN Peer #A-2 (疎通確認用) Transit Gateway プライベート 10.11.11.14 MED:0(デフォルト) MED:5 VPC (10.22.22.0/26) アベイラビリティゾーン (eu-west-3a) Customer Gateway #A サブネット (10.22.22.0/27) サブネット (10.22.22.48/28) プライベート パブリック プライベート 10.22.22.6 CiscoルータA プライベート:169.254.18.180/30 Internet (VPN) 10.22.22.58 EC2 AS:65000 (疎通確認用) プライベート: 169.254.217.240/30 VPN Peer #B-1 ルートテーブル MED:10 10.22.22.57 Customer Gateway #B CiscoルータB 10.22.22.59 MED:15 送信先 ターゲット 10.22.22.0/26 TGW 10.11.11.0/27 local VPN Peer #B-2 プライベート 10.22.22.21 プライベート: 169.254.160.128/30 NID検証環境 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html ルートテーブル 送信先 ターゲット 10.11.11.0/27 ルータAのENI 10.22.22.0/26 local 優先度:A-1 > A-2 > B-1 > B-2
検証結果2 TGWルートテーブル TGWルートテーブルやtracerouteの結 果からA-1がDown状態のときは A-2のトンネルを通過することが確認 できた traceroute(AWS→オンプレEC2) Site-to-Site VPN Aトンネルステータス show ip bgp(CiscoルータA) Site-to-Site VPN Bトンネルステータス show ip route(CiscoルータA)
検証結果2 ping(AWS→オンプレEC2) VPN A-1→A-2への切替時間 34秒
検証3 AWS AWS環境想定 VPC (10.11.11.0/27) アベイラビリティゾーン (eu-west-3a) VPNアクティブ/アクティブ構成 ロンゲストマッチで Aに通信が行くように設定 Aのトンネルがダウンした場合 プライベート:169.254.150.156/30 →Aのトンネルがダウンした場合 →B-1の経路を通る →Bの経路を通る VPN Peer #A-1 サブネット (10.11.11.0/28) EC2 AS:64512 VPN Peer #A-2 (疎通確認用) Transit Gateway プライベート 10.11.11.14 MED:0(デフォルト) MED:5 オンプレミス環境想定 VPC (10.22.22.0/26) アベイラビリティゾーン (eu-west-3a) Customer Gateway #A サブネット (10.22.22.0/27) サブネット (10.22.22.48/28) プライベート パブリック プライベート 10.22.22.6 CiscoルータA プライベート:169.254.18.180/30 Internet (VPN) 10.22.22.58 EC2 AS:65000 (疎通確認用) プライベート: 169.254.217.240/30 VPN Peer #B-1 ルートテーブル MED:10 10.22.22.57 Customer Gateway #B CiscoルータB 10.22.22.59 MED:15 送信先 ターゲット 10.22.22.0/26 TGW 10.11.11.0/27 local VPN Peer #B-2 プライベート 10.22.22.21 プライベート: 169.254.160.128/30 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html NID検証環境 ルートテーブル 送信先 ターゲット 10.11.11.0/27 ルータBのENI 10.22.22.0/26 local 優先度:A-1 > A-2 > B-1 > B-2
検証結果3 TGWルートテーブル TGWルートテーブルやtracerouteの結 果からA-1,A-2がDown状態のときは A-3のトンネルを通過することが確認 できた traceroute(AWS→オンプレEC2) Site-to-Site VPN Aトンネルステータス show ip bgp(CiscoルータB) Site-to-Site VPN Bトンネルステータス show ip route(CiscoルータB)
検証結果3 ping(AWS→オンプレEC2) VPN A-2→B-1への切替時間 26秒
検証4 AWS VPNアクティブ/アクティブ構成 ストックホルムリージョン(AWS環境想定) ロンゲストマッチで ストックホルムリージョン(オンプレミス環境想定) Aに通信が行くように設定 B-2以外の経路がダウンした場合 プライベート:169.254.150.156/30 →Aのトンネルがダウンした場合 →B-2の経路を通る VPC (10.11.11.0/27) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 AS:64512 VPN Peer #A-2 (疎通確認用) Transit Gateway プライベート 10.11.11.14 アベイラビリティゾーン (eu-west-3a) →Bの経路を通る サブネット (10.11.11.0/28) EC2 VPC (10.22.22.0/26) MED:0(デフォルト) MED:5 Customer Gateway #A サブネット (10.22.22.0/27) サブネット (10.22.22.48/28) パブリック プライベート プライベート 10.22.22.6 CiscoルータA プライベート:169.254.18.180/30 Internet (VPN) 10.22.22.58 EC2 AS:65000 (疎通確認用) プライベート: 169.254.217.240/30 VPN Peer #B-1 ルートテーブル MED:10 10.22.22.57 Customer Gateway #B CiscoルータB 10.22.22.59 MED:15 送信先 ターゲット 10.22.22.0/26 TGW 10.11.11.0/27 local VPN Peer #B-2 プライベート 10.22.22.21 プライベート: 169.254.160.128/30 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html NID検証環境 ルートテーブル 送信先 ターゲット 10.11.11.0/27 ルータBのENI 10.22.22.0/26 local 優先度:A-1 > A-2 > B-1 > B-2
検証結果4 TGWルートテーブル TGWルートテーブルやtracerouteの結 果からA-1,A-2,B-1がDown状態のとき は A-4のトンネルを通過することが確認 できた traceroute(AWS→オンプレEC2) Site-to-Site VPN Aトンネルステータス show ip bgp(CiscoルータB) Site-to-Site VPN Bトンネルステータス show ip route(CiscoルータB)
検証結果4 ping(AWS→オンプレEC2) VPN B-1→B-2への切替時間 28秒
検証結果まとめ ・動的ルーティングのSite-to-Site VPNの冗長化ができた。 ・MEDで重み付けをすることで、冗長化したSite-to-Site VPNの ルート制御をすることができた。 ・ルータのインターフェースを切り替えてから ルートが変わるまで約30秒程度掛かることが分かった。
課題① ・AWS仮想ルータを冗長化することができなかった。 Next HopにそれぞれルータA、Bの IPアドレスが表示されておらず BGPによる双方の接続ができていなかった show ip bgp (CiscoルータA) ルータA:10.22.22.6 ルータB:10.22.22.21 show ip bgp (CiscoルータB) • BGPについての知識不足 • Cisco、およびAWSの仕様の把握が不十分
課題① AWS AWS環境想定 オンプレミス環境想定 VPC(10.22.22.0/26, 10.22.22.128/25) VPC(10.11.11.0/27) アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 サブネット (10.11.11.0/27) EC2 Customer Gateway #A VPN Peer #A-2 (疎通確認用) サブネット (10.22.22.0/27) パブリック サブネット (10.22.22.32/27) プライベート CiscoルータA EC2 (疎通確認用) Transit Gateway VPN Peer #B-1 Internet (VPN) Customer Gateway #B VPN Peer #B-2 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html NID検証環境 CiscoルータB 想定した経路で 繋ぐことが出来なかった。
課題① 結論 AWS AWS環境想定 オンプレミス環境想定 VPC(10.22.22.0/26, 10.22.22.128/25) VPC(10.11.11.0/27) アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 サブネット (10.11.11.0/27) EC2 Customer Gateway #A VPN Peer #A-2 (疎通確認用) サブネット (10.22.22.0/27) パブリック サブネット (10.22.22.32/27) プライベート CiscoルータA EC2 Transit Gateway VPN Peer #B-1 (疎通確認用) Internet (VPN) Customer Gateway #B VPN Peer #B-2 CiscoルータB EC2→ルータA→ルータBの経路情報のやり取り ができなかった事象については解決に至らず。 代替案として、EC2をルータA、Bの両方に接続し、 ルータAに何かしらの障害が発生した場合は、 EC2→ルータBの経路とすることで冗長構成を実現。 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html NID検証環境
課題② ・ルータ1台構成の場合、VPN BのトンネルのステータスがUPに ならなかった Site-to-Site VPN Bトンネルステータス Site-to-Site VPN Aトンネルステータス show ip interface(VPN A トンネル1) show ip interface(VPN B トンネル1) show ip interface brief(Ciscoルータ)
課題② AWS AWS環境想定 オンプレミス環境想定 VPC(10.22.22.0/26) VPC(10.11.0.0/24) アベイラビリティゾーン (eu-west-3a) VPC(10.22.0.0/16) アベイラビリティゾーン (eu-west-3a) サブネット (10.11.0.0/24) EC2 (疎通確認用) VPN Peer #A-1 UP VPN Peer #A-2 UP Customer Gateway #A Transit Gateway VPN Peer #B-1 サブネット (10.22.0.0/24) パブリック CiscoルータA Internet (VPN) Customer Gateway #B VPN Peer #B-2 VPN Bのトンネルのステー タスがUPにならない 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html NID検証環境 サブネット (10.22.1.0/24) プライベート EC2 (疎通確認用)
課題② ・意図的にVPN Aを落としても、VPN Bのステータスは「UP」に 変わることが無かった。 Site-to-Site VPN Aトンネルステータス Site-to-Site VPN Bトンネルステータス show ip interface brief(Ciscoルータ) • ルータの設定についての知識不足 • AWSのインターフェースの理解不足
課題② AWS VPN Aのトンネルを手動で オンプレミス環境想定 ダウン VPC(10.22.22.0/26) AWS環境想定 VPC(10.22.0.0/16) VPC(10.11.0.0/24) アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) VPN Peer #A-1 サブネット (10.11.0.0/24) Customer Gateway #A VPN Peer #A-2 EC2 (疎通確認用) Transit Gateway VPN Peer #B-1 サブネット (10.22.0.0/24) パブリック CiscoルータA Internet (VPN) Customer Gateway #B VPN Peer #B-2 VPN Bに切り替わらない ダウンのまま 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html NID検証環境 サブネット (10.22.1.0/24) プライベート EC2 (疎通確認用)
課題② 結論 AWS AWS環境想定 オンプレミス環境想定 ルータを2台用意し、各ルータに VPC(10.22.22.0/26) Customer Gatewayをアタッチ VPC(10.11.0.0/24 ) VPC(10.22.0.0/16) アベイラビリティゾーン (eu-west-3a) アベイラビリティゾーン (eu-west-3a) サブネット (10.11.0.0/24) EC2 (疎通確認用) VPN Peer #A-1 UP VPN Peer #A-2 UP Customer Gateway #A サブネット (10.22.0.0/24) パブリック CiscoルータA Transit Gateway UP VPN Peer #B-2 UP VPN A、BともにUPのステータスと することで、経路の冗長化を実現 参考:https://www.ntt.com/business/sdpf/knowledge/archive_68.html EC2 Internet (VPN) VPN Peer #B-1 NID検証環境 サブネット (10.22.1.0/24) プライベート (疎通確認用) Customer Gateway #B CiscoルータB 1台のルータに複数のCustomer Gatewayを アタッチした場合のVPN ステータスDown事象 については引き続き調査が必要
所感 • 今回の検証では、Cisco ルーターの設定に不慣れな点が最も苦労した部 分であった。しかし、オンプレ環境が依然として多く存在する現状を踏 まえると、これらの知識は今後の業務において必須となる。検証を通じ て実際に設定を行いながら理解を深められたことは、大きな学びの機会 となった。 • 主要経路の切断時に待機経路へスムーズに切り替わることを確認でき、 切り替え時間も許容範囲であったことから、実運用においても十分に耐 えうる冗長構成であると判断できた。今回はMEDを用いたルート制御を 採用したが、今後はその他の経路制御手法についても検証し、より最適 な構成を検討していきたい。
ご清聴ありがとうございました