Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

Amazon EC2 インスタンスの IP アドレッシング

Amazon EC2 と Amazon VPC は、IPv4 と IPv6 の両方のアドレス設定プロトコルをサポートします。デフォルトでは、Amazon EC2 と Amazon VPC は IPv4 アドレス設定プロトコルを使用します。この動作を無効にすることはできません。VPC の作成時には IPv4 CIDR ブロック (プライベート IPv4 アドレスの範囲) を指定する必要があります。必要に応じて、IPv6 CIDR ブロックを VPC とサブネットに割り当て、そのブロックからサブネットのインスタンスに IPv6 アドレスを割り当てることができます。IPv6 アドレスはインターネットから到達できます。VPC での IPv6 の詳細については、『Amazon VPC ユーザーガイド』の「VPC での IP アドレス指定」を参照してください。

プライベート IPv4 アドレスと内部 DNS ホスト名

プライベート IPv4 アドレスは、インターネットから到達できない IP アドレスです。プライベート IPv4 アドレスは、同じネットワーク内のインスタンス間の通信に使用できます。プライベート IPv4 アドレスの標準および仕様については、RFC 1918 を参照してください。DHCP を使用してインスタンスにプライベート IPv4 アドレスが割り当てられます。

注記

RFC 1918 に指定されているプライベート IPv4 アドレスの範囲に含まれない、パブリックにルーティングできる CIDR ブロックを持つ VPC を作成できます。ただし、このドキュメントでプライベート IPv4 アドレス (または「プライベート IP アドレス」) と言う場合は、VPC の IPv4 CIDR 範囲に含まれる IP アドレスを指します。

インスタンスを起動すると、そのインスタンスのプライマリプライベート IPv4 アドレスが割り当てられます。また、各インスタンスには、プライマリプライベート IPv4 アドレスに解決される内部 DNS ホスト名 (ip-10-251-50-12.ec2.internal など) が割り当てられます。内部 DNS ホスト名は同じネットワーク内のインスタンス間の通信に使用できます。ただし、インスタンスが含まれるネットワークの外部の DNS ホスト名を解決することはできません。

インスタンスはサブネットの IPv4 アドレス範囲からプライマリプライベート IP アドレスを受け取ります。詳細については、『Amazon VPC ユーザーガイド』の「VPC とサブネットのサイズ設定」を参照してください。プライマリプライベート IP アドレスを指定しないでインスタンスを起動すると、サブネットの IPv4 範囲内で使用可能な IP アドレスが自動的に選択されます。各インスタンスには、プライマリプライベート IPv4 アドレスが割り当てられたデフォルトのネットワークインターフェイス (eth0) があります。追加のプライベート IPv4 アドレス (セカンダリプライベート IPv4 アドレス) も指定できます。プライマリプライベート IP アドレスとは異なり、セカンダリプライベート IP アドレスは、別のインスタンスに割り当て直すことができます。詳細については、「複数の IP アドレス」を参照してください。

プライベート IPv4 アドレスは、インスタンスが停止して再起動するとネットワークインターフェイスに関連付けられたままになり、インスタンスが終了すると解放されます。

パブリック IPv4 アドレスと外部 DNS ホスト名

パブリック IP アドレスは、インターネットから到達可能な IPv4 アドレスです。インスタンスとインターネット間で通信するには、パブリック アドレスを使用できます。

パブリック IP アドレスを受け取る各インスタンスには、外部 DNS ホスト名 (ec2-203-0-113-25.compute-1.amazonaws.com など) が割り当てられます。外部 DNS ホスト名を解決すると、インスタンスのパブリック IP アドレス (インスタンスのネットワーク外の場合) およびインスタンスのプライベート IPv4 アドレス (インスタンスのネットワーク内からの場合) となります。パブリック IP アドレスは、ネットワークアドレス変換 (NAT) によって、プライマリプライベート IP アドレスにマッピングされます。NAT の詳細については、RFC 1631: The IP Network Address Translator (NAT) を参照してください。

デフォルトの VPC でインスタンスを起動すると、デフォルトでパブリック IP アドレスが割り当てられます。デフォルト以外の VPC でインスタンスを起動するとき、サブネットには、そのサブネットで起動するインスタンスがパブリック IPv4 アドレスプールからパブリック IP アドレスを受け取るかどうかを決定する属性があります。デフォルトでは、デフォルト以外のサブネットで起動されたインスタンスにパブリック IP アドレスを割り当てません。

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

