インターネットゲートウェイ - Amazon Virtual Private Cloud

インターネットゲートウェイ

インターネットゲートウェイは、VPC とインターネットとの間の通信を可能にする VPC コンポーネントであり、冗長性と高い可用性を備えており、水平スケーリングが可能です。

インターネットゲートウェイは 2 つの目的を果たします。1 つは、インターネットでルーティング可能なトラフィックの送信先を VPC のルートテーブルに追加することです。もう 1 つは、パブリック IPv4 アドレスが割り当てられているインスタンスに対してネットワークアドレス変換 (NAT) を行うことです。

インターネットゲートウェイは、IPv4 トラフィックおよび IPv6 トラフィックをサポートしています。ネットワークトラフィックに可用性のリスクや帯域幅の制約が発生することはありません。

インターネットアクセスを有効にする

VPC のサブネット内のインスタンスでインターネットのアクセスを有効にするには、以下を実行する必要があります。

  • VPC にインターネットゲートウェイをアタッチする。

  • インターネットバウンドトラフィックをインターネットゲートウェイに転送するルートを、サブネットのルートテーブルに追加します。サブネットに関連付けられているルートテーブルにインターネットゲートウェイへのルートがある場合、そのサブネットは「パブリックサブネット」と呼ばれます。インターネットゲートウェイへのルートを持たないルートテーブルに関連付けられているサブネットは、「プライベートサブネット」と呼ばれます。

  • サブネットのインスタンスに、グローバルに一意な IP アドレス (パブリック IPv4 アドレス、Elastic IP アドレス、IPv6 アドレス) が割り当てられていることを確認します。

  • ネットワークアクセスコントロールリストとセキュリティグループルールがインスタンス間で関連するトラフィックを許可していることを確認します。

サブネットルートテーブルでは、インターネットゲートウェイのルートに、ルートテーブルに明示的に知られていないすべての宛先 (0.0.0.0/0 の場合は IPv4、::/0 の場合は IPv6) を指定することができます。または、より狭い範囲の IP アドレスにルートを絞り込むこともできます。たとえば、AWS 外部にある会社のパブリックエンドポイントのパブリック IPv4 アドレスや、VPC 外部にある他の Amazon EC2 インスタンスの Elastic IP アドレスなどです。

IPv4 でインターネット通信できるようにするには、パブリック IPv4 アドレス、またはインスタンスのプライベート IPv4 アドレスに関連付けられる Elastic IP アドレスが必要です。インスタンスは、VPC とサブネット内で定義されたプライベート(内部)IP アドレス空間のみを認識します。インターネットゲートウェイはインスタンスに代わって 1 対 1 の NAT を論理的に行います。そのため、トラフィックが VPC サブネットから出てインターネットへ向かうとき、返信アドレスフィールドは、インスタンスのプライベート IP アドレスではなくパブリック IPv4 アドレスまたは Elastic IP アドレスに設定されます。逆に、インスタンスのパブリック IPv4 アドレスまたは Elastic IP アドレス宛てのトラフィックは、その送信先アドレスがインスタンスのプライベート IPv4 アドレスに変換されてから、VPC に配信されます。

IPv6 のインターネット経由の通信を有効にするには、VPC およびサブネットは IPv6 CIDR ブロックと関連付け、インスタンスはサブネットの範囲の IPv6 アドレスに割り当てる必要があります。IPv6 アドレスは、グローバルに一意であるため、デフォルトではパブリックアドレスになっています。

次の図では、VPC のサブネット 1 はパブリックサブネットです。サブネット 1 は、カスタムルートテーブルと関連付けられており、インターネット経由の IPv4 トラフィックはすべてインターネットゲートウェイにポイントされます。このインスタンスには、インターネットとの通信を有効にする Elastic IP アドレスが割り当てられています。


                インターネットゲートウェイの使用

パブリック IP アドレスを割り当てずにインスタンスにインターネットアクセスを提供するには、代わりに NAT デバイスを使用できます。詳細については、「NAT」を参照してください。

デフォルトとデフォルト以外の VPC へのインターネットアクセス

次の表では、IPv4 または IPv6 経由でインターネットアクセスに必要なコンポーネントが VPC に自動的に付与されるかどうかについて示します。

