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

VPC の IP アドレス指定

IP アドレスは、VPC のリソースの相互通信とインターネット上のリソースとの通信を有効にします。Amazon EC2 と Amazon VPC は、IPv4 と IPv6 のアドレス設定プロトコルをサポートします。

デフォルトでは、Amazon EC2 と Amazon VPC は IPv4 アドレスプロトコルを使用します。VPC の作成時には IPv4 CIDR ブロック (プライベート IPv4 アドレスの範囲) を割り当てる必要があります。プライベート IPv4 アドレスには、インターネット経由では到達できません。インターネット経由でインスタンスに接続する、またはインスタンスとパブリックエンドポイントがある他の AWS サービスとの間の通信を有効にするには、グローバルに一意なパブリック IPv4 アドレスをインスタンスに割り当てることができます。

オプションで IPv6 CIDR ブロックを VPC およびサブネットと関連付けて、そのブロックから VPC 内のリソースに IPv6 アドレスを割り当てることができます。IPv6 アドレスは公開され、インターネットに到達できます。

注記

インスタンスがインターネットと確実に通信できるようにするには、VPC にインターネットゲートウェイをアタッチする必要があります。詳細については、「インターネットゲートウェイ」を参照してください。

VPC は、デュアルスタックモードで動作し、IPv4 または IPv6 あるいは両方を介して通信できます。IPv4 アドレスと IPv6 アドレスは互いに独立しています。VPC で IPv4 と IPv6 のルーティングとセキュリティを設定する必要があります。

次の表は、Amazon EC2 と Amazon VPC における IPv4 と IPv6 の違いをまとめたものです。

IPv4 および IPv6 の特徴と制限

IPv4 IPv6
形式は 32 ビットで、4 桁の数字の 4 つのグループです。 形式は 128 ビットで、4 桁の 16 進数の 8 つのグループです。
デフォルトですべての VPC で必要となるため、削除できません。 オプトインのみです。
VPC CIDR ブロックサイズは 16 ~ 28 となります。 VPC CIDR ブロックサイズは 56 に固定されています。
サブネット CIDR ブロックサイズは 16 ~ 28 です。 サブネット CIDR ブロックサイズは 64 に固定されています。
VPC では、プライベート IPv4 CIDR ブロックも選択できます。 両方をアマゾンの IPv6 アドレスのプールから VPC の IPv6 CIDR ブロックを選択します。独自の範囲を選択することはできません。
プライベート IP アドレスとパブリック IP アドレスの間には違いがあります。インターネットとの通信を有効にするには、ネットワークアドレス変換 (NAT) を介してパブリック IPv4 アドレスをプライマリプライベート IPv4 アドレスにマップします。 パブリック IP アドレスとプライベート IP アドレスに違いはありません。IPv6 アドレスはパブリックです。
すべてのインスタンスタイプでサポートされています。 M3、G2、を除くすべての現行世代のインスタンスタイプでサポートされます。詳細については、「Amazon EC2 インスタンスタイプ」を参照してください。
EC2-Classic と、ClassicLink を介した VPC との EC2-Classic 接続でサポートされます。 EC2-Classic ではサポートされません。また、ClassicLink を介した VPC との EC2 Classic 接続でもサポートされません。
すべての AMI でサポートされます。 DHCPv6 用に設定された AMI で自動的にサポートされます。Amazon Linux バージョン 2016.09.0 以降と、Windows Server 2008 R2 以降は DHCPv6 用に設定されます。その他の AMI では、割り当てられた IPv6 アドレスを認識するようにインスタンスを手動で設定する必要があります。
インスタンスは、そのプライベート IPv4 アドレスに対応するアマゾン提供のプライベート DNS ホスト名を受信します。必要に応じて、そのパブリック IPv4 または Elastic IP アドレスに対応するパブリック DNS ホスト名も受信します。 Amazon が提供する DNS ホスト名はサポートされません。
Elastic IPv4 アドレスがサポートされます。 Elastic IPv6 アドレスはサポートされません。
VPC VPN 接続とカスタマーゲートウェイ、NAT デバイス、および VPC エンドポイントでサポートされます。 VPC VPN 接続とカスタマーゲートウェイ、NAT デバイス、および VPC エンドポイントでサポートされません。

AWS Direct Connect 接続への仮想プライベートゲートウェイ経由の IPv6 トラフィックをサポートしています。詳細については、「AWS Direct Connect ユーザーガイド」を参照してください。