パブリック IP アドレスは、Amazon のパブリック IPv4 アドレスプールからインスタンスに割り当てられ、お客様の AWS アカウントには関連付けられません。パブリック IP アドレスをインスタンスから割り当て解除すると、そのパブリック IPv4 アドレスはパブリック IP アドレスプールに戻され、再利用することはできません。

手動でパブリック IP アドレスをインスタンスに関連付けること、また、手動でインスタンスから割り当て解除することはできません。場合によって、パブリック IP アドレスはインスタンスから解放されたり、新しいインスタンスに割り当てられたりします。

  • インスタンスのパブリック IP アドレスが停止または終了すると、インスタンスのパブリック IP アドレスが解放されます。停止していたインスタンスが再起動されると、そのインスタンスには新しいパブリック IP アドレスが送信されます。

  • Elastic IP アドレスをこれに関連付けると、インスタンスのパブリック IP アドレスが解放されます。Elastic IP アドレスをインスタンスから割り当て解除すると、そのインスタンスには新しいパブリック IP アドレスが送信されます。

  • VPC 内のインスタンスのパブリック IP アドレスが既に解放されている場合には、複数のネットワークインターフェイスがインスタンスにアタッチされていると、インスタンスに新しいパブリック IP アドレスは送信されません。

  • インスタンスのパブリック IP アドレスが解放され、Elastic IP アドレスに関連付けられたセカンダリプライベート IP アドレスがある場合、インスタンスは新しいパブリック IP アドレスを受信しません。

必要に応じて、インスタンスに関連付けおよびインスタンスから関連付けできる永続的なパブリック IP アドレスが必要な場合は、Elastic IP アドレスを使用します。

動的 DNS を使用して既存の DNS 名を新しいインスタンスのパブリック IP アドレスにマッピングした場合、その IP アドレスがインターネット内に伝達されるまでに最大 24 時間かかることがあります。その結果、新しいインスタンスはトラフィックを受信せず、終了したインスタンスがリクエストの受信を継続することがあります。この問題を解決するには、Elastic IP アドレスを使用します。独自の Elastic IP アドレスを割り当てて、それをインスタンスに関連付けることができます。詳細については、「Elastic IP アドレス」を参照してください。

インスタンスに Elastic IP アドレスを割り当てると、DNS ホスト名が有効な場合、インスタンスは IPv4 DNS ホスト名を受け取ります。詳細については、「Amazon VPC ユーザーガイド」の「VPC での DNS の使用 」を参照してください。

注記

インスタンスがパブリック NAT IP アドレスを使用して他のインスタンスにアクセスする場合、アクセス先のインスタンスが同じリージョンにあるかどうかによって、リージョンデータ転送またはインターネットデータ転送に対して課金されます。

Elastic IP アドレス (IPv4)

Elastic IP アドレスは、アカウントに割り当てることができるパブリック IPv4 アドレスです。必要に応じて、インスタンスに関連付けることができます。これは、解放するように選択しない限り、インスタンスに割り当てられたままです。Elastic IP アドレスとその使用方法の詳細については、「Elastic IP アドレス」を参照してください。

IPv6 に対する Elastic IP アドレスはサポートされていません。

Amazon DNS サーバー

Amazon は、Amazon が提供する IPv4 DNS ホスト名を解決する DNS サーバーを IPv4 アドレスに提供します。Amazon DNS サーバーは VPC ネットワークの範囲に 2 をプラスしたアドレスにあります。詳細については、『Amazon VPC ユーザーガイド』の「Amazon DNS サーバー」を参照してください。

IPv6 アドレス

必要に応じて、IPv6 CIDR ブロックを VPC と関連付けることができます。また、IPv6 CIDR ブロックをサブネットと関連付けることができます。VPC の IPv6 CIDR ブロックは、Amazon の IPv6 アドレスのプールから自動的に割り当てられます。独自にアドレス範囲を選択することはできません。詳細については、「Amazon VPC ユーザーガイド」の次のトピックを参照してください。