コンポーネント デフォルト VPC デフォルトではない VPC
インターネットゲートウェイ はい 最初または 2 番目のオプションを使用して VPC を作成した場合は自動的に付与されます。それ以外の場合は、インターネットゲートウェイを手動で作成してアタッチする必要があります。
IPv4 トラフィックのインターネットゲートウェイ (0.0.0.0/0) にルーティングするルートテーブル。 はい 最初または 2 番目のオプションを使用して VPC を作成した場合は自動的に付与されます。それ以外の場合は、手動でルートテーブルを作成し、ルーティングテーブルを追加する必要があります。
IPv6 トラフィックのインターネットゲートウェイ (::/0) にルーティングするルートテーブル。 いいえ VPC ウィザードで、最初または 2 番目のオプションを使用して VPC を作成した場合や、IPv6 を VPC CIDR ブロックを関連付けるオプションを指定した場合は自動的に付与されます。それ以外の場合は、手動でルートテーブルを作成し、ルーティングテーブルを追加する必要があります。
サブネットに起動されるインスタンスに自動的に割り当てられたパブリック IPv4 アドレス。 Yes (デフォルトサブネット) No (デフォルト以外のサブネット)
サブネットに起動されるインスタンスに自動的に割り当てられた IPv6 アドレス。 いいえ (デフォルトサブネット) No (デフォルト以外のサブネット)

デフォルト VPC の詳細については、「デフォルト VPC とデフォルトサブネット」を参照してください。VPC ウィザードを使用して、インターネットゲートウェイを使う VPC を作成する方法の詳細については、「1 つのパブリックサブネットを持つ VPC」または「パブリックサブネットとプライベートサブネットを持つ VPC (NAT)」を参照してください。

VPC 内の IP アドレス、インスタンスにパブリック IPv4 または IPv6 アドレスを割り当てる方法を制御する方法の詳細は、「VPC の IP アドレス指定」を参照してください。

新しいサブネットを VPC に追加するとき、サブネットに必要なルーティングとセキュリティを設定する必要があります。

インターネットゲートウェイを VPC に追加する

ここでは、パブリックサブネットを手動で作成し、インターネットアクセスをサポートするために VPC にインターネットゲートウェイをアタッチする方法について説明します。

サブネットを作成する

サブネットを VPC に追加するには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで [Subnets] を選択し、続いて [Create Subnet] を選択します。

  3. [Create Subnet] ダイアログボックスで、[VPC]、[アベイラビリティーゾーン] の順に選択し、サブネットの IPv4 CIDR ブロックを指定します。

  4. (オプション、IPv6 のみ) [IPv6 CIDR block] で、[Specify a custom IPv6 CIDR] を選択します。

  5. [Yes, Create] を選択します。

サブネットの詳細については、「VPC とサブネット」を参照してください。

インターネットゲートウェイの作成とアタッチ

インターネットゲートウェイを作成した後で、それを VPC にアタッチします。

インターネットゲートウェイを作成して VPC にアタッチするには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで [インターネットゲートウェイ] を選択してから、[インターネットゲートウェイの作成] を選択します。

  3. 任意でインターネットゲートウェイに名前を付け、[作成] を選択します。

  4. 作成したインターネットゲートウェイを選択して、[アクション]、[VPC にアタッチ] を選択します。

  5. リストから VPC を選択し、[アタッチ] を選択します。

カスタムルートテーブルを作成する

サブネットを作成すると、VPC のメインルートテーブルと自動的に関連付けられます。デフォルトでは、メインルートテーブルにインターネットゲートウェイへのルートは含まれません。次の手順では、VPC の外部あてのトラフィックをインターネットゲートウェイに送信するルートを含むカスタムルートテーブルを作成してから、それをサブネットに関連付けます。

カスタムルートテーブルを作成するには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで [Route Tables] を選択して、[Create Route Table] を選択します。

  3. [Create Route Table] ダイアログボックスで、必要に応じてルートテーブルに名前を指定し、VPC を選んでから、[Yes, Create] を選択します。

  4. 作成したカスタムルートテーブルを選択します。詳細ペインには、ルート、関連付け、ルートのプロパゲーションを操作するタブが表示されます。

  5. [Routes] タブで、[Edit]、[Add another route] の順に選択し、必要に応じて以下のルートを選択します。以上が完了したら、[Save] を選択します。

    • IPv4 トラフィックの場合、[送信先] ボックスで 0.0.0.0/0 を指定し、[ターゲット] リストでインターネットゲートウェイ ID を選択します。

    • IPv6 トラフィックの場合、[送信先] ボックスで ::/0 を指定し、[ターゲット] リストでインターネットゲートウェイ ID を選択します。

  6. [Subnet Associations] タブで [Edit] を選択し、サブネットの [Associate] チェックボックスをオンにして、[Save] を選択します。

詳細については、「ルートテーブル」を参照してください。

インターネットアクセス用セキュリティグループの作成