プライベート IPv4 アドレス

プライベート IPv4 アドレス (このトピックではプライベート IP アドレスと呼ばれる) は、インターネットにはアクセスできず、VPC のインスタンス間の通信で使用できます。VPC でインスタンスを起動すると、サブネットの IPv4 アドレス範囲内のプライマリプライベート IP アドレスがインスタンスのデフォルトのネットワークインターフェイス (eth0) に割り当てられます。また、各インスタンスには、インスタンスのプライベート IP アドレスに解決されるプライベート (内部) DNS ホスト名が割り当てられます。プライマリプライベート IP アドレスを指定しない場合、サブネットの範囲内で使用可能な IP アドレスが選択されます。ネットワークインターフェイスの詳細については、「Linux インスタンス用 Amazon EC2 ユーザーガイド」の Elastic Network Interfaces を参照してください。

VPC で実行されているインスタンスに追加のプライベート IP アドレス (セカンダリプライベート IP アドレスと呼ばれる) を割り当てることができます。プライマリプライベート IP アドレスとは異なり、セカンダリプライベート IP アドレスはあるネットワークインターフェイスから別のネットワークインターフェイスへ割り当て直すことができます。プライベート IP アドレスは、インスタンスが停止して再起動するとネットワークインターフェイスに関連付けられたままになり、インスタンスが終了すると解放されます。プライマリ IP アドレスとセカンダリ IP アドレスの詳細については、「Linux インスタンス用 Amazon EC2 ユーザーガイド」の「複数の IP アドレス」を参照してください。

注記

プライベート IP アドレスは VPC の IPv4 CIDR 範囲内にある IP アドレスです。VPC のほとんどの IP アドレス範囲は、RFC 1918 で規定されているプライベート (パブリックにルーティングできない) IP アドレス範囲に入りますが、パブリックにルーティングできる CIDR ブロックを VPC に使用することはできます。VPC の IP アドレス範囲に関係なく、publicly-routable CIDR ブロックなど VPC の CIDR ブロックからのインターネットへの直接アクセスはサポートされていません。ゲートウェイを経由するインターネットアクセスを設定する必要があります。たとえば、インターネットゲートウェイ、仮想プライベートゲートウェイ、VPN 接続、または AWS Direct Connect を設定します。

パブリック IPv4 アドレス

サブネットで作成されたネットワークインターフェイスがパブリック IPv4 アドレス (このトピックではパブリック IP アドレスと呼ばれる) を自動的に受信するかどうかを判断する属性が、すべてのサブネットにあります。したがって、この属性が有効になっているサブネットに対してインスタンスを起動すると、パブリック IP アドレスがそのインスタンス用に作成されたプライマリネットワークインターフェイス (eth0) に割り当てられます。パブリック IP アドレスは、ネットワークアドレス変換 (NAT) によって、プライマリプライベート IP アドレスにマッピングされます。

VPC のインスタンスがパブリック IP アドレスを割り当てられるかどうかを制御するには、以下の方法を使用します。

パブリック IP アドレスは、Amazon のパブリック IP アドレスプールにあるアドレスです。そのアドレスはお客様のアカウントとは関連付けられません。パブリック IP アドレスとインスタンスとの関連付けを解除すると、そのアドレスは解放されてプールに戻り、それ以降お客様はそのアドレスを使用できなくなります。パブリック IP アドレスの関連付けと関連付け解除は手動で実行できません。ただし、特定の場合に、こちらでパブリック IP アドレスをお客様のインスタンスから解放したり、新しいアドレスをそのインスタンスに割り当てます。詳細については、「Linux インスタンス用 Amazon EC2 ユーザーガイド」の「パブリック IP アドレス」を参照してください。

状況に応じてインスタンスに割り当てたりインスタンスから削除したりできる固定パブリック IP アドレスをお客様のアカウントに割り当てる必要がある場合は、Elastic IP アドレスを使用します。詳細については、「Elastic IP アドレス」を参照してください。

VPC で DNS ホスト名のサポートを有効にしている場合は、パブリック IP アドレスまたは Elastic IP アドレスを受信するインスタンスには、それぞれパブリック DNS ホスト名が付与されます。パブリック DNS ホスト名を解決すると、インスタンスのパブリック IP アドレス (インスタンスのネットワークの外部の場合) およびインスタンスのプライベート IP アドレス (インスタンスのネットワーク内からの場合) となります。詳細については、「VPC での DNS の使用」を参照してください。