IPv6 アドレスはグローバルに一意であるため、インターネット経由で到達可能です。IPv6 CIDR ブロックが VPC およびサブネットと関連付けられていて、以下のいずれかに該当する場合、インスタンスには IPv6 アドレスが割り当てられます。

  • 起動時にサブネットからインスタンスに IPv6 アドレスが自動的に割り当てられるように設定されている。詳細については、「サブネットの IPv6 アドレス指定属性の変更」を参照してください。

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

  • 起動後に IPv6 アドレスをインスタンスのプライマリネットワークインターフェイスに割り当てる。

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

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

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

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

インスタンスの IP アドレスの使用

インスタンスに割り当てられた IP アドレスを表示し、起動時にパブリック IPv4 アドレスまたは IPv6 アドレスをインスタンスに割り当てることができます。

パブリック IP アドレス、プライベート IP アドレス、Elastic IP アドレスの確認

Amazon EC2 コンソールを使用して、インスタンスのプライベート IPv4 アドレス、パブリック IPv4 アドレス、および Elastic IP アドレスを確認できます。また、インスタンスメタデータを使用して、インスタンス内からインスタンスのパブリック IPv4 アドレスとプライベート IPv4 アドレスを確認することもできます。詳細については、「インスタンスメタデータとユーザーデータ」を参照してください。

コンソールを使用してインスタンスのプライベート IPv4 アドレスを確認するには

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

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

  3. インスタンスを選択します。詳細ペインで、[Private IPs] フィールドからプライベート IPv4 アドレスを取得し、[Private DNS] フィールドから内部 DNS ホスト名を取得します。

  4. インスタンスに接続されているネットワークインターフェイスに割り当てられた 1 つ以上のセカンダリプライベート IPv4 アドレスがある場合は、[Secondary private IPs] フィールドからこれらの IP アドレスを取得します。

  5. または、ナビゲーションペインで [Network Interfaces] を選択し、インスタンスに関連付けられているネットワークインターフェイスを選択します。

  6. [Primary private IPv4 IP] フィールドからプライマリプライベート IP アドレス、および [Private DNS (IPv4)] フィールドから内部 DNS ホスト名を取得します。

  7. ネットワークインターフェイスにセカンダリプライベート IP アドレスを割り当てている場合は、[Secondary private IPv4 IPs] フィールドからこれらの IP アドレスを取得します。

コンソールを使用してインスタンスのパブリック IPv4 アドレスを確認するには

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

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

  3. インスタンスを選択します。詳細ペインで、[IPv4 Public IP] フィールドからパブリック IP アドレスを、[Public DNS (IPv4)] フィールドから外部 DNS ホスト名を取得します。

  4. 1 つ以上の Elastic IP アドレスがインスタンスに関連付けられている場合は、Elastic IP アドレスを [Elastic IPs] フィールドから取得します。

    注記

    インスタンスにパブリック IPv4 アドレスがなくても、インスタンスのネットワークインターフェイスに Elastic IP アドレスが関連付けられている場合、[IPv4 Public IP] フィールドに Elastic IP アドレスが表示されます。

  5. または、ナビゲーションペインで [Network Interfaces] を選択し、インスタンスに関連付けられているネットワークインターフェイスを選択します。

  6. [IPv4 Public IP] フィールドからパブリック IP アドレスを取得します。アスタリスク (*) は、プライマリプライベート IPv4 アドレスにマッピングされているパブリック IPv4 アドレスまたは Elastic IP アドレスを示します。

    注記

    パブリック IPv4 アドレスは、コンソールのネットワークインターフェイスのプロパティとして表示されますが、NAT によってプライマリプライベート IPv4 アドレスにマッピングされます。したがって、インスタンスのネットワークインターフェイスのプロパティを、たとえば ifconfig (Linux) または ipconfig (Windows) を通して調べてみると、パブリック IPv4 アドレスは表示されていません。インスタンス内からインスタンスのパブリック IPv4 アドレスを確認するには、インスタンスのメタデータを使用できます。

