4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWSとオンプレ環境をインターネットVPNのSite to Site(IKEv1)で接続する手順

Last updated at Posted at 2021-04-22

#背景と雑談

  • クラウドVPNの第二弾として、自分のメモも兼ねてステップバイステップでAWSとのVPN接続手順を紹介します。
  • AWSではVPNを作る度に、pre-shared-keyやAWS側のグローバルIPが変更されます。コスト削減で接続と切断を繰り返す場合はAzureに比べて非常に煩雑なのでご注意ください。
  • 余談ですがVPNの接続スピードの上限ですが、AWSは1.25Gbps、Azureは選択式、GCPは3Gbps(上り下りの合計)とのことです。(後述)
  • Azure VPN接続手順は以下からご覧ください。
    https://qiita.com/kan_itani/items/0cda4479b61d543c8dde
  • GCP版も近日中に作成予定です。

#目次

  1. 構成イメージ
  2. 事前確認・注意事項
  3. AWSのVPC内のネットワーク作成
  4. 仮想プライベートゲートウェイ(VGW)の作成
  5. VPCに仮想プライベートゲートウェイ(VGW)をアタッチ
  6. カスタマーゲートウェイの作成
  7. VPNコネクションの作成
  8. オンプレ側ルータ設定
  9. VPCのルートテーブル設定変更
  10. VPCのFirewall設定変更
  11. VPNのトンネル状態確認とルーティングテーブル確認
  12. 関連情報

#1. 構成イメージ
以下はAzure VPN編で使った構成図ですが、サブネットが違うだけであとは似たような感じなので(←適当すぎる)、そのまま絵を流用します。
image.png

  • 192.168.70.0/24 → 今回は192.168.65.0/24
  • 172.16.0.0/16 → 今回は172.31.0.0/16がAWS側のネットワーク
    • 実際にAWS側に存在するサブネットは以下の3つです。
      172.31.0.0/20
      172.31.16.0/20
      172.31.32.0/20

サブネット一覧は以下の通りです。
image.png

#2. 事前確認・注意事項

  • ネットワーク設計
    • (当たり前ですが)オンプレとAWSでそれぞれサブネットがかぶらないようにネットワークを割り当てます。
    • この手順ではVPC内のネットワーク作成手順は省略します。(デフォルトで3つ作られていたため。)
  • VPN接続用の共通パスワードの準備
    • 今回の手順ではpre-shared-keyは意識することなく設定できます。(自動生成&ダウンロードするルーターconfigに含まれているため)
  • グローバルIPの確認
    • 事前にオンプレミス側のVPN接続用ルータのグローバルIPを確認します。
    • AWS側は特に意識しなくてもこの手順実施後にダウンロードできるルータコンフィグにグローバルIPが含まれます。
  • 接続する回線速度の検討
    • Azureの場合は設定画面でSKUを選ぶことができましたが、AWSは以下のFAQに記載があるように、1.25Gbpsが最大とのことです。
      https://aws.amazon.com/jp/vpn/faqs/
      • Q: サイト間 VPN 接続の最大スループットはどれくらいですか?
      • A: 各 AWS サイト間 VPN 接続には 2 つのトンネルがあり、各トンネルは最大 1.25 Gbps のスループットをサポートします。VPN 接続が仮想プライベートゲートウェイに接続されている場合、集約されたスループット制限が適用されます。
    • GCPの場合は3Gbps(上りと下りの合計)が性能上限とのことです。
      Cloud VPN - 割り当てと上限
      https://cloud.google.com/network-connectivity/docs/vpn/quotas?hl=ja#limits

#3. AWSのVPC内のネットワーク作成
「Subnets」を見るとデフォルトで3つのセグメントが作られていたので、ここでは特に設定しません&手順は省略します。
image.png

#4. 仮想プライベートゲートウェイ(VGW)の作成
(1) 「Virtual Private Gateways」を選び、「Create Virtual Private Gateway」を選択します。
image.png

(2) VGWのパラメーターを入力
「Name tag」に任意の文字列を入力します。
「ASN」はCustom ASNを選択し、値は既存の他のVPNやDirect Connectで使っていない値を入力します。

  • 16ビットASNは64512~65534のレンジで指定。
  • 32ビットASNは4200000000~4294967294のレンジで指定。
    image.png

