

# Amazon EC2 インスタンスの IP アドレス指定
<a name="using-instance-addressing"></a>

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

EC2 インスタンスを起動するときに、VPC とサブネットを指定できます。インスタンスは、サブネットの CIDR 範囲からプライベート IPv4 アドレスを受け取ります。必要に応じて、インスタンスにパブリック IPv4 アドレスと IPv6 アドレスを設定できます。異なる VPC の EC2 インスタンスがパブリック IP アドレスを使用して通信する場合、トラフィックは AWS プライベートグローバルネットワークにとどまり、パブリックインターネットを通過しません。

**Topics**
+ [プライベート IPv4 アドレス](#concepts-private-addresses)
+ [パブリック IPv4 アドレス](#concepts-public-addresses)
+ [パブリック IPv4 アドレスの最適化](#concepts-public-ip-address-opt)
+ [IPv6 アドレス](#ipv6-addressing)
+ [複数の IP アドレス](#multiple-ip-addresses)
+ [EC2 インスタンスのホスト名](#amazon-dns)
+ [リンクローカルアドレス](#link-local-addresses)
+ [EC2 インスタンスの IPv4 アドレスを管理する](working-with-ip-addresses.md)
+ [EC2 インスタンスの IPv6 アドレスを管理する](working-with-ipv6-addresses.md)
+ [EC2 インスタンスのセカンダリ IP アドレス](instance-secondary-ip-addresses.md)
+ [Windows インスタンスのセカンダリプライベート IPv4 アドレスを設定する](config-windows-multiple-ip.md)

## プライベート IPv4 アドレス
<a name="concepts-private-addresses"></a>

プライベート IPv4 アドレスはインターネットから到達できない IP アドレスです。プライベート IPv4 アドレスは同じ VPC 内のインスタンス間の通信に使用できます。プライベート IPv4 アドレスの標準および仕様については[RFC 1918](http://www.faqs.org/rfcs/rfc1918.html) を参照してください。DHCP を使用してインスタンスにプライベート IPv4 アドレスが割り当てられます。

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

VPC サブネットは次のいずれかのタイプです。
+ IPv4 専用サブネット - これらのサブネットにはIPv4 アドレスが割り当てられたリソースのみを作成できます。
+ IPv6 専用サブネット - これらのサブネットにはIPv6 アドレスが割り当てられたリソースのみを作成できます。
+ IPv4 および IPv6 サブネット - これらのサブネットにはIPv4 または IPv6 アドレスのいずれかが割り当てられたリソースを作成できます。

EC2 インスタンスをIPv4 専用サブネットまたはデュアルスタック (IPv4 および IPv6) サブネットで起動すると、インスタンスはサブネットの IPv4 アドレス範囲からプライマリプライベート IP アドレスを受け取ります。詳細については[Amazon VPC User Guide] (Amazon VPC ユーザーガイド) の[[IP addressing]](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html) (IP アドレス指定) を参照してください。プライマリプライベート IP アドレスを指定しないでインスタンスを起動すると、サブネットの IPv4 範囲内で使用可能な IP アドレスが自動的に選択されます。各インスタンスにはプライマリプライベート IPv4 アドレスが割り当てられたデフォルトのネットワークインターフェイス (eth0) があります。追加のプライベート IPv4 アドレス (*セカンダリプライベート IPv4 アドレス*) も指定できます。プライマリプライベート IP アドレスとは異なり、セカンダリプライベート IP アドレスは別のインスタンスに割り当て直すことができます。詳細については、「[複数の IP アドレス](#multiple-ip-addresses)」を参照してください。

プライベート IPv4 アドレスはプライマリアドレスまたはセカンダリアドレスを問わず、インスタンスが停止して起動、または休止して起動した際に、ネットワークインターフェイスに関連付けられたままになり、インスタンスを終了するとリリースされます。

## パブリック IPv4 アドレス
<a name="concepts-public-addresses"></a>

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

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

インスタンスがパブリック IP アドレスを割り当てられるかどうかを制御するには以下の方法を使用します。
+ **サブネットのパブリック IP アドレス指定属性を変更します。**詳細については「*Amazon VPC ユーザーガイド*」の「[サブネットのパブリック IPv4 アドレス指定属性の変更](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)」を参照してください。
+ **起動時にパブリック IP アドレス指定機能を有効または無効にします。**これにより、サブネットのパブリック IP アドレス指定属性が上書きされます。詳細については、「[起動時にパブリック IPv4 アドレスを割り当てる](working-with-ip-addresses.md#public-ip-addresses)」を参照してください。
+ **起動後にインスタンスからパブリック IP アドレスの割り当てを解除します。**詳細については、「[ネットワークインターフェイスの IP アドレスを管理する](managing-network-interface-ip-addresses.md)」を参照してください。

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

次の場合、パブリック IP アドレスをインスタンスか解放し、新しい IP アドレスを割り当てます。
+ インスタンスが停止、休止状態、または終了すると、インスタンスのパブリック IP アドレスが開放されます。停止または休止状態のインスタンスは起動時に、新しいパブリック IP アドレスが割り当てられます。
+ Elastic IP アドレスをインスタンスに関連付けると、パブリック IP アドレスが解放されます。インスタンスから Elastic IP アドレスの関連付けを解除すると、そのインスタンスには新しいパブリック IP アドレスが割り当てられます。
+ インスタンスのパブリック IP アドレスを開放し、セカンダリネットワークインターフェイスがある場合、新しいパブリック IP アドレスは割り当てられません。
+ インスタンスのパブリック IP アドレスが開放され、且つそのインスタンスに Elastic IP アドレスに関連付けられたセカンダリプライベート IP アドレスがある場合、新しいパブリック IP アドレスは割り当てられません。

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

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

Amazon VPC IP Address Manager (IPAM) を使用している場合はAWS からパブリック IPv4 アドレスの連続したブロックを取得し、それを使用して Elastic IP アドレスを AWS リソースに割り当てることができます。連続した IPv4 アドレスブロックを使用すると、セキュリティアクセスコントロールリストの管理オーバーヘッドを大幅に削減し、AWS でスケーリングするエンタープライズの IP アドレスの割り当てと追跡を簡素化できます。詳細については「Amazon VPC IPAM ユーザーガイド」の「[Allocate sequential Elastic IP addresses from an IPAM pool](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-eip-pool.html)」を参照してください。

**考慮事項**
+ AWS は、実行中のインスタンスに関連付けられているパブリック IPv4 アドレスや Elastic IP アドレスを含めたすべてのパブリック IPv4 アドレスの料金を請求します。詳細については「[Amazon VPC の料金](https://aws.amazon.com/vpc/pricing/)」ページの「**パブリック IPv4 アドレス**」タブを参照してください。
+ インスタンスがパブリック NAT IP アドレスを使用して他のインスタンスにアクセスする場合、アクセス先のインスタンスが同じリージョンにあるかどうかによって、リージョンデータ転送またはインターネットデータ転送に対して課金されます。

## パブリック IPv4 アドレスの最適化
<a name="concepts-public-ip-address-opt"></a>

AWS では実行中のインスタンスに関連付けられているパブリック IPv4 アドレスと Elastic IP アドレスを含む、すべてのパブリック IPv4 アドレスに対して料金が課されます。詳細については「[Amazon VPC の料金](https://aws.amazon.com/vpc/pricing/)」ページの「**パブリック IPv4 アドレス**」タブを参照してください。

次のリストには使用するパブリック IPv4 アドレスの数を最適化するために実行できるアクションが含まれています。
+ [Elastic Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/load-balancer-getting-started.html) を使用して EC2 インスタンスへのトラフィックを分散させ、[インスタンス に割り当てられたプライマリ ENI で**パブリック IP の自動割り当て**を無効にします](managing-network-interface-ip-addresses.md)。ロードバランサーは 1 つのパブリック IPv4 アドレスを使用するため、パブリック IPv4 アドレスの数を削減できます。パブリック IPv4 アドレスの数をさらに削減すために、既存のロードバランサーを統合することもできます。
+ NAT ゲートウェイを使用する唯一の理由が、メンテナンスまたは緊急のためにプライベートサブネットの EC2 インスタンスに SSH 接続することである場合は代わりに [EC2 Instance Connect Endpoint](connect-using-eice.md) を使用することを検討してください。EC2 Instance Connect Endpoint を使用すると、パブリック IPv4 アドレスを使わないでインスタンスに接続できます。
+ EC2 インスタンスがパブリックサブネットにあり、パブリック IP アドレスが割り当てられている場合はインスタンスをプライベートサブネットに移動し、パブリック IP アドレスを削除して、EC2 インスタンスとの間のアクセスを許可するために[パブリック NAT ゲートウェイ](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)を使用することを検討してください。NAT ゲートウェイを使用する場合は費用に注意する必要があります。この計算方法を使用して、NAT ゲートウェイを使用する場合の費用対効果を判断します。この計算に必要な `Number of public IPv4 addresses` は[AWS請求コストと使用状況レポート を作成](https://aws.amazon.com/blogs/networking-and-content-delivery/identify-and-optimize-public-ipv4-address-usage-on-aws/)することで取得できます。

  ```
  NAT gateway per hour + NAT gateway public IPs + NAT gateway transfer / Existing public IP cost
  ```

  コードの説明は以下のとおりです。
  + `NAT gateway per hour = $0.045 * 730 hours in a month * Number of Availability Zones the NAT gateways are in`
  + `NAT gateway public IPs = $0.005 * 730 hours in a month * Number of IPs associated with your NAT gateways`
  + `NAT gateway transfer = $0.045 * Number of GBs that will go through the NAT gateway in a month`
  + `Existing public IP cost = $0.005 * 730 hours in a month * Number of public IPv4 addresses`

  合計が 1 未満の場合、NAT ゲートウェイの方がパブリック IPv4 アドレスよりも安価に済みます。
+ [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html) を使用して、パブリック IPv4 アドレスやインターネットゲートウェイを使用するのではなく、AWS サービスまたは他の AWS アカウントによってホストされているサービスにプライベートに接続します。
+ Amazon が所有するパブリック IPv4 アドレスを使用するのではなく、[独自の IP アドレス範囲 (BYOIP) を AWS 環境に持ち込み](ec2-byoip.md)、その範囲をパブリック IPv4 アドレスに使用します。
+ [サブネット内に起動されたインスタンスに対するパブリック IPv4 アドレスの自動割り当て](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)を無効ににします。このオプションは通常、サブネットの作成時に VPC に対してデフォルトで無効になっていますが、既存のサブネットをチェックして無効になっていることを確認する必要があります。
+ パブリック IPv4 アドレスを必要としない EC2 インスタンスがある場合は[インスタンスにアタッチされたネットワークインターフェイスで**パブリック IP の自動割り当て**が無効になっていることを確認してください](managing-network-interface-ip-addresses.md)。
+ [プライベートサブネットの EC2 インスタンス用に AWS Global Accelerator](https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoints.html) でアクセラレータエンドポイントを設定して、パブリック IP アドレスを使用せずにインターネットトラフィックが VPCs内のエンドポイントに直接流れるようにします。また、[独自のアドレスを AWS Global Accelerator に持ち込んで](https://docs.aws.amazon.com/global-accelerator/latest/dg/using-byoip.html)、アクセラレーターの静的 IP アドレスに独自の IPv4 アドレスを使用することもできます。

## IPv6 アドレス
<a name="ipv6-addressing"></a>

IPv6 アドレスはグローバルに一意であり、プライベートのまま、またはインターネット経由で到達可能になるように設定できます。AWS ではパブリック IPv6 とプライベート IPv6 のどちらのアドレス指定も利用可能です。
+ **プライベート IPv6**: AWS ではAWS からインターネット上でアドバタイズされておらず、アドバタイズできない IPv6 アドレスをプライベート IPv6 アドレスと見なします。
+ **パブリック IPv6**: AWS ではAWS からインターネットでアドバタイズされている IPv6 アドレスをパブリック IPv6 アドレスと見なします。

パブリックおよびプライベート IPv6 アドレスの詳細については「Amazon VPC ユーザーガイド」の「[IPv6 アドレス](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html#vpc-ipv6-addresses)」を参照してください。

C1, M1, M2, M3 を除くすべてのインスタンスタイプが IPv6 アドレスをサポートします。 T1

IPv6 CIDR ブロックが VPC およびサブネットと関連付けられており、以下のいずれかに該当する場合、EC2 インスタンスには IPv6 アドレスが割り当てられます。
+ 起動時にサブネットからインスタンスに IPv6 アドレスが自動的に割り当てられるように設定されている。詳細については「[サブネットの IP アドレス指定属性を変更する](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html)」を参照してください。
+ 起動時に IPv6 アドレスをインスタンスに割り当てる。
+ 起動後に IPv6 アドレスをインスタンスのプライマリネットワークインターフェイスに割り当てる。
+ 起動後に IPv6 アドレスを同じサブネットのネットワークインターフェイスに割り当て、そのネットワークインターフェイスをインスタンスにアタッチします。

起動時にインスタンスに IPv6 アドレスが割り当てられると、そのアドレスはインスタンスのプライマリネットワークインターフェイス (eth0) と関連付けられます。インスタンスのプライマリネットワークインターフェイス (eth0) の IPv6 アドレスは次の方法で管理できます。
+ ネットワークインターフェイスへ IPv6 アドレスを割り当て/割り当て解除します。ネットワークインターフェイスに割り当てることができる IPv6 アドレスの数と、インスタンスにアタッチできるネットワークインターフェイスの数はインスタンスタイプごとに異なります。詳細については「[ネットワークインターフェイスあたりの IP アドレスの最大数](AvailableIpPerENI.md)」を参照してください。
+ プライマリ IPv6 アドレスを有効にします。プライマリ IPv6 アドレスにより、インスタンスまたは ENI へのトラフィックの中断を回避できます。詳細については「[EC2 インスタンス用のネットワークインターフェイスを作成する](create-network-interface.md)」または「[ネットワークインターフェイスの IP アドレスを管理する](managing-network-interface-ip-addresses.md)」を参照してください。

IPv6 アドレスはインスタンスの停止して起動、または休止して起動する際には保持され、インスタンスの終了時にリリースされます。IPv6 アドレスは別のネットワークインターフェイスに割り当てられている間は再割り当てできません。最初に割り当てを解除する必要があります。

インスタンスのサブネットのルーティングを制御するか、セキュリティグループとネットワーク ACL ルールを使用することで、IPv6 アドレスを介してインスタンスに接続できるかどうかを制御できます。詳細については「*Amazon VPC User Guide*」の[インターネットワークトラフィックのプライバシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html)を参照してください。

予約済み IPv6 アドレスの範囲については「[IANA IPv6 Special-Purpose Address Registry](http://www.iana.org/assignments/iana-ipv6-special-registry/iana-ipv6-special-registry.xhtml)」と「[RFC4291](https://tools.ietf.org/html/rfc4291)」を参照してください。

## 複数の IP アドレス
<a name="multiple-ip-addresses"></a>

インスタンスに複数のプライベート IPv4 および IPv6 アドレスを指定できます。インスタンスに指定できるネットワークインターフェイスとプライベート IPv4 および IPv6 アドレスの数はインスタンスタイプによって異なります。詳細については、「[ネットワークインターフェイスあたりの IP アドレスの最大数](AvailableIpPerENI.md)」を参照してください。

**ユースケース**
+ 1 つのサーバーで複数の SSL 証明書を使用し、各インターフェイスに各 IP アドレスに割り当てることで、1 つのサーバーで複数のウェブサイトをホストします。
+ 各ネットワークインターフェイス用に複数の IP アドレスを持つネットワークアプライアンス (ファイアウォールやロードバランサーなど) を運用します。
+ インスタンスでエラーが発生した場合に、セカンダリ IP アドレスをスタンバイインスタンスに再割り当てすることによって、内部トラフィックをスタンバイインスタンスにリダイレクトします。

**複数の IP アドレスを使用する方法**
+ セカンダリプライベート IPv4 アドレスをネットワークインターフェイスに割り当てることができます。
+ IPv6 CIDR ブロックが関連付けられているサブネット内のネットワークインターフェイスに複数の IPv6 アドレスを割り当てることができます。
+ ネットワークインターフェイスのサブネットの IPv4 CIDR ブロック範囲からセカンダリ IPv4 アドレスを選択する必要があります。
+ ネットワークインターフェイスのサブネットの IPv6 CIDR ブロック範囲から IPv6 アドレスを選択する必要があります。
+ セキュリティグループを関連付けるのは個々の IP アドレスではなく、ネットワークインターフェイスです。そのため、ネットワークインターフェイスで指定した各 IP アドレスはそのネットワークインターフェイスのセキュリティグループの対象です。
+ 複数の IP アドレスは実行中または停止したインスタンスにアタッチされたネットワークインターフェイスに割り当てたり、割り当て解除したりできます。
+ ネットワークインターフェイスに割り当てられているセカンダリプライベート IPv4 アドレスは明示的に許可された場合、別のネットワークインターフェイスに割り当て直すことができます。
+ IPv6 アドレスは最初に既存のネットワークインターフェイスから割り当て解除しない限り、別のネットワークインターフェイスに再割り当てすることはできません。
+ コマンドラインツールまたは API を使用して複数の IP アドレスをネットワークインターフェイスに割り当てるときに、いずれかの IP アドレスを割り当てることができない場合、オペレーション全体が失敗します。
+ プライマリプライベート IPv4 アドレス、セカンダリプライベート IPv4 アドレス、Elastic IP アドレス、および IPv6 アドレスはセカンダリネットワークインターフェイスをインスタンスからデタッチしたり、インスタンスにアタッチしても、セカンダリネットワークインターフェイスへの割り当ては維持します。
+ プライマリネットワークインターフェイスをインスタンスからデタッチすることはできませんが、プライマリネットワークインターフェイスのセカンダリプライベート IPv4 アドレスを別のネットワークインターフェイスに再割り当てすることはできます。

詳細については、「[EC2 インスタンスのセカンダリ IP アドレス](instance-secondary-ip-addresses.md)」を参照してください。

## EC2 インスタンスのホスト名
<a name="amazon-dns"></a>

EC2 インスタンスを作成すると、AWS はそのインスタンスのホスト名を作成します。ホスト名のタイプと、AWS によるプロビジョニング方法についての詳細[EC2 インスタンスのホスト名とドメイン](ec2-instance-naming.md)を参照してください。Amazon は、Amazon が提供するホスト名を IPv4 および IPv6 アドレスに解決する DNS サーバーを提供します。Amazon DNS サーバーは VPC ネットワークの範囲に 2 をプラスしたアドレスにあります。詳細については、*Amazon VPC ユーザーガイド*の「[DNS attributes for your VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html)」(VPC の DNS 属性) を参照してください。

## リンクローカルアドレス
<a name="link-local-addresses"></a>

リンクローカルアドレスはよく知られた、ルーティング不可の IP アドレスです。Amazon EC2 はリンクローカルアドレス空間のアドレスを使用して、EC2 インスタンスからのみアクセスできるサービスを提供します。これらのサービスはインスタンス上では実行されず、基盤となるホスト上で実行されます。これらのサービスのリンクローカルアドレスにアクセスすると、Xen ハイパーバイザーまたは Nitro コントローラーのどちらかと通信することになります。

**リンクローカルアドレスの範囲**
+ IPv4 — 169.254.0.0/16 (169.254.0.0～169.254.255.255)
+ IPv6 – fe80::/10

**リンクローカルアドレスを使用してアクセスするサービス**
+ [インスタンスメタデータサービス](instancedata-data-retrieval.md)
+ [Amazon Route 53 Resolver](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#AmazonDNS) (Amazon DNS サーバーとも呼ばれます)
+ [Amazon Time Sync Service](set-time.md)
+ [AWS KMS サーバー](common-messages.md#activate-windows)