IPv6 アドレス

オプションで、IPv6 CIDR ブロックを VPC とサブネットに関連付けることができます。詳細については、次のトピックを参照してください。

IPv6 CIDR ブロックが VPC およびサブネットと関連付けられていて、以下のいずれかに該当する場合、VPC 内のインスタンスには IPv6 アドレスが割り当てられます。

  • サブネットは、起動時に IPv6 アドレスをインスタンスのプライマリネットワークインターフェイスに自動的に割り当てるよう設定されます。

  • 起動時に IPv6 アドレスをインスタンスに手動で割り当てます。

  • 起動後に IPv6 アドレスをインスタンスに割り当てます。

  • 起動後に IPv6 アドレスを同じサブネットのネットワークインターフェイスに割り当て、そのネットワークインターフェイスをインスタンスにアタッチする。

起動時にインスタンスに IPv6 アドレスが割り当てられると、そのアドレスはインスタンスのプライマリネットワークインターフェイス (eth0) と関連付けられます。IPv6 アドレスとプライマリネットワークインターフェイスの関連付けは解除できます。インスタンスの IPv6 DNS ホスト名はサポートされていません。

IPv6 アドレスは、インスタンスの停止および開始時には保持され、インスタンスの削除時に解放されます。IPv6 アドレスは、別のネットワークインターフェイスに割り当てられている間は再割り当てできません。最初に割り当てを解除する必要があります。

追加の IPv6 アドレスをインスタンスに割り当てるには、インスタンスにアタッチされたネットワークインターフェイスにアドレスを割り当てます。ネットワークインターフェイスに割り当てることができる IPv6 アドレスの数と、インスタンスにアタッチできるネットワークインターフェイスの数は、インスタンスタイプごとに異なります。詳細については、『Amazon EC2 ユーザーガイド』の「各インスタンスタイプのネットワークインターフェイスごとの IP アドレス」を参照してください。

IPv6 アドレスはグローバルに一意であるため、インターネット経由で到達可能です。インスタンスのサブネットのルーティングを制御するか、セキュリティグループとネットワーク ACL ルールを使用することで、IPv6 アドレスを介してインスタンスに接続できるかどうかを制御できます。詳細については、「セキュリティ」を参照してください。

予約済み IPv6 アドレスの範囲については、「IANA IPv6 Special-Purpose Address Registry」と「RFC4291」を参照してください。

サブネットの IP アドレス指定動作

すべてのサブネットに、そのサブネットで作成したネットワークインターフェイスをパブリック IPv4 アドレス (該当する場合は IPv6 アドレス) に割り当てるかどうかを決定する、変更可能な属性があります。これには、サブネットでインスタンスを起動したときにインスタンス用に作成されるプライマリネットワークインターフェイス (eth0) が含まれます。

サブネットの属性に関係なく、特定のインスタンスの起動時の設定によって上書きできます。詳細については、「インスタンス起動時のパブリック IPv4 アドレスの割り当て」および「インスタンス起動時に IPv6 アドレスを割り当てる」を参照してください。

IP アドレスの操作

サブネットの IP アドレス指定動作、起動中のパブリック IPv4 アドレスのインスタンスへの割り当て、インスタンスとの IPv6 アドレスの割り当てと割り当て解除を変更できます。

サブネットのパブリック IPv4 アドレス属性を変更する

デフォルトでは、デフォルト以外のサブネットでは IPv4 パブリックアドレス属性が false に設定されており、デフォルトのサブネットではこの属性が true に設定されています。例外は、Amazon EC2 インスタンス起動ウィザードによって作成されるデフォルト以外のサブネットです。このウィザードが、属性を true に設定します。Amazon VPC コンソールを使用してこの属性を変更できます。

サブネットのパブリック IPv4 のアドレス動作を変更するには

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

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

  3. サブネットを選択し、[Subnet Actions] を選択して、次に [Modify auto-assign IP settings] を選択します。

  4. [Enable auto-assign public IPv4 address] チェックボックスをオンにした場合、選択されたサブネット内で起動されるすべてのインスタンスに対してパブリック IPv4 アドレスがリクエストされます。必要に応じてチェックボックスをオンまたはオフにして、[Save] を選択します。