デフォルトでは、VPC セキュリティグループは、すべてのアウトバウンドトラフィックを許可します。新しいセキュリティグループを作成し、インターネットからのインバウンドトラフィックを許可するルールを追加できます。その後、セキュリティグループをパブリックサブネットのインスタンスに関連付けることができます。

新しいセキュリティグループを作成し、インスタンスに関連付けるには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで [Security Groups] を選択して、[Create Security Group] を選択します。

  3. [Create Security Group] ダイアログボックスに、セキュリティグループの名前と説明を入力します。[VPC] リストで VPC の ID を選択し、[Yes, Create] を選択します。

  4. セキュリティグループを選択します。詳細ペインには、セキュリティグループの詳細と、インバウンドルールとアウトバンドルールを操作するタブが表示されます。

  5. [Inbound Rules] タブで、[Edit] を選択します。[Add Rule] を選択し、必要な情報を入力します。たとえば、[Type] リストから [HTTP] または [HTTPS] を選択し、IPv4 トラフィックの場合は、0.0.0.0/0、IPv6 トラフィックの場合は ::/0 を [Source] に入力します。以上が完了したら、[Save] を選択します。

  6. https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

  7. ナビゲーションペインで、[インスタンス] を選択します。

  8. インスタンスを選択し、[Actions] を選択して、続いて [Networking] を選択し、次に [Change Security Groups] を選択します。

  9. [Change Security Groups] ダイアログボックスで、現在選択しているセキュリティグループのチェックボックスをオフにし、新しいセキュリティグループを選択します。[Assign Security Groups] を選択します。

詳細については、「VPC のセキュリティグループ」を参照してください。

Elastic IP アドレスを追加する

IPv4 経由でインターネットからインスタンスに到達できるようにするには、サブネットでインスタンスを起動した後に、そのインスタンスに Elastic IP アドレスを割り当てる必要があります。

注記

起動中にパブリック IPv4 アドレスをインスタンスに割り当てた場合、インスタンスはインターネットから到達可能であるため、Elastic IP アドレスを割り当てる必要はありません。インスタンスの IP アドレスの割り当ての詳細については、「VPC の IP アドレス指定」を参照してください。

コンソールを使用して、Elastic IP アドレスを配分し、インスタンスに割り当てるには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで [Elastic IP] を選択します。

  3. [Allocate new address] を選択します。

  4. [Allocate] を選択します。

    注記

    アカウントが EC2-Classic をサポートしている場合には、まず [VPC] を選択します。

  5. リストで Elastic IP アドレスを選び、[Actions] を選択してから [Associate address] を選択します。

  6. [Instance] または [Network interface] を選択してから、インスタンスまたはネットワークインターフェイス ID を選択します。Elastic IP アドレスを関連付けるプライベート IP アドレスを選択してから、[Associate] を選択します。

詳細については、「Elastic IP アドレス」を参照してください。

VPC からのインターネットゲートウェイのアタッチ解除

デフォルトではない VPC 内に起動するインスタンスでインターネットアクセスが不要になった場合には、VPC からインターネットゲートウェイをデタッチできます。VPC に関連付けられたパブリック IP アドレスまたは Elastic IP アドレスを持つリソースがある場合、インターネットゲートウェイをデタッチすることはできません。

インターネットゲートウェイをデタッチするには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで [Elastic IPs] を選択し、Elastic IP アドレスを選択します。

  3. [Actions]、[Disassociate address] の順に選択します。[Disassociate address] を選択します。

  4. ナビゲーションペインで、[Internet Gateways] を選択します。

  5. インターネットゲートウェイを選択し、[アクション]、[VPC からデタッチ] を選択します。

  6. [VPC からデタッチ] ダイアログボックスで、[デタッチ] を選択します。

インターネットゲートウェイを削除する

インターネットゲートウェイが不要になった場合には、それを削除することができます。VPC にアタッチされているインターネットゲートウェイを削除することはできません。

インターネットゲートウェイを削除するには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで、[Internet Gateways] を選択します。

  3. インターネットゲートウェイを選択し、[アクション]、[インターネットゲートウェイの削除] の順に選択します。

  4. [インターネットゲートウェイの削除] ダイアログボックスで、[削除] を選択します。

API とコマンドの概要

このページで説明しているタスクは、コマンドラインまたは API を使用して実行できます。コマンドラインインターフェイスの詳細および利用できる API アクションの一覧については、「Amazon VPC へのアクセス」を参照してください。

インターネットゲートウェイを作成する

インターネットゲートウェイを VPC にアタッチする

インターネットゲートウェイについて説明する

VPC からインターネットゲートウェイをデタッチする

インターネットゲートウェイを削除する