【AWS VPN】AWS Site To Site VPNでオンプレミスとAWS間のネットワークを接続する方法

記事タイトルとURLをコピーする

こんにちは!イーゴリです。

本件の記事では、AWSのSite to site VPNでオンプレミス環境のネットワークをAWSのVPC(Virtual Private Cloud)と接続する方法をご紹介したいと思います。

構成図

構成図

構築する前に知っておくべきこと

AWSのBlackbeltからのまとめ

構築する前に下記のBlackbeltを読むことをおすすめ致しますが、下記でもっとも重要なポイントをまとめます。

aws.amazon.com

AWS側との接続方法

まずはAWSと接続する方法は3つあります。

  • Client VPN(VPNクライアントソフトウェアを使用し、AWS環境に接続)
  • Site to site VPN(インターネット網での環境A←→環境Bの接続)★本件の記事では、この方法を紹介します。
  • Direct Connect(閉域網での環境A←→環境Bの接続)

Site to site VPNのユースケース

Site to site VPNのユースケースは下記となります。

  • 拠点とAWSを簡単に早く接続したい
  • 価格重視/スモールスタート
  • Direct Connectのバックアップ回線

ルーティングの推奨タイプ

静的より動的(BGP)のルーティングタイプを推奨します。

ゲートウェイタイプ

用途によって、ゲートウェイタイプが使い分けられています。

  • VGW(仮想プライベートゲートウェイ):特定のVPCのみと通信
  • TGW(トランジットゲートウェイ):多くのVPCと通信(VPN料金の他にTGWの料金も発生する)

本件の記事では、VGW(仮想プライベートゲートウェイ)を使用します。

その他の考慮事項

  • IPsec対応ルーターと固定Public IPがあれば、容易に環境構築可能(事前共有キーによる認証方式)
  • プライベート証明書による認証の場合、非固定Public IPに対応
  • 不要になったらすぐに停止できる(時間課金+転送量に課金)
  • AWSがIKEv2の利用を推奨しているため、ご利用デバイスがIKEv2に対応している場合、IKEv2を利用します。

ASNについて

本件の記事では、私の場合、他のASNがないためデフォルト値を残しますが、対象システムに他の重複するASNがないか確認する必要があります。

自律システム番号 (ASN) はBGP(「Border Gateway Protocol」の略)のルーティングプロトコルに使用されています。IPと同じくASN(他の呼び方:AS番号 / 自律システム番号)はICANNという組織によって、RIR(Reginal Internet Registry)にブロック単位で割り当てられており、グローバルASN(自律システム番号)とプライベートASN(自律システム番号)が存在します。

ASN(自律システム番号) ASN(自律システム番号)の範囲 用途
グローバルASN 1 ~ 64511 インターネット全体で使用されている
プライベートASN 64512 ~ 65535 組織内部で自由に使用できるASN(自律システム番号)

詳しくは下記の記事をご参考ください。

BGP及びASNについての参考記事:

ja.wikipedia.org

www.infraexpert.com

 

弊社の杉村がAS番号についてとても分かりやすい記事を作成したので、ご参考ください。 blog.serverworks.co.jp

AWS Site To Site VPNでオンプレミスとAWS間のネットワークを接続する方法(VGWの方法)

カスタマーゲートウェイの作成(対向側)

イメージ図

まずはルータ側のエンドポイントを作成するために、カスタマーゲートウェイを作成します。

[VPC]>[カスタマーゲートウェイ]>[カスタマーゲートウェイの作成]をクリックします。

[カスタマーゲートウェイの作成]の画面で、下記の項目を入力し、[カスタマーゲートウェイの作成]ボタンをクリックします。

  • [名前]:任意ですが、私の場合、「prod-on-premise-cgw」を入力します。
  • [ルーティング]:動的(AWSに推奨されているルーティングタイプ)
  • [BGP ASN]:私の場合、他のASNが使用されていないため、デフォルトの「65000」を残します。
  • [IPアドレス]:オンプレミス側のルーターのGlobal IPアドレスを入力します。

仮想プライベートゲートウェイの作成(VPC側)