サブネットのパブリック IPv6 アドレス属性を変更する

デフォルトでは、すべてのサブネットで IPv6 アドレス属性が false に設定されています。Amazon VPC コンソールを使用してこの属性を変更できます。サブネットで IPv6 アドレス属性を有効にした場合、そのサブネットで作成されたネットワークインターフェイスは、サブネットの範囲から IPv6 アドレスを受け取ります。サブネットに起動されたインスタンスは、プライマリネットワークインターフェイスで IPv6 アドレスを受け取ります。

サブネットには関連付けられた IPv6 CIDR ブロックが必要です。

注記

サブネットに対して IPv6 アドレス機能を有効にすると、ネットワークインターフェイスまたはインスタンスのみが IPv6 アドレスを受け取ります (バージョン 2016-11-15 以降の Amazon EC2 API を使用して作成された場合)。Amazon EC2 コンソールは最新の API バージョンを使用します。

サブネットのパブリック IPv6 アドレスの動作を変更するには

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

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

  3. サブネットを選択し、[Subnet Actions] を選択して、次に [Modify auto-assign IP settings] を選択します。

  4. [Enable auto-assign IPv6 address] チェックボックスをオンにした場合、選択されたサブネット内で作成されるすべてのネットワークインターフェイスに対して IPv6 アドレスがリクエストされます。必要に応じてチェックボックスをオンまたはオフにして、[Save] を選択します。

インスタンス起動時のパブリック IPv4 アドレスの割り当て

ただし、デフォルトのサブネットまたはデフォルト以外のサブネット内のインスタンスが起動中にパブリック IPv4 アドレスを割り当てられるかどうかを制御できます。

重要

起動後に、インスタンスからパブリック IPv4 アドレスの割り当てを手動で解除することはできません。ただし、特定の場合に、アドレスが自動的に解放され、その後再利用できなくなります。自由に関連付けと関連付け解除を実行できる固定パブリック IP アドレスが必要な場合は、起動後に Elastic IP アドレスをインスタンスに関連付けます。詳細については、「Elastic IP アドレス」を参照してください。

起動時にパブリック IPv4 アドレスをインスタンスに割り当てるには

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

  2. [インスタンスの作成] を選択します。

  3. AMI およびインスタンスタイプを選択し、[次の手順: インスタンスの詳細の設定] を選択します。

  4. [Configure Instance Details] ページで、[Network] リストから VPC を選択します。[Auto-assign Public IP] リストが表示されます。[Enable] または [Disable] を選択して、サブネットのデフォルトの設定をオーバーライドします。

    重要

    複数のネットワークインターフェイスを指定した場合、パブリック IPv4 アドレスを割り当てることはできません。さらに、eth0 のように既存のネットワークインターフェイスを指定すると、パブリック IPv4 の自動割り当て機能を使用してサブネット設定をオーバーライドすることはできません。

  5. ウィザードの残りの手順に従ってインスタンスを起動します。

  6. [Instances] 画面で、インスタンスを選択します。[Description] タブの [IPv4 Public IP] フィールドで、インスタンスのパブリック IP アドレスを表示できます。または、ナビゲーションペインで、[Network Interfaces] を選択し、インスタンスの eth0 ネットワークインターフェイスを選択します。[IPv4 Public IP] フィールドで、パブリック IP アドレスを表示できます。

    注記

    パブリック IPv4 アドレスは、コンソールのネットワークインターフェイスのプロパティとして表示されますが、NAT によってプライマリプライベート IPv4 アドレスにマッピングされます。したがって、インスタンスのネットワークインターフェイスのプロパティを調べる場合、たとえば Windows インスタンスに対して ipconfig を使用しても、Linux インスタンスに対して ifconfig を使用しても、パブリック IP アドレスは表示されません。インスタンス内からインスタンスのパブリック IP アドレスを決定するには、インスタンスのメタデータを使用できます。詳細については、「インスタンスメタデータとユーザーデータ」を参照してください。

この機能は起動中のみ使用できます。ただし、起動時にパブリック IPv4 アドレスをインスタンスに割り当てるかどうかにかかわらず、起動後に Elastic IP アドレスをインスタンスに関連付けることができます。詳細については、「Elastic IP アドレス」を参照してください。

インスタンス起動時に IPv6 アドレスを割り当てる

