AWS サイト間のVPN接続

AWS サイト間のVPN接続

はじめに

今回は、サイト間をVPN接続(Site to Site VPN)をして、VPCに接続して、Privateなサブネットに入れるようにしてみたいと思います。

接続構成

これまでの構成にCustomer Siteが追加され、VPNゲートウェイが設置された状態になります。Customer Site と言っていますが、単に自宅なだけです。テストのため、YAMAHA RTX1100 を自宅に設置しています。

仮想プライベートゲートウェイの作成

VPCダッシュボードより、[仮想プライベートゲートウェイ] を開きます。

[仮想プライベートゲートウェイの作成] をクリックします。

分かりやすい名前をつけて仮想プライベートゲートウェイを作成します。

カスタマーゲートウェイの作成

VPCダッシュボードより、[カスタマーゲートウェイ] を開きます。

[カスタマーゲートウェイの作成] をクリックします。ここでも分かりやすい名前をつけます。IPアドレスはCustomer Site側のグローバルIPアドレスを入力します。Certificate ARNは使用しないので未入力のまま [カスタマーゲートウェイの作成] をクリックします。

ルートテーブルにルーティングの追加

今回はPrivate SubnetへVPNから接続しますので、Private Subnetに割り当てられているルートテーブルを編集していきます。

VPCダッシュボードから直接ルートテーブルを開くか、サブネットから開くかどちらでもいいので、開きやすい方法で対象のルートテーブルを開いてください。

Customer Siteのサブネットを先ほど作成した仮想プライベートゲートウェイ宛の経路をルートテーブルに追加します。

サイト間のVPN接続の作成

VPCダッシュボードから [サイト間のVPN接続の作成] を開きます。

[VPN接続の作成] をクリックします。

名前は分かりやすい名前をつけて、仮想プライベートゲートウェイは先ほど作成したものを選択。カスタマーゲートウェイも先ほど作成したものを選択、ルーティングオプションは 動的にします。

先ほどは省略して書いていましたが、実際の構成はこのようになります。
2つのトンネルを作成し冗長化します。そのためここでは2つのトンネルオプションを設定しています。


それぞれのトンネルのIPアドレスですが、169.254.0.0/16の範囲からCIDRプロックのサイズは/30にします。下記の範囲は予約されているので、それ以外のIPを割り当てます。ここては、169.254.10.0/30と169.254.11.0/30にしました。事前共有キーも何か適当にセットしてください。

【IPアドレスの予約範囲】
・169.254.0.0/30
・169.254.1.0/30
・169.254.2.0/30
・169.254.3.0/30
・169.254.4.0/30
・169.254.5.0/30
・169.254.169.252/30

RTX1100のconfig設定

ここまで来てからやっと自宅のルーターの設定に入ります。といってもAWS側でconfigを用意してくれますので、その内容を流し込むだけです。

VPCダッシュボードの [サイト間のVPN接続] から [設定のダウンロード] をクリックしてください。

そうするとルーターのメーカーと機器を選択するダイアログが出ますので、今回はYAMAHAのRTX用のconfigをダウンロードします。

ダウンロードしたconfigを流し込みます。

流し込みの手順は省略します。

接続確認

しばらく(数分程度)するとそれぞれのトンネルのステータスがアップに変わります。この状態になったら接続完了です。

sshでprivateサブネットにあるEC2インスタンスに対して接続してみます。

問題なく接続できました。