インスタンスのメタデータを使用してインスタンスの IPv4 アドレスを確認するには

  1. インスタンスに接続します。

  2. プライベート IP アドレスにアクセスするには、次のコマンドを使用します。

    [ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/local-ipv4
  3. パブリック IP アドレスにアクセスするには、次のコマンドを使用します。

    [ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/public-ipv4

    インスタンスに Elastic IP アドレスが関連付けられている場合、返される値は Elastic IP アドレスの値です。

IPv6 アドレスの確認

Amazon EC2 コンソールを使用してインスタンスの IPv6 アドレスを確認できます。

コンソールを使用してインスタンスの IPv6 アドレスを確認するには

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

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

  3. インスタンスを選択します。詳細ペインで、[IPv6 IPs] から IPv6 アドレスを取得します。

インスタンスのメタデータを使用してインスタンスの IPv6 アドレスを確認するには

  1. インスタンスに接続します。

  2. 次のコマンドを使用して IPv6 アドレスを表示します (http://169.254.169.254/latest/meta-data/network/interfaces/macs/ から MAC アドレスを取得できます)。

    [ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s

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

各サブネットに、そのサブネット内で起動されるインスタンスにパブリック IP アドレスが割り当てられるかどうかを決定する属性があります。デフォルトでは、デフォルト以外のサブネットではこの属性が false に設定されており、デフォルトのサブネットではこの属性が true に設定されています。インスタンスを起動する場合、パブリック IPv4 アドレス指定機能を使用してインスタンスにパブリック IPv4 アドレスを割り当てるかどうかを制御することもできます。サブネットの IP アドレス指定属性のデフォルトの動作をオーバーライドできます。パブリック IPv4 アドレスは、Amazon のパブリック IPv4 アドレスプールから割り当てられ、デバイスインデックス eth0 を持つネットワークインターフェイスに割り当てられます。この機能は、インスタンス起動時の特定の条件により異なります。

重要

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

インスタンス起動時にパブリック IP アドレス機能にアクセスするには

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

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

  3. AMI およびインスタンスタイプを選択し、[Next: Configure Instance Details] を選択します。

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

    重要

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

  5. ウィザードの後続ページに表示されるステップにしたがって、インスタンスのセットアップを最後まで実行します。ウィザード設定オプションの詳細については、インスタンス起動ウィザードを使用してインスタンスを起動する を参照してください。最終ページの [Review Instance Launch] で、設定内容を確認します。[Launch] を選択してキーペアを選択し、インスタンスを起動します。

  6. [Instances] ページで、新しいインスタンスを選択し、そのパブリック IP アドレスを、詳細ペインの [IPv4 Public IP] フィールドで確認します。

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

コマンドラインを使用してパブリック IP アドレス指定機能を有効または無効にするには

次のコマンドの 1 つを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。

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

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

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

VPC とサブネットに IPv6 CIDR ブロックが関連付けられている場合は、起動時または起動後に IPv6 アドレスをインスタンスに割り当てることができます。IPv6 アドレスは、サブネットの IPv6 アドレス範囲から割り当てられ、eth0 のデバイスインデックスを持つネットワークインターフェイスに割り当てられます。

IPv6 は、現行世代のすべてのインスタンスタイプと、旧世代の C3、R3、I2 のインスタンスタイプでサポートされています。

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

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

  2. IPv6 をサポートする AMI およびインスタンスタイプを選択し、[Next: Configure Instance Details] を選択します。

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

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

別の方法として、起動後に IPv6 アドレスをインスタンスに割り当てることもできます。

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

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

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

  3. インスタンスを選択し、[アクション]、[ネットワーキング]、[IP アドレスの管理] の順に選択します。

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

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

注記

Amazon Linux 2016.09.0 以降または Windows Server 2008 R2 以降を使用してインスタンスを起動した場合、インスタンスは IPv6 用に設定されるため、インスタンスで IPv6 アドレスを認識するための追加のステップは不要です。古い AMI からインスタンスを起動した場合は、必要に応じてインスタンスを手動で設定します。詳細については、「インスタンスでの IPv6 の設定」 (Amazon VPC ユーザーガイド) を参照してください。

コマンドラインを使用して IPv6 アドレスを割り当てるには

次のコマンドの 1 つを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。

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

Amazon EC2 コンソールを使用してインスタンスから IPv6 アドレスを割り当て解除できます。

インスタンスから IPv6 アドレスを割り当て解除するには

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

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

  3. インスタンスを選択し、[アクション]、[ネットワーキング]、[IP アドレスの管理] の順に選択します。

  4. [IPv6 Addresses] で、割り当て解除する IPv6 アドレスに対して [割り当て解除] を選択します。

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

コマンドラインを使用して IPv6 アドレスを割り当て解除するには

次のコマンドの 1 つを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。