VPC の用語は、IP ネットワーク、ルーティング、NAT に精通している私たちには少し直感に反するため、次の情報が役立つ場合があります。
明らかに、VPC を使用すると、複数のサブネットを作成し、それらの間でトラフィックをルーティングできます。また、お客様側のハードウェア VPN デバイスと VPC によって提供されるコンパニオン仮想デバイスとの間に確立されたトンネルを介して、お客様のデータ センターにある追加のサブネットにトラフィックをルーティングすることもできます。
「仮想プライベート ゲートウェイ」をプロビジョニングします。これは、AWS 側で VPN を終端する「機器」です。次に、パブリック IP アドレス (Cisco ASA などのお客様側のデバイス) を使用して独自の「カスタマー ゲートウェイ」を宣言します。次に、それらの間の「VPN 接続」を宣言して、これら 2 つのエンティティをバインドします。「VPN 接続」では、VPC ネットワークから企業ネットワークのプライベート IP アドレス空間への静的ルートを宣言します。ローカル デバイスで、トンネルを介して、VPC 内で使用するプライベート IP アドレス空間へのルートを構成します。
引き続き VPC 構成で、VPC のルーティング テーブルを宣言し、[ルートの伝播] の下で、「このルート テーブルの更新を許可する仮想プライベート ゲートウェイを選択する」ことができます。これにより、企業ネットワーク (VPN 接続構成から検出された) を指すルートが VPC ルーティング テーブルに挿入されます。
VPC における最大の混乱点の 1 つは、「パブリック サブネット」と「プライベート サブネット」の用語です。これは、VPC 内のすべてのサブネットがプライベート IP アドレス空間上にあるため、VPC では他の場所とは異なる意味を持ちます。パブリック/プライベートの違いは次のとおりです。
VPC のパブリック サブネットは「インターネット ゲートウェイ」をデフォルト ルートとして使用し、プライベート サブネットは「NAT インスタンス」または VPN トンネルをデフォルト ルートとして使用します。インターネット ゲートウェイは仮想オブジェクトであり、基本的には実際の構成を持たない単なるプレースホルダーであり、パブリック IP アドレスを持つ EC2 インスタンス (パブリック IP アドレスを持つインスタンスのみ) によるインターネット アクセスに使用できます。NAT インスタンスは、独自のパブリック IP アドレスを持たない内部マシンからのトラフィックを受け入れ、そのトラフィックを外部 IP アドレスから発信されたものとして偽装するカスタム ソフトウェア イメージを実行する EC2 マシンです。これにより、トラフィックをインターネット経由で送信できます。パブリック IP アドレスのない EC2 インスタンスから内部的に発生した場合でも。インターネットからのリターン トラフィックは、NAT インスタンスにアドレス指定されます。
NAT インスタンスの非常に直感に反する点は、「パブリック」サブネットでプロビジョニングする必要があるにもかかわらず、「プライベート」サブネットでプロビジョニングされたインスタンスのデフォルト ゲートウェイとして機能することです。従来、デフォルト ゲートウェイは独自のサブネット上にありますが、VPC ではそうではなく、完全に機能します。
私がこれまで書いてきたことからわかることは、あなたが達成しようとしていることと、「プライベート」サブネットは VPC での意味ですが、必要に応じて後で使用できるように、ウィザードを使用して設定することをお勧めします。プライベートサブネットが必要ない理由は、プライベートサブネットは、インターネットにアクセスできる必要のないEC2 インスタンスを構成する場所であり、質問でその必要性について言及していないためです。
たとえば、企業ネットワークが 172.16.0.0/16 で、プライベート IP ネットワーク 192.168.0.0/16 が企業ネットワークの番号付けと競合しない場合、VPC を 192.168.0.0/16 として宣言し、次に宣言することができます。 、192.168.20.0/24 (192.168.0.0/16 内にある) をパブリックサブネットとして。ハードウェア VPN デバイスで、トンネルを介して 192.168.0.0/16 を VPC にルーティングし、VPC 内でトンネルを介して 172.16.0.0/16 をルーティングし、企業ネットワークに戻します。
私が説明したのは主に「VPC シナリオ 3 」であり、 VPC シナリオ 2で確認できる NAT インスタンスが追加されています。NAT インスタンスの理由は、サーバーを「プライベート」VPC サブネットに配置した場合、シナリオ 3 では、サーバーにルーティングを戻す以外に、アウトバウンド ベースでインターネットにアクセスする機能 (たとえば、ソフトウェアの更新を取得するため) が提供されないためです。私には不必要な旅行のように思えますが、あなたのセキュリティ哲学に依存します.
Elastic Load Balancer の使用を検討している場合は、ELB を「パブリック」サブネットにプロビジョニングする必要がありますが、ELB を提供するインスタンスを「プライベート」サブネットに配置することもできます。この場合、インターネットから直接アクセスできる必要があるのは ELB のみであり、セキュリティ グループと VPC ルーティング テーブルで許可されている場合、ELB は VPC 内の任意のサブネット上のインスタンスにアクセスできます。
ただし、元の質問で説明したセットアップでは、「プライベート」サブネットとは何かの VPC 定義に基づいて必要な「プライベート」サブネットはありません。Web サーバーはプライベート IP アドレスを持つ「パブリック」サブネット上にあり、パブリック アドレス空間から Elastic IP を使用し、そのネットワークは VPN 経由で企業ネットワークに直接ルーティングできます。