イメージ図

VPC側のエンドポイントを作成します。

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

[仮想プライベートゲートウェイの作成]の画面で、下記の項目を入力し、[仮想プライベートゲートウェイの作成]ボタンをクリックします。

  • [名前タグ]:任意ですが、私の場合、「prod-vgw」を入力します。
  • [ASN]:私の場合、他のASNが使用されていないため、AmazonのデフォルトASNを選択します(AmazonのデフォルトASN:64512)。

※他のASNを指定したい場合、[カスタムASN]を選択した上、適切なASNを入力してください。

VGW(仮想プライベートゲートウェイ)をVPCにアタッチするために、対象のVGW(仮想プライベートゲートウェイ)を選択し、[アクション]>[VPCにアタッチ]をクリックします。

[VPCにアタッチ]の画面で、対象のVPCを選択した上、[はい、アタッチします]をクリックします。

VPCがアタッチされていることを確認します。

ルートテーブルの伝播の有効化

イメージ図

[VPC]>[ルートテーブル]>対象サブネットのルートテーブルを選択>[アクション]タブ>[ルート伝播の編集]をクリックします。

対象の仮想プライベートゲートウェイの伝播の「有効化」のそばにチェックし、[保存]をクリックします。

私の場合、プライベートサブネットごとにルートテーブルを分けていますので、上記の手順と同じく2つ目のルートテーブルで伝播の「有効化」を設定します。

サイト間の VPN 接続の作成

イメージ図

[VPC]>[サイト間のVPN接続]>[VPN接続の作成]をクリックします。

[VPN接続の作成]の画面で、下記の設定を行った上、[VPN接続の作成]をクリックします。

  • [名前タグ]:任意ですが、私の場合、「prod-vpn」を入力します。
  • [Target Gateway Type]:VGWの方法でVPNを接続する方法をご紹介しているため、「Virtual Private Gateway」を選択しますが、必要に応じて、適切な接続方法を選択してください。
  • [仮想プライベートゲートウェイ]:前回のステップで作成した仮想プライベートゲートウェイ (prod-vgw)を選択します。

  • [カスタマーゲートウェイ]:前回のステップで「prod-on-premise-cgw」のカスタマーゲートウェイを作成したので、「既存」を選択します。
  • [カスタマーゲートウェイ ID]:前回のステップで作成したカスタマーゲートウェイ (prod-on-premise-cgw)を選択します。

  • BGPを使用する予定のため、[ルーティングオプション]で[動的 (BGP が必要)]を選択します。
  • IPv4を使用する予定のため、[トンネル内部 IP バージョン]で[IPv4]を選択します。
  • [ローカル IPv4 ネットワーク Cidr]:デフォルトのまま(0.0.0.0/0)設定します。

  • [リモート IPv4 ネットワーク Cidr]:デフォルトのまま(0.0.0.0/0)設定します。

トンネルオプションをそのまま残します(この場合、AWS側で自動生成となります)。次は[VPN接続の作成]をクリックします。

前回のステップで、ルートテーブルに伝播を有効化したため、ルートテーブルに静的なルートを追加する必要はありません。

AWSコンソール上の設定が完了です!

対象ルータの設定ファイルのダウンロード

ルータによって設定コマンドが異なるため、本件の記事では具体的なコマンドをご紹介できませんが、AWSコンソール上で、コンフィグの例があるため、対象ルータの設定ファイルの取得方法をご紹介します。

[VPC]>[サイト間のVPN接続]>[ファイルのダウンロード] をクリックします。

[ベンダー]などの必要な項目を選択した上、[ダウンロード]をクリックしますと、ローカル端末にコンフィグファイルがダウンロードされます。

必要に応じてルータのコンフィグを修正し、導入します。

以上、御一読ありがとうございました。

本田 イーゴリ (記事一覧)

カスタマーサクセス部

・2024 Japan AWS Top Engineers (Security)
・AWS SAP, DOP, SCS, DBS, SAA, DVA, CLF
・Azure AZ-900
・EC-Council CCSE

趣味:日本国内旅行(47都道府県制覇)・ドライブ・音楽