(3) 作成結果を確認
image.png

#5. VPCに仮想プライベートゲートウェイ(VGW)をアタッチ
(1) アタッチ前のデタッチ
この環境は直前までAWSのDirect Connectを使ってVPCのサブネットとオンプレミスで通信を行っていました。以下の絵にあるように、すでに1つVGWがアタッチされているため、別のVGWはアタッチできません。使わないものを先にデタッチします。
image.png

(2) VPCにVGWをアタッチ
作成したVPN用のVGWを選択し、画面上部の「Actions」から「Attach to VPC」を選択。
image.png

VPCをプルダウンメニューから選択し。「Yes, Attach」を選択。
image.png

「attaching」というステータスが「attached」になるまで少しかかるので、次の作業に進みます。
image.png

#6. カスタマーゲートウェイの作成
(1) 「Customer Gateways」→「Create Customer Gateway」を選択。
image.png

(2) カスタマーゲートウェイの名前を入力し、Routingを「Static」、「IP Address」にオンプレ環境のルータのグローバルIPを入力し、「Create Customer Gateway」を選択。
image.png

(3) 作成が成功することを確認
image.png

#7. VPNコネクションの作成
(1) 事前チェック - VGWをVPCにアタッチした結果の確認
VPNコネクションを作成する前に、5.の手順でVGW(Virtual Private Gateway)をVPCにアタッチする作業を行いましたが、それが成功しているか確認します。
image.png

(2) 「Site-toSite VPN Connections」→ 「Create VPN Connection」を選択
image.png

(3) 各種設定を入力します。

設定項目 備考
Name tag 任意の文字列
Target Gateway Type Virtual Private Gateway
Virtual Private Gateway 作成したものをプルダウンから選択。
Customer Gateway Existing
Customer Gateway ID 作成したものをプルダウンから選択。
Routing Options Dynamic (require BGP)
Tunnel Inside Ip Version IPv4
Local IPv4 Network Cidr 192.168.65.0/24 オンプレ側のネットワーク
Remote IPv4 Network Cidr 172.31.0.0/16 AWS側のネットワーク

image.png

その他「Tunnel Options」はそのままで、「Create VPN Connection」を選択。
image.png

成功したことを確認。
image.png

#8. オンプレ側ルータ設定
(1) 直前の手順で「Close」を押下すると以下の画面になるので、「Download Configuration」を選択。
※以下の画面で「State」が「pending」になってますが、そのまま続行します。
image.png

(2) ポップアップ画面でルータ機種を選択し、Configをダウンロード

※Yamaha RTX1210のConfigをダウンロードする際は、ikev1を選択してください。(2021-10-01時点)
image.png

(3) ルータ側にConfigを投入します。
※ 詳細省略

#9. VPCのルートテーブル設定変更
ここまでの手順がうまくいっていると、VPNコネクションの「State」も「available」になりますが、オンプレとAWSはまだ通信ができません。
image.png

(1)「Your VPCs」→「Main route table」のルートテーブルをクリックします。
image.png

(2) ルートテーブルが選択されているので、「Route Propagation」→ 「Edit route propagation」を選択。
image.png

(3) 「Propagate」をチェック → 「Save」
image.png

#10. VPCのFirewall設定変更
(1) 「Security Group」 → 「Edit inbound rules」
image.png

(2) 「Add rule」でオンプレミス環境からの通信を許可する設定を入れて、「Save rules」で保存。
image.png

ここまで終わると、オンプレからpingが通るようになります。

#11. VPNのトンネル状態確認とルーティングテーブル確認
(1) トンネル状態の確認
「Site-to-Site VPN Connection」 → VPNコネクションを選択 → 「Tunnel Details」タブを選択 → 「Status」がUPとなっていることを確認・
image.png

(2) ルーティングテーブル確認
「Route Tables」 → ルートテーブルを選択 → 「Routers」タブを選択 → 下段にオンプレ側のサブネットが表示され、仮想プライベートゲートウェイ(VGW)がTargetになっていることを確認。
image.png

#12. 関連情報

(追記中)

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?