メニュー
Amazon Virtual Private Cloud
ユーザーガイド

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

インターネットゲートウェイは、VPC のインスタンスとインターネットとの間の通信を可能にする VPC コンポーネントであり、冗長性と高い可用性を備えており、水平スケーリングが可能です。そのため、ネットワークトラフィックに課される可用性のリスクや帯域幅の制約はありません。

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

インターネットゲートウェイは、IPv4 トラフィックおよび IPv6 トラフィックをサポートしています。

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

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

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

  • サブネットのルートテーブルがインターネットゲートウェイに繋がっていることを確認します。

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

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

インターネットゲートウェイを使用するには、インターネットゲートウェイにインターネット経由のトラフィックが流れるルートをサブネットのルートテーブルに追加する必要があります。そのルートに流れるトラフィックの送信先としては、明示的に既知でない送信先 (IPv4 の場合は0.0.0.0/0、IPv6 の場合は::/0) を指定することも、特定の 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 は、カスタムルートテーブルと関連付けられており、インターネット経由の IPv4 トラフィックはすべてインターネットゲートウェイにポイントされます。このインスタンスには、インターネットとの通信を有効にする Elastic IP アドレスが割り当てられています。

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

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

次の表では、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」または「シナリオ 2: パブリックサブネットとプライベートサブネットを持つ VPC (NAT) 」を参照してください。

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

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

インターネットゲートウェイを関連付けた VPC の作成

次のセクションでは、インターネットアクセスをサポートするパブリックサブネットを手動で作成する方法について説明します。

サブネットを作成する

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

  1. https://console.aws.amazon.com/vpc/にある Amazon 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 にアタッチするには

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

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

  3. [Create Internet Gateway] ダイアログボックスで、必要に応じてインターネットゲートウェイに名前を指定し、[Yes, Create] を選択します。

  4. 作成したインターネットゲートウェイを選択して、[Attach to VPC] を選択します。

  5. [Attach to VPC] ダイアログボックスのリストから VPC を選択してから、[Yes, Attach] を選択します。

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

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

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

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

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

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

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

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

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

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

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

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

セキュリティグループルールを更新する

VPC には、デフォルトのセキュリティグループが用意されています。VPC で起動する各インスタンスは、自動的にそのデフォルトのセキュリティグループに関連付けられます。デフォルトのセキュリティグループのデフォルトの設定では、インターネットからのインバウンドトラフィックを許可せず、インターネットに対するすべてのアウトバンドトラフィックを許可します。そのため、インスタンスがインターネットと通信できるようにするには、パブリックインスタンスがインターネットにアクセスすることを許可する新しいセキュリティグループを作成する必要があります。

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

  1. https://console.aws.amazon.com/vpc/にある Amazon 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. ナビゲーションペインで、[Instances] を選択します。

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

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

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

Elastic IP アドレスを追加する

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

注記

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

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

  1. https://console.aws.amazon.com/vpc/にある Amazon 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 アドレスについては、「Elastic IP アドレス」を参照してください。

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

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

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

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

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

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

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

  5. インターネットゲートウェイを選択し、[Detach from VPC] を選択します。

  6. [Detach from VPC] ダイアログボックスで、[Yes, Detach] を選択します。

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

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

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

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

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

  3. インターネットゲートウェイを選択し、[Delete] を選択します。

  4. [Delete Internet Gateway] ダイアログボックスで、[Yes, Delete] を選択します。

API とコマンドの概要

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

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

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

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

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

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