2台構成で冗長化されたec2インスタンスをVPN接続するにはどうすればよいですか?

0

1VPC内に2subnetを切って、そこにそれぞれec2インスタンスを配して冗長化しているのですが、AWS⇔AzureとのVPN接続でつまづいています。

subnet単位で仮想プライベートゲートウェイが組めないようなので、VPC単位で設定していますが、それだとVPNが1つしか張れないと思います。

Azure側は冗長化されていないため、AWSからは対向のピアIPアドレスはひとつでも十分かと思ったのですが、AzureはBGP広報を受けるためAWS側の2台それぞれのCIDRが必要とのことです。

この場合、どのように設定すればよいのでしょうか?

質問済み 2ヶ月前58ビュー
2回答
0
承認された回答

Azureには詳しくないのですが、以下のドキュメントやブログを見る限りだとトンネルが2個設定できるようです。(つまり冗長化されている状態)
AWS側のピアIPは設定ファイルをダウンロードすると2つ記載されていると思います。
https://learn.microsoft.com/ja-jp/azure/vpn-gateway/vpn-gateway-howto-aws-bgp
https://dev.classmethod.jp/articles/site_vpn_azure_aws/
https://qiita.com/tnksth/items/9728cf2e078a386430d4

profile picture
エキスパート
回答済み 2ヶ月前
  • 回答ありがとうございます。 トンネルはVPNに対する冗長化で、VPNはひとつのVPCしか設定できず、トンネル自体をその先のsubnetで冗長化されたCIDR領域に直接設定することもできないのではないかと思います。 それができれば一番いいのですが、何か思い違いがございますでしょうか?

  • AWS側の仮想プライベートゲートウェイ自体は冗長化されているのでサブネットで分割するという概念がありません。 https://dev.classmethod.jp/articles/redundancy-of-aws-site-to-site-vpn/
    複数のVPNコネクションを作成したい場合は以下のブログのようにカスタマーゲートウェイを2つ作成する必要があります。 Azure側のゲートウェイのIPアドレスごとにカスタマーゲートウェイを作成することで解決するのではないかと思います。 https://qiita.com/y_matsuo_/items/c201926f70ffe5963afd#%E6%A1%88aws-vpn-connection%E3%82%922%E3%81%A4%E6%A7%8B%E7%AF%89 https://docs.aws.amazon.com/ja_jp/vpn/latest/s2svpn/Examples.html#MultipleVPN

  • 丁寧にご回答ありがとうございます。

    Azure側は冗長化されていないため、AWSからは対向のピアIPアドレスはひとつでも十分かと思ったのですが、AzureはBGP広報を受けるためAWS側の2台それぞれのCIDRが必要とのことです。

    その後進展ありまして、ピアIPアドレスはVPCのものひとつでもBGP広報は両方から受け取れているようで、通信もできるようになりました。 複数のVPNコネクションを貼ることが目的ではなく、VPCの先のsubnet側2か所と通信するために必要ならその手段としてVPNコネクションも複数用意することを検討しなければならなかっただけなのですが、おそらく現在の状態からそれはゲートウェイにアタッチしたVPCの冗長化によって正しく実現できているようです。

    もう少し通信状態を確認してみますが、このまま解決できるのではないかと考えております。 今回は認識あわせもできまして、大変助かりました。

    どうもありがとうございます。

0

AWS側で冗長化されたEC2インスタンスをAzureとVPN接続する場合、AWS Client VPNを使用することをお勧めします。AWS Client VPNは、単一のVPCに対してクライアントアクセスを可能にし、かつクライアント間の通信も可能にする柔軟な設定ができます。

以下の手順で設定を行うことができます:

  1. AWS Client VPNエンドポイントを作成します。

  2. 作成したClient VPNエンドポイントに対して、VPC内の両方のサブネットをターゲットネットワークとして関連付けます。

  3. 適切な認証ルールを追加し、必要なリソースへのアクセスを許可します。

  4. VPCへのルートを追加します。

  5. Azure側へのルートも追加します。これにより、AWS側の両方のEC2インスタンスからAzureへのトラフィックが可能になります。

  6. 必要に応じて、クライアント間通信を有効にするためのルートを追加します。

この設定により、AWS側の冗長化されたEC2インスタンスからAzureへのVPN接続が可能になります。また、BGPの要件に関しては、AWS側でBGP設定を行い、両方のEC2インスタンスのCIDRをアドバタイズするように設定することで、Azure側の要件を満たすことができます。

なお、セキュリティグループやユーザーグループを使用して、特定のリソースへのアクセスを制限することも可能です。これにより、よりきめ細かなアクセス制御を実現できます。
Sources
How AWS Client VPN works - AWS Client VPN

profile picture
回答済み 2ヶ月前
  • 回答ありがとうございます。 Client VPNはクライアント側端末との通信方法かと思います。 おっしゃっているのはAzureをクライアント端末として設定するようなギミックで解決できるということでしょうか? 実際にこの方法でAzureと設定している外部記事などあれば教えていただけないでしょうか?

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン