Amazon VPC の仕組み - Amazon Virtual Private Cloud

Amazon VPC の仕組み

Amazon Virtual Private Cloud (Amazon VPC) を使用すると、論理的に隔離されている定義済みの仮想ネットワーク内で AWS リソースを起動できます。仮想ネットワークは、お客様自身のデータセンターで運用されていた従来のネットワークによく似ていますが、AWS のスケーラブルなインフラストラクチャを使用できるというメリットがあります。

以下は、AWS Management Console を使用した VPC の作成時に表示される [プレビュー] ペインの VPC とそのリソースを視覚的に表現したものです。既存の VPC の場合、この図には [リソースマップ] タブからアクセスできます。この例では、VPC と他のネットワークリソースの作成を選択した際に [VPC を作成] ページで最初に選択されるリソースを示しています。この VPC は、1 つの IPv4 CIDR および Amazon が提供した 1 つの IPv6 CIDR、2 つのアベイラビリティーゾーンのサブネット、3 つのルートテーブル、1 つのインターネットゲートウェイ、1 つのゲートウェイエンドポイントで構成されています。この図では、インターネットゲートウェイを選択したことで、対応するルートテーブルがトラフィックをインターネットゲートウェイに送信するため、パブリックサブネットからのトラフィックがインターネットにルーティングされていることを示しています。

2 つの AZ のサブネット、3 つのルートテーブル、インターネットゲートウェイ、ゲートウェイエンドポイントを持つ VPC

VPC とサブネット

‬仮想プライベートクラウド (VPC)‭‬ は、AWS アカウント専用の仮想ネットワークです。VPC は、AWS クラウドの他の仮想ネットワークから論理的に切り離されています。VPC の IP アドレス範囲を指定して、サブネットを追加し、ゲートウェイを追加して、セキュリティグループを関連付けます。

サブネットは、VPC の IP アドレスの範囲です。Amazon EC2 インスタンスなどの AWS リソースを VPC サブネット内部で起動します。サブネットをインターネット、他の VPC、および独自のデータセンターに接続し、ルートテーブルを使用してサブネット間でトラフィックをルーティングできます。

デフォルトの VPC とデフォルト以外の VPC

アカウントが 2013 年 12 月 4 日以降に作成されている場合、各リージョンにデフォルトの VPC があります。デフォルトの VPC は設定済みで、すぐに使用できます。例えば、この VPC には、リージョンの各アベイラビリティーゾーンのデフォルトサブネット、アタッチされたインターネットゲートウェイ、すべてのトラフィックをインターネットゲートウェイに送信するメインルートテーブルのルート、およびパブリック IP アドレスを持つインスタンスに DNS ホスト名を自動的に割り当てて、Amazon が提供する DNS サーバーを介して DNS 解決を有効にする DNS 設定、が含まれています (「VPC 内の DNS 属性」を参照)。そのため、デフォルトサブネットで起動された EC2 インスタンスは、自動的にインターネットにアクセスできます。リージョンにデフォルトの VPC があり、そのリージョンでの EC2 インスタンス起動時にサブネットを指定しなかった場合は、デフォルトサブネットの 1 つを選択して、そのサブネットでインスタンスを起動します。

独自の VPC を作成し、必要に応じて設定することもできます。これはデフォルト以外の VPC と呼ばれます。デフォルト以外の VPC で作成するサブネット、そしてデフォルト VPC で作成する追加サブネットは、デフォルト以外のサブネットと呼ばれます。

ルートテーブル

ルートテーブルは、VPC からのネットワークトラフィックの経路を決めるために使用される一連のルール (ルートと呼ばれます) で構成されます。サブネットを特定のルートテーブルに明示的に関連付けることができます。それ以外の場合、サブネットはメインルートテーブルに暗黙的に関連付けられます。

ルートテーブル内の各ルートは、トラフィックを移動させる IP アドレスの範囲 (宛先) と、トラフィックを送信するゲートウェイ、ネットワークインターフェイス、または接続 (ターゲット) を指定します。

インターネットへのアクセス

VPC 内に起動するインスタンスが VPC 外のリソースにどのようにアクセスするかをコントロールします。

デフォルト VPC にはインターネットゲートウェイが含まれ、各デフォルトサブネットはパブリックサブネットです。デフォルトサブネット内に起動するインスタンスにはそれぞれ、プライベート IPv4 アドレスとパブリック IPv4 アドレスが割り当てられています。これらのインスタンスは、このインターネットゲートウェイを介してインターネットと通信できます。インターネットゲートウェイを使用することで、インスタンスは Amazon EC2 ネットワークエッジを介してインターネットに接続できます。

