ゲートウェイエンドポイント - Amazon Virtual Private Cloud

ゲートウェイエンドポイント

ゲートウェイ VPC エンドポイントは、VPC にインターネットゲートウェイや NAT デバイスを必要とせずに、Amazon S3 および DynamoDB への信頼性の高い接続を提供します。ゲートウェイエンドポイントは、他のタイプの VPC エンドポイントとは異なり、AWS PrivateLink を使用しません。

Amazon S3 と DynamoDB は、ゲートウェイエンドポイントとインターフェイスエンドポイントの両方をサポートしています。オプションの比較については、以下を参照してください。

料金

ゲートウェイエンドポイントは追加料金なしで使用できます。

概要

Amazon S3 と DynamoDB には、パブリックサービスエンドポイントまたはゲートウェイエンドポイントを通じてアクセスできます。この概要では、これらの方法を比較します。

インターネットゲートウェイ経由でアクセスする

次の図は、インスタンスがパブリックサービスエンドポイントを通じて Amazon S3 および DynamoDB にアクセスする方法を示しています。パブリックサブネットのインスタンスから Amazon S3 または DynamoDB へのトラフィックは、VPC のためにインターネットゲートウェイにルーティングされ、その後にサービスにルーティングされます。定義上、プライベートサブネットにはインターネットゲートウェイへのルートがないため、プライベートサブネットのインスタンスは Amazon S3 や DynamoDB にトラフィックを送信できません。プライベートサブネットのインスタンスが Amazon S3 または DynamoDB にトラフィックを送信できるようにするには、パブリックサブネットに NAT デバイスを追加し、プライベートサブネットのトラフィックを NAT デバイスにルーティングする必要があります。Amazon S3 または DynamoDB へのトラフィックはインターネットゲートウェイを通過しますが、AWS ネットワークを離れることはありません。

トラフィックはインターネットゲートウェイを介して VPC を離れますが、AWS ネットワーク内に残ります。
ゲートウェイエンドポイント経由でアクセスする

次の図は、インスタンスがゲートウェイエンドポイントを通じて Amazon S3 および DynamoDB にアクセスする方法を示しています。VPC から Amazon S3 または DynamoDB へのトラフィックは、ゲートウェイエンドポイントにルーティングされます。各サブネットルートテーブルには、サービスのプレフィックスリストを使用して、サービス宛てのトラフィックをゲートウェイエンドポイントに送信するルートが必要です。詳細については、「Amazon VPC ユーザーガイド」の「AWS マネージドプレフィックスリストの提供」を参照してください。

VPC からのトラフィックは、ゲートウェイエンドポイントにルーティングされます。

ルーティング

ゲートウェイエンドポイントを作成するときは、有効にするサブネットの VPC ルートテーブルを選択します。次のルートは、選択した各ルートテーブルに自動的に追加されます。宛先は AWS が所有するサービスのプレフィックスリストであり、ターゲットはゲートウェイエンドポイントです。

デスティネーション ターゲット
prefix_list_id gateway_endpoint_id
考慮事項
  • ルートテーブルに追加されたエンドポイントルートは確認できますが、変更または削除できません。エンドポイントルートをルートテーブルに追加するには、それをゲートウェイエンドポイントに関連付けます。ルートテーブルとゲートウェイエンドポイントの関連付けを解除するか、ゲートウェイエンドポイントを削除すると、エンドポイントルートが削除されます。

  • ゲートウェイエンドポイントに関連付けられたルートテーブルに関連付けられたサブネットのすべてのインスタンスは、ゲートウェイエンドポイントを使用してサービスにアクセスします。これらのルートテーブルに関連付けられていないサブネット内のインスタンスは、ゲートウェイエンドポイントではなくパブリックサービスエンドポイントを使用します。

  • ルートテーブルには、Amazon S3 へのエンドポイントルートと DynamoDB へのエンドポイントルートの両方を含めることができます。同じサービス (Amazon S3 または DynamoDB) へのエンドポイントルートを複数のルートテーブルに含めることができます。1 つのルートテーブルに同じサービス (Amazon S3 または DynamoDB) への複数のエンドポイントルートを持つことはできません。

  • 当社は、トラフィックと一致する最も具体的なルートを使用して、トラフィックをルーティングする方法を決定します (最長プレフィックス一致)。エンドポイントルートのあるルートテーブルの場合、これは次のことを意味します。

    • すべてのインターネットトラフィック (0.0.0.0/0) をインターネットゲートウェイに送信するルートがある場合、現在のリージョンのサービス (Amazon S3 または DynamoDB) 宛てのトラフィックでエンドポイントルートが優先されます。別の AWS のサービス を宛先とするトラフィックは、インターネットゲートウェイを使用します。

    • プレフィックスリストはリージョンに固有であるため、別のリージョンのサービス (Amazon S3 または DynamoDB) 宛てのトラフィックはインターネットゲートウェイに送信されます。

    • 同じリージョンにサービス (Amazon S3 または DynamoDB) の正確な IP アドレス範囲を指定するルートがある場合は、そのルートがエンドポイントルートよりも優先されます。

セキュリティ

インスタンスがゲートウェイエンドポイントを介して Amazon S3 または DynamoDB にアクセスする場合、インスタンスはパブリックエンドポイントを使用してサービスにアクセスします。これらのインスタンスのセキュリティグループは、サービスとの間のトラフィックを許可する必要があります。以下は、アウトバウンドルールの例です。サービスのプレフィックスリストの ID を参照します。

デスティネーション プロトコル ポート範囲
prefix_list_id TCP 443

これらのインスタンスのサブネットにおけるネットワーク ACL でも、サービスとの間のトラフィックを許可する必要があります。以下は、アウトバウンドルールの例です。ネットワーク ACL ルールでプレフィックスリストを参照することはできませんが、プレフィックスリストからサービスの IP アドレス範囲は取得できます。

デスティネーション プロトコル ポート範囲
service_cidr_block_1 TCP 443
service_cidr_block_2 TCP 443
service_cidr_block_3 TCP 443