起動時に IPv6 アドレスをインスタンスに自動で割り当てます。これを行うには、関連付けられた IPv6 CIDR ブロックを持つ VPC とサブネットに対してインスタンスを起動する必要があります。IPv6 アドレスはサブネットの範囲から割り当てられ、プライマリネットワークインターフェイス (eth0) に割り当てられます。

起動時に IPv6 アドレスをインスタンスに自動的に割り当てるには

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

  2. [インスタンスの作成] を選択します。

  3. AMI およびインスタンスタイプを選択し、[次の手順: インスタンスの詳細の設定] を選択します。

    注記

    IPv6 アドレスをサポートするインスタンスタイプを選択します。

  4. [Configure Instance Details] ページで、[Network] から VPC を選択し、[Subnet] からサブネットを選択します。[Auto-assign IPv6 IP] で、[Enable] を選択します。

  5. ウィザードの残りの手順に従ってインスタンスを起動します。

または、起動時にインスタンスのサブネットの範囲から固有の IPv6 アドレスを割り当てる場合は、インスタンスのプライマリネットワークインターフェイスにアドレスを割り当てることができます。

起動時にインスタンスに固有の IPv6 アドレスを割り当てるには

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

  2. [インスタンスの作成] を選択します。

  3. AMI およびインスタンスタイプを選択し、[次の手順: インスタンスの詳細の設定] を選択します。

    注記

    IPv6 アドレスをサポートするインスタンスタイプを選択します。

  4. [Configure Instance Details] ページで、[Network] から VPC を選択し、[Subnet] からサブネットを選択します。

  5. ネットワークインターフェイス」のセクションを参照してください。eth0 ネットワークインターフェイスでは、[IPv6 IPs] で [Add IP] を選択します。

  6. サブネットの範囲から IPv6 アドレスを入力します。

  7. ウィザードの残りの手順に従ってインスタンスを起動します。

起動時にインスタンスに複数の IPv6 アドレスを割り当てることの詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「Working with Multiple IPv6 Addresses」を参照してください。

インスタンスへの IPv6 アドレスの割り当て

インスタンスとサブネットに関連付けられた IPv6 CIDR ブロックがある場合は、Amazon EC2 コンソールを使用して、使用するサブネットの範囲から IPv6 アドレスをインスタンスに割り当てることができます。

IPv6 アドレスをインスタンスに関連付けるには

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

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

  3. [Actions]、[Manage IP Addresses] の順に選択します。

  4. [IPv6 Addresses] で、[Assign new IP] を選択します。サブネットの範囲から IPv6 アドレスを指定するか、[Auto-assign] を使って IPv6 アドレスを自動的に選択することができます。

  5. [Save] を選択します。

また、IPv6 アドレスをネットワークインターフェイスに割り当てることができます。詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「Elastic Network Interfaces」トピックの「Assigning an IPv6 Address」を参照してください。

インスタンスからの IPv6 アドレスの割り当て解除

インスタンスで IPv6 アドレスが不要になった場合は、Amazon EC2 コンソールを使用してインスタンスから関連付けを解除できます。

インスタンスから IPv6 アドレスの関連付けを解除するには

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

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

  3. [Actions]、[Manage IP Addresses] の順に選択します。

  4. [IPv6 Addresses] で、IPv6 アドレスに対して [Unassign] を選択します。

  5. [Save] を選択します。

または、ネットワークインターフェイスから IPv6 アドレスの関連付けを解除することができます。詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「Elastic Network Interfaces」トピックの「Unassigning an IPv6 Address」を参照してください。

API とコマンドの概要

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

起動時にパブリック IPv4 アドレスを割り当てる

  • run-instances コマンドで --associate-public-ip-address または --no-associate-public-ip-address オプションを使用します。(AWS CLI)

  • New-EC2Instance コマンドで -AssociatePublicIp パラメータを使用します。(AWS Tools for Windows PowerShell)

起動時に IPv6 アドレスを割り当てる

  • run-instances コマンド で --ipv6-addresses オプションを使用します。(AWS CLI)

  • New-EC2Instance コマンドで -Ipv6Addresses パラメータを使用します。(AWS Tools for Windows PowerShell)

サブネットのパブリック IP アドレス動作を変更する

IPv6 アドレスをネットワークインターフェイスに割り当てる

ネットワークインターフェイスから IPv6 アドレスの割り当てを解除する