デフォルトでは、デフォルト以外のサブネットで起動した各インスタンスにはプライベート IPv4 アドレスが割り当てられていますが、パブリック IPv4 アドレスは割り当てられていません。ただし、起動時に明示的にパブリック IP アドレスを割り当てた場合や、サブネットのパブリック IP アドレス属性を変更した場合は例外です。これらのインスタンスは相互に通信できますが、インターネットにアクセスできません。

デフォルト以外のサブネットで起動するインスタンスのインターネットアクセスを有効にするには、インターネットゲートウェイをその VPC (デフォルト VPC でない場合) にアタッチし、インスタンスに Elastic IP アドレスを関連付けます。

または、VPC のインスタンスによるインターネットへのアウトバウンド接続の開始を許可し、インターネットからの未承諾のインバウンド接続を拒否するには、ネットワークアドレス変換 (NAT) デバイスを使用できます。NAT では、複数のプライベート IPv4 アドレスが 1 つのパブリック IPv4 アドレスにマッピングされます。NAT デバイスを elastic IP アドレスで構成し、インターネットゲートウェイを介してインターネットに接続できます。これにより、NAT デバイスを介してプライベートサブネットのインスタンスをインターネットに接続できるようになり、トラフィックがインスタンスからインターネットゲートウェイにルーティングされ、すべての応答がインスタンスにルーティングされます。

IPv6 CIDR ブロックを VPC に関連付けて IPv6 アドレスをインスタンスに割り当てると、インスタンスはインターネットゲートウェイを介して IPv6 経由でインターネットに接続できます。また、インスタンスは、Egress-only インターネットゲートウェイを使用して IPv6 経由でインターネットへのアウトバウンド接続を開始できます。IPv6 トラフィックは IPv4 トラフィックと異なるため、IPv6 トラフィックの別のルートをルートテーブルに含める必要があります。

企業ネットワークまたはホームネットワークにアクセスする

オプションで、IPsec AWS Site-to-Site VPN 接続を使用して VPC を自社のデータセンターに接続すると、AWS クラウドをデータセンターの延長として利用できます。

Site-to-Site VPN 接続は、AWS 側の仮想プライベートゲートウェイまたは Transit Gateway と、データセンターにあるカスタマーゲートウェイデバイスとの間の 2 つの VPN トンネルで構成されます。カスタマーゲートウェイデバイスは、Site-to-Site VPN 接続のお客様側で設定する物理デバイスまたはソフトウェアアプライアンスです。

VPC とネットワークの接続

2 つの VPC 間に VPC ピアリング接続を作成して、それらの間のトラフィックをプライベートにルーティングできます。どちらの VPC のインスタンスも、同じネットワーク内に存在しているかのように、相互に通信できます。

また、Transit Gateway を作成し、それを使用して VPC とオンプレミスのネットワークを相互接続することもできます。Transit Gateway は、アタッチメント間で流れるトラフィックのリージョン仮想ルーターとして機能します。これには、VPC、VPN 接続、AWS Direct Connect ゲートウェイ、および Transit Gateway ピア接続が含まれます。

AWS プライベートグローバルネットワーク

AWS は、お客様のネットワークニーズに対応するために、セキュアなクラウドコンピューティング環境を提供する、高パフォーマンスで低レイテンシーのプライベートグローバルネットワークを提供します。AWSリージョンは複数のインターネットサービスプロバイダー (ISP) や、プライベートグローバルネットワークバックボーンに接続され、それによりお客様が送信したクロスリージョントラフィックに対して高いネットワークパフォーマンスが提供されます。

以下の考慮事項に注意してください。

  • すべてのリージョンのアベイラビリティーゾーン内またはアベイラビリティーゾーン間のトラフィックは、AWS プライベートグローバルネットワーク経由でルーティングされます。

  • リージョン間のトラフィックは、中国リージョンを除き、常に AWS プライベートグローバルネットワーク経由でルーティングされます。

ネットワークパケットの損失は、ネットワークフローの衝突、下位レベル (レイヤー2) のエラー、その他のネットワーク障害など、さまざまな要因によって引き起こされる可能性があります。パケット損失を最小限に抑えるために、当社はネットワークを設計および運用しています。AWS リージョンを接続するグローバルバックボーン全体のパケットロス率 (PLR) を測定しています。当社のバックボーンネットワークは、1時間あたりの PLR の p99 が 0.0001% 未満になるように運用されています。