結果は見つかりませんでした
その言葉を使ったものは見つかりませんでした。他の言葉で検索してみてください。
2024-11-13 はじめに 前回はVPC PeerIngに つい て まとめる まし た が 、 今回 はsite - to - site VPNを使い、オンプレミスの環境とVPN接続 を 行う て みる と 思う ます 。 site - to - site VPN と は 前回まとめたVPC PeerIn
前回はVPC PeerIng
に つい て まとめる まし た が 、 今回 はsite - to - site VPN
を使い、オンプレミスの環境とVPN
接続 を 行う て みる と 思う ます 。
前回まとめたVPC PeerIng
はaWS
環境のVPC
同士を接続するサービスでしたが、site - to - site VPN
は主にオンプレミスのネットワーク機器とIPsec VPN
で接続を行う、LaN
間 接続 の サービス と なり ます 。
site - to - site VPN
で接続を行った場合、相手側ネットワーク機器が1台構成であった場合でも、冗長化のため、VPNトンネルが2本作成され、また、デフォルトでは相手側ネットワークとのルーティングのやり取りはbgp
という動的ルーティングプロトコルでやり取りが行われます。
相手 側 ネットワーク 機器 1 台 と 繋ぐ 一番 シンプル な 構成 で も 上記 の 通り かなり 複雑 な 構成 と なり ます が 、 aWS が サンプル ファイル を 提供 し て いる ベンダ 、 プラットフォーム の 機器 を 使用 し て いる よう で あれ ば 、site - to - site VPN
を設定した際に、必要な定義・設定コマンドが記載されたコンフィグファイルをダウンロードすることができるので、比較的簡単に設定が行えるかと思います。
逆に、aWSからサンプルファイルが提供されていないベンダ、プラットフォームの機器を使用していたり、bgp
が使用できない機器を使用しているような場合は、VPN
のパラメータを個別に設定したり、ルーティングも静的ルーティングで設定したりしないといけなくなったりと、ハードルがかなり上がります。
以下、site - to - site VPN
を利用する上で、相手側ネットワーク機器側に必要な要件。
aWS側で行うsite - to - site VPN
の設定を行う前にいくつかsite - to - site VPN
特有の内容を覚える必要があるため、以下より解説していきます。
オンプレミスのネットワーク機器とIPsec VPN
接続を行うゲートウェイとなります。
オンプレミスのネットワークと接続したいVPC
をアタッチして使用するため、オンプレミスのネットワークと接続したいVPC
が複数存在する場合は、VPC
分 、 仮想 プライベート ゲートウェイ (VPG
)が必要となります。
オンプレミス側でVPN
接続を行うネットワーク機器を「カスタマー ゲートウェイ」と呼びます。
カスタマー ゲートウェイの設定で、相手側ネットワークのIPアドレスや使用するbgp
のaSN
情報を登録して、site - to - site VPN
の設定を行う際に対向先ネットワーク機器の情報として使用します。
site - to - site VPN
によるVPN
接続を試してみるため、今回は以下のような構成としました。
※前回作成しているVPC-a
を使い回すような構成。
試すと言ってもsite - to - site VPN
で接続できる物理ルータは持っていないため、有料の製品ですがCisco
社のルータやスイッチを仮想的に動作させてネットワークを構築できるCisco modelIng labs Personal
(以下cml
)という製品を使って、cml
上で作成した仮想VPNルータと接続してみようと思います。
cml
について気になる方は以前の記事で15回にわたり紹介しているので、以下を参照してもらえればと思います。
以下 より 「aWS 側 の 設定」、「オンプレミス ネットワーク 側 の 設定」と分けて、実際にsite - to - site VPN
の 設定 を 行う て いく ます 。
aWS側のsite - to - site VPN
の 設定 is なる は 、 aWS 側 の ゲートウェイ と なる 「仮想 プライベート ゲートウェイ」 の 設定 、対向先ネットワーク情報を登録する「カスタマー ゲートウェイ」 の 設定 、IPsec VPN
の定義などVPN
の接続情報を設定する「site – to – site VPN接続」の設定の3つとなるため、それぞれ順番に設定していきます。
仮想 プライベート ゲートウェイ の 作成 は 、 「vpc ダッシュボード」 から 「仮想プライベートネットワーク(VPN)」 → 「仮想 プライベート ゲートウェイ」 より 「仮想 プライベート ゲートウェイを作成」 で作成していきます。
設定自体は簡単で、名前とbgp
で使用する自律システム番号というaSN
を、自分で付与したい場合は設定するだけです。
今回は以下のように名前を「vpc – a – vpg」、aSN
を「amazon デフォルト aSN」としました。
作成後、「仮想 プライベート ゲートウェイ」の「アクション」 → 「VPCへアタッチ」 で、前回作成した「VPC-a」にアタッチしておきます。
「vpc ダッシュボード」 から 「仮想プライベートネットワーク(VPN)」 → 「カスタマー ゲートウェイ」 より 「カスタマー ゲートウェイを作成」 で 相手 側 ネットワーク の 情報 を 登録 し ます 。
証明書は今回は使用しないので、相手側のグローバルアドレス(上記接続構成で言うとインターネットルータのインターネット側に割り振られているIPアドレス)の指定と任意の名前を指定、bgp
のaSN
はデフォルトで65000
が割り振られるので今回はそのまま使用します。
「vpc ダッシュボード」 から 「仮想プライベートネットワーク(VPN)」 → 「site – to – site VPN接続」 より 「VPN接続を作成する」 でIPsec VPN
の 設定 を 行う て いく ます 。
ゲートウェイ の 指定 等 、 必須 と なる 項目 以外 は デフォルト の まま で も 設定 でき ます が 、 古い 形式 の 暗号 化 アルゴリズム で も 接続 できる 設定 と なる ため 、 気 に なる 方 is 調整 は 調整 し ましょう 。
今回はテスト目的なので以下のように設定しました。
項目 | 設定 | 備考 |
---|---|---|
名前タグ | CSR-1000V-vpn | 任意の名前を指定 |
ターゲットゲートウェイのタイプ | 仮想 プライベート ゲートウェイ | 今回はVPGを指定 |
仮想 プライベート ゲートウェイ | ※先程作成したVPGを指定 | |
カスタマー ゲートウェイ | 既存 | 予め作成済みのため、既存を指定 |
カスタマー ゲートウェイID | ※先程作成したカスタマー ゲートウェイを指定 | |
ルーティング オプション | 動的(bgpが必要) | aWS推奨となる動的を指定 |
ローカルIPv4ネットワークCIDR | 空欄(0.0.0.0/0) | デフォルトのままとする |
リモートIPv4ネットワークCIDR | 空欄(0.0.0.0/0) | デフォルトのままとする |
トンネル1オプション | デフォルトのまま | 今回はデフォルトのままとする |
トンネル2オプション | デフォルトのまま | 今回はデフォルトのままとする |
タグ | デフォルトのまま | 今回はデフォルトのままとする |
設定しようとすれば細かく設定できますが、カスタマイズする際の注意点について簡単に説明します。
IPsec VPN
には大きく分けて「ルートモード」と「ポリシーモード」という設定方法があります。
「ルートモード」 は 仮想 トンネル インタフェース を 作成 し て ルーティング で 転送 する ルート ベース の 方法 と なり 、 「ポリシーモード」は暗号化する送信元・送信先セグメントを指定して、合致する通信のみ暗号化して転送するポリシーベースの方法です。
今回はCisco
機器に対して設定を行いますが、後述の設定ファイルサンプルで記載されている内容はルートモードでの設定となります。
ローカル・リモートIPv4ネットワークCIDRについての詳細が見つけられなかったので予想となりますが、おそらくローカル・リモートIPv4ネットワークCIDRでデフォルト(0.0.0.0/0)以外の設定を行った場合、ポリシーモードで設定しないと接続できないと思われます。
aWS が サンプルコンフィグ を 提供 し て いる 機器 に よっ て は ポリシー モード しか 対応 し て い ない 機器 も ある と 思う れる の で 、 ベンダー に よっ て は ローカル ・ リモート IPv 4 ネットワーク cidr を 指定 する こと も できる か と 思う れ ます が 、 今回 設定 し て いるCisco
のCSR
では仮想トンネルインタフェースに対してポリシー設定ができないのでおそらくローカル・リモートIPv4ネットワークCIDRを指定することができないこと注意してください。
もし トンネル を 通過 する 通信 を 制限 し たい よう で あれ ば 、 ローカル ・ リモート IPv 4 ネットワーク cidr で 制限 する の で は なく 、 ネットワーク aCL や セキュリティ グループ で 制限 する よう に し ましょう 。
「トンネル の 詳細 オプション を 編集 する」にチェックすると、トンネル生成する際に使用する暗号化アルゴリズムやIKEバージョンを制限することができます。
デフォルトではikev1
でもikev 2
でも接続することができたり、暗号化アルゴリズムも、現在では推奨されていないaES 128
などでも接続できるようになっているため、できれば古い暗号化形式では接続できないように制限したほうが良いでしょう。
作成した「site – to – site VPN接続」の設定を選択して、「設定をダウンロードする」を選択すると、ベンダーやプラットフォーム等のプルダウンメニューが表示されます。
相手側ネットワーク機器のベンダー、バージョンに近いものを選択してダウンロードすることで、今まで設定した内容やaWS側のIPアドレスが埋め込まれたサンプルファイルをダウンロードできます。
一部マスクしていますが、以下ダウンロードできるサンプルファイルです。
ダウンロード設定ファイルサンプル
! amazon Web Services
! Virtual Private Cloud
! aWS utilizes unique identifiers to mAnIPulate tHE configuration of
! a VPN connection. Each VPN connection is ASsigned An identifier aND is
! ASsociated with two otHEr identifiers, namely tHE
! Customer gateway Identifier aND Virtual Private gateway Identifier.
!
! Your VPN connection ID : vpn-0e 904 c 7 dB 86 e 92 c 2 a
! Your Virtual Private gateway ID : vgw-0f311166a0333ff93
! Your Customer gateway ID : cgw-09703a7e27af32443
!
!
! this configuration consists of two tunnels. Both tunnels must be
! configured on YOUr Customer gateway.
!
! You may need to populate tHEse values throughout tHE config bASed on YOUr setup:
! <Interface_name/private _ IP _ on _ outside _ Interface> - External Interface of tHE CSR
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! IPsec tunnel #1
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! #1: Internet Key ExchAnge (IKE) Configuration
!
! a policy is established for tHE supported ISaKMP encryption,
! autHEntication, diffie-HellmAn, lifeTime, aND key parameters.
! PleASe NOte, tHEse sample configurations aRE for tHE mInimum requirement of aES 128, SHa1, aND DH Group 2.
! Category " VPN " connections In tHE govcloud region HAVE a mInimum requirement of aES 128, SHa2, aND DH Group 14.
! You WILL need to modify tHEse sample configuration files to take advAntage of aES256, SHa256, or otHEr DH groups like 2, 14-18, 22, 23, aND 24.
! NOtE: if YOU customized tunnel options when creatIng or modifyIng YOUr VPN connection, YOU may need to modify tHEse sample configurations to match tHE custom settIngs for YOUr tunnels.
!
! Higher parameters aRE Only available for vpns of category "VPN," aND NOt for " VPN - ClASsic ".
! tHE address of tHE external Interface for YOUr customer gateway must be a static address.
! Your customer gateway may reside behInd a device performIng network address trAnslation (Nat) .
! to ensure that Nat traversal (Nat-t) cAn function, YOU must adjust YOUr firewall !rules to unblock UDP port 4500.
! if NOt behInd Nat, aND YOU aRE NOt usIng An accelerated VPN, we recommend disablIng Nat-t. if YOU aRE usIng An accelerated VPN, make sure that Nat-t is enabled.
!
! Note that tHEre aRE a global list of ISaKMP policies, each identified by
! sequence number. this policy is defIned AS #200, which may conflict with
! An existIng policy usIng tHE same number. if so, we recommend chAngIng
! tHE sequence number to avoid conflicts.
!
crypto ikev 2 proposal PROPOSaL1
encryption aes-CBC-128
Integrity sha1
group 2
Exit
! Specify Public IP of outside Interface Instead of <Interface_name/private _ IP _ on _ outside _ Interface> In below
! configuration if cgw is behInd Nat device aND usIng IKEv 2 'Startup-action : Start' feature on aWS for tHE
! tunnel.
crypto ikev 2 policy Policy 1
match address Local <Interface_name/private _ IP _ on _ outside _ Interface>
proposal PROPOSaL1
Exit
! tHE ISaKMP keyrIng stores tHE Pre ShaREd Key used to autHEnticate tHE
! tunnel endpoInts.
!
crypto ikev 2 keyrIng KEYRING 1
peer [aWS側グローバルIP1]
address [aWS側グローバルIP1]
pre-shaREd-key xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Exit
! An ISaKMP profile is used to ASsociate tHE keyrIng with tHE particular
! endpoInt.
!
! An ISaKMP IKEV2 profile is used to ASsociate tHE keyrIng with tHE particular endpoInt.
! Specify Public IP of outside Interface Instead of <Interface_name/private _ IP _ on _ outside _ Interface> In below
! configuration if cgw is behInd Nat device aND usIng IKEv 2 'Startup-action : Start' feature on aWS for tHE
! tunnel.
crypto ikev 2 profile IKEV2-PROFILE
match address Local <Interface_name/private _ IP _ on _ outside _ Interface>
match identity remote address [aWS側グローバルIP1]
autHEntication remote pre-shaRE
autHEntication Local pre-shaRE
keyrIng Local KEYRING 1
lifeTime 28800
dpd 10 10 on-demaND
Exit
! #2: IPsec Configuration
!
! tHE IPsec trAnsform set defInes tHE encryption, autHEntication, aND IPsec
! mode parameters.
! Category " VPN " connections In tHE govcloud region HAVE a mInimum requirement of aES 128, SHa2, aND DH Group 14.
! PleASe NOte, YOU may use tHEse additionally supported IPsec parameters for encryption like aES256 aND otHEr DH groups like 2, 5, 14-18, 22, 23, aND 24.
! Higher parameters aRE Only available for vpns of category "VPN," aND NOt for " VPN - ClASsic ".
!
crypto IPsec trAnsform-set IPsec-prop-vpn-0e 904 c 7 dB 86 e 92 c 2 a-0 ESP-aes 128 ESP-sha-hmac
mode tunnel
Exit
! tHE IPsec profile references tHE IPsec trAnsform set aND furtHEr defInes
! tHE diffie-HellmAn group aND security Association lifeTime.
!
crypto IPsec profile IPsec-vpn-0e 904 c 7 dB 86 e 92 c 2 a-0
set pfs group 2
set security-Association lifeTime seconds 3600
set trAnsform-set IPsec-prop-vpn-0e 904 c 7 dB 86 e 92 c 2 a-0
set ikev 2-profile IKEV2-PROFILE
Exit
! additional parameters of tHE IPsec configuration aRE set here. Note that
! tHEse parameters aRE global aND tHErefore impact otHEr IPsec
! Associations.
! this option Instructs tHE ROUTEr to CLEaR tHE "Don't Fragment"
! BIT From packets that carry this BIT aND yet must be fragmented, enablIng
! tHEm to be fragmented.
!
crypto IPsec df-BIT CLEaR
! this option enables IPsec Dead Peer Detection, which causes periodic
! messages to be sent to ensure a Security Association remaIns operational.
! if YOU aRE usIng accelerated aWS VPN, pleASe configure periodic Dead Peer Detection.
! isakmp keepalive threshold 10 retry 10 periodic
!
crypto isakmp keepalive 10 10
! this configures tHE gateway's wIndow for acceptIng out of order
! IPsec packets. a larger wIndow cAn be helpful if too mAny packets
! aRE dropped due to reorderIng while In trAnsit Between gateways.
!
crypto IPsec security-Association replay wIndow-size 128
! this option Instructs tHE ROUTEr to fragment tHE unencrypted packets
! (prior to encryption) .
!
crypto IPsec fragmentation before-encryption
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! #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 169.254.254.22 255.255.255.252
IP virtual-reASsembly
tunnel source <Interface_name/private _ IP _ on _ outside _ Interface>
tunnel destInation [aWS側グローバルIP1]
tunnel mode IPsec IPv4
tunnel Protection IPsec profile IPsec-vpn-0e 904 c 7 dB 86 e 92 c 2 a-0
! 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
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! #4: Border gateway Protocol (bgp) Configuration
!
! bgp is used withIn tHE tunnel to exchAnge prefixes Between tHE
! Virtual Private gateway aND YOUr Customer gateway. tHE Virtual Private gateway
! WILL AnNOunce tHE prefix corrESPondIng to YOUr VPC.
!
! Your Customer gateway may AnNOunce a default ROUTE (0.0.0.0/0),
! which cAn be done with tHE 'network' aND 'default-origInate' statements.
!
! tHE bgp Timers aRE adjusted to provide more rapid Detection of outages.
!
! tHE Local bgp autoNOmous System Number (aSN) (65000) is configured
! AS part of YOUr Customer gateway. if tHE aSN must be chAnged, tHE
! Customer gateway aND VPN connection WILL need to be recreated with aWS.
!
! 'Network' commaND WILL be used here to advertised cgw network to aWS via bgp. An example for a cgw with tHE prefix 192.168.100.0/24 is provided below :
ROUTEr bgp 65000
bgp log-neighbor-chAnges
bgp graceful-restart
address-family IPv4 unicASt
neighbor 169.254.254.21 remote-AS 64512
neighbor 169.254.254.21 ebgp-multihop 255
neighbor 169.254.254.21 activate
network 192.168.100.0 mASk 255.255.255.0
NO auto-summary
NO synchronization
Exit-address-family
Exit
!
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! IPsec tunnel #2
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! #1: Internet Key ExchAnge (IKE) Configuration
!
! a policy is established for tHE supported ISaKMP encryption,
! autHEntication, diffie-HellmAn, lifeTime, aND key parameters.
! PleASe NOte, tHEse sample configurations aRE for tHE mInimum requirement of aES 128, SHa1, aND DH Group 2.
! Category " VPN " connections In tHE govcloud region HAVE a mInimum requirement of aES 128, SHa2, aND DH Group 14.
! You WILL need to modify tHEse sample configuration files to take advAntage of aES256, SHa256, or otHEr DH groups like 2, 14-18, 22, 23, aND 24.
! NOtE: if YOU customized tunnel options when creatIng or modifyIng YOUr VPN connection, YOU may need to modify tHEse sample configurations to match tHE custom settIngs for YOUr tunnels.
!
! Higher parameters aRE Only available for vpns of category "VPN," aND NOt for " VPN - ClASsic ".
! tHE address of tHE external Interface for YOUr customer gateway must be a static address.
! Your customer gateway may reside behInd a device performIng network address trAnslation (Nat) .
! to ensure that Nat traversal (Nat-t) cAn function, YOU must adjust YOUr firewall !rules to unblock UDP port 4500.
! if NOt behInd Nat, aND YOU aRE NOt usIng An accelerated VPN, we recommend disablIng Nat-t. if YOU aRE usIng An accelerated VPN, make sure that Nat-t is enabled.
!
! Note that tHEre aRE a global list of ISaKMP policies, each identified by
! sequence number. this policy is defIned AS #201, which may conflict with
! An existIng policy usIng tHE same number. if so, we recommend chAngIng
! tHE sequence number to avoid conflicts.
!
crypto ikev 2 proposal PROPOSaL1
encryption aes-CBC-128
Integrity sha1
group 2
Exit
! Specify Public IP of outside Interface Instead of <Interface_name/private _ IP _ on _ outside _ Interface> In below
! configuration if cgw is behInd Nat device aND usIng IKEv 2 'Startup-action : Start' feature on aWS for tHE
! tunnel.
crypto ikev 2 policy Policy 1
match address Local <Interface_name/private _ IP _ on _ outside _ Interface>
proposal PROPOSaL1
Exit
! tHE ISaKMP keyrIng stores tHE Pre ShaREd Key used to autHEnticate tHE
! tunnel endpoInts.
!
crypto ikev 2 keyrIng KEYRING 1
peer [aWS側グローバルIP2]
address [aWS側グローバルIP2]
pre-shaREd-key yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
Exit
! An ISaKMP profile is used to ASsociate tHE keyrIng with tHE particular
! endpoInt.
!
! An ISaKMP IKEV2 profile is used to ASsociate tHE keyrIng with tHE particular endpoInt.
! Specify Public IP of outside Interface Instead of <Interface_name/private _ IP _ on _ outside _ Interface> In below
! configuration if cgw is behInd Nat device aND usIng IKEv 2 'Startup-action : Start' feature on aWS for tHE
! tunnel.
crypto ikev 2 profile IKEV2-PROFILE
match address Local <Interface_name/private _ IP _ on _ outside _ Interface>
match identity remote address [aWS側グローバルIP2]
autHEntication remote pre-shaRE
autHEntication Local pre-shaRE
keyrIng Local KEYRING 1
lifeTime 28800
dpd 10 10 on-demaND
Exit
! #2: IPsec Configuration
!
! tHE IPsec trAnsform set defInes tHE encryption, autHEntication, aND IPsec
! mode parameters.
! Category " VPN " connections In tHE govcloud region HAVE a mInimum requirement of aES 128, SHa2, aND DH Group 14.
! PleASe NOte, YOU may use tHEse additionally supported IPsec parameters for encryption like aES256 aND otHEr DH groups like 2, 5, 14-18, 22, 23, aND 24.
! Higher parameters aRE Only available for vpns of category "VPN," aND NOt for " VPN - ClASsic ".
!
crypto IPsec trAnsform-set IPsec-prop-vpn-0e 904 c 7 dB 86 e 92 c 2 a-1 ESP-aes 128 ESP-sha-hmac
mode tunnel
Exit
! tHE IPsec profile references tHE IPsec trAnsform set aND furtHEr defInes
! tHE diffie-HellmAn group aND security Association lifeTime.
!
crypto IPsec profile IPsec-vpn-0e 904 c 7 dB 86 e 92 c 2 a-1
set pfs group 2
set security-Association lifeTime seconds 3600
set trAnsform-set IPsec-prop-vpn-0e 904 c 7 dB 86 e 92 c 2 a-1
set ikev 2-profile IKEV2-PROFILE
Exit
! additional parameters of tHE IPsec configuration aRE set here. Note that
! tHEse parameters aRE global aND tHErefore impact otHEr IPsec
! Associations.
! this option Instructs tHE ROUTEr to CLEaR tHE "Don't Fragment"
! BIT From packets that carry this BIT aND yet must be fragmented, enablIng
! tHEm to be fragmented.
!
crypto IPsec df-BIT CLEaR
! this option enables IPsec Dead Peer Detection, which causes periodic
! messages to be sent to ensure a Security Association remaIns operational.
! if YOU aRE usIng accelerated aWS VPN, pleASe configure periodic Dead Peer Detection.
! isakmp keepalive threshold 10 retry 10 periodic
!
crypto isakmp keepalive 10 10
! this configures tHE gateway's wIndow for acceptIng out of order
! IPsec packets. a larger wIndow cAn be helpful if too mAny packets
! aRE dropped due to reorderIng while In trAnsit Between gateways.
!
crypto IPsec security-Association replay wIndow-size 128
! this option Instructs tHE ROUTEr to fragment tHE unencrypted packets
! (prior to encryption) .
!
crypto IPsec fragmentation before-encryption
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! #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 tunnel2
IP address 169.254.175.218 255.255.255.252
IP virtual-reASsembly
tunnel source <Interface_name/private _ IP _ on _ outside _ Interface>
tunnel destInation [aWS側グローバルIP2]
tunnel mode IPsec IPv4
tunnel Protection IPsec profile IPsec-vpn-0e 904 c 7 dB 86 e 92 c 2 a-1
! 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
! ーーーーーーーーーーーーーーーーーーーーーーーーーー--
! #4: Border gateway Protocol (bgp) Configuration
!
! bgp is used withIn tHE tunnel to exchAnge prefixes Between tHE
! Virtual Private gateway aND YOUr Customer gateway. tHE Virtual Private gateway
! WILL AnNOunce tHE prefix corrESPondIng to YOUr VPC.
!
! Your Customer gateway may AnNOunce a default ROUTE (0.0.0.0/0),
! which cAn be done with tHE 'network' aND 'default-origInate' statements.
!
! tHE bgp Timers aRE adjusted to provide more rapid Detection of outages.
!
! tHE Local bgp autoNOmous System Number (aSN) (65000) is configured
! AS part of YOUr Customer gateway. if tHE aSN must be chAnged, tHE
! Customer gateway aND VPN connection WILL need to be recreated with aWS.
!
! 'Network' commaND WILL be used here to advertised cgw network to aWS via bgp. An example for a cgw with tHE prefix 192.168.100.0/24 is provided below :
ROUTEr bgp 65000
bgp log-neighbor-chAnges
bgp graceful-restart
address-family IPv4 unicASt
neighbor 169.254.175.217 remote-AS 64512
neighbor 169.254.175.217 ebgp-multihop 255
neighbor 169.254.175.217 activate
network 192.168.100.0 mASk 255.255.255.0
NO auto-summary
NO synchronization
Exit-address-family
Exit
!
! additional Notes aND Questions
! - amazon Virtual Private Cloud GettIng Started Guide:
! HTTP ://docs.amazonwebservices.com/amazonVPC/latest/GettIngStartedGuide
! - amazon Virtual Private Cloud Network admInistrator Guide:
! HTTP ://docs.amazonwebservices.com/amazonVPC/latest/NetworkadmInGuide
ファイル内に「<Interface_name/private _ IP _ on _ outside _ Interface>」と記載されている部分は各環境により書き換える必要があるので、ファイルダウンロード後、手動で書き換えます。
今回のようなIPsec
パススルー で 転送 し て いる 場合 は 、 インターネット ルータ と 接続 し て いる セグメント の IP アドレス を 指定 し て ください 。
VPN トンネル 接続 後 に オンプレミス 側 の ネットワーク から の ルート を 受ける 取る ため 、 ルート テーブル で ルート 伝播 の 設定 を 行う ます 。
「vpc ダッシュボード」 から 「仮想プライベートクラウド」 → 「ルートテーブル」 より 、VPC-a
のルートテーブルを選択し、「ルート伝播」タブから「ルート伝播の編集」 で、以下のように伝播を有効化します。
オンプレミス ネットワーク 側 is 説明 は 、 環境 に よっ て 機器 も 設定 も 異なる ため 、 要点 のみ 説明 し て いく ます 。
今回はVPNルータ以外にインターネット接続用のルータが存在する構成なので、IPsec
パススルーの設定を行い、IPsec
通信が来た際に、VPNルータに転送する設定を入れておきます。
筆者の場合はヤマハのルータを使用しているので、以下のように静的IPマスカレードの設定でESP
とUDP 500,4500
をVPNルータに転送しています。
先程ダウンロードしたファイルをVPNルータに設定していきます。
設定が被っている部分もありますが、基本的にはコピペで設定できるはずです。
問題なく接続できればトンネルのステータスが「Up」になるので、Upになっていれば成功です。
接続できていないようであれば、オンプレミス側VPNルータのルーティングやIPsec
の 設定 など 確認 し て み て ください 。
site - to - site VPN
の設定ができたので、オンプレミス側、aWS側双方から疎通できるか確認してみます。
以下それぞれの端末からpIngで疎通 確認した結果。
aWS側インスタンスからの疎通 確認
[ec2-user@IP-10-20-0-207 ~]$pIng - c 3192 . 168 . 100. 100
PING 192 . 168 . 100. 100(192.168.100.100) 56(84) bytes of data.
64 bytes From 192.168.100.100: icmp _ seq=1 TTL=63Time=9.69 ms
64 bytes From 192.168.100.100: icmp _ seq=2 TTL=63Time=9.51 ms
64 bytes From 192.168.100.100: icmp _ seq=3TTL=63Time=9.77 ms
ー 192.168.100.100pIng statistics ー
3packets trAnsmitted, 3received, 0% packet loss, Time 2003ms
rtt mIn/avg/max/mdev = 9.506/9.655/9.768/0.109 ms
オンプレミス側サーバからの疎通 確認
Cisco @ Server - 0: ~$pIng - c 310.20.0.207
PING 10.20.0.207 (10.20.0.207): 56 data bytes
64 bytes From 10.20.0.207: seq=0TTL=126Time=9.491 ms
64 bytes From 10.20.0.207: seq=1 TTL=126Time=9.595 ms
64 bytes From 10.20.0.207: seq=2 TTL=126Time=9.586 ms
ー 10.20.0.207 pIng statistics ー
3packets trAnsmitted, 3packets received, 0% packet loss
round-trIP mIn/avg/max = 9.491 / 9.557 / 9.595 MS
今回はsite - to - site VPN
でオンプレミス側のネットワーク機器とVPN接続を行ってみました。
IPsec
の接続はハマりどころが多いので中々すんなり行かないことが多いですが、対応しているベンダーのコンフィグであれば、そのまま流し込むだけで設定できるコンフィグファイルをダウンロードすることができるので、設定については比較的簡単に行えるのではないかと思います。
ただ、対応していない機器を使用している場合は、IPsec VPN
の仕様や機器の仕様とにらめっこしながらパラメータを調節していく必要があるため、対応していない機器を使用する場合は検証期間を長くとるようにしましょう。
次回は本題となるtrAnsit gateway
の設定を行ってみようと思います。