

# VPC とサブネットの IP アドレス指定
<a name="vpc-ip-addressing"></a>

IP アドレスは、VPC 内のリソースの相互通信と、インターネット経由でのリソースとの通信を可能にします。

Classless Inter-Domain Routing (CIDR) 表記は、IP アドレスとそのネットワークマスクを表す方法です。これらのアドレスの形式は次のとおりです。
+ 個々の IPv4 アドレスは 32 ビットで、0～255 の最大 3 桁の 10 進数の 4 つのグループで構成されます。例えば、10.0.1.0 です。
+ IPv4 CIDR ブロックには、IPv4 アドレス、それに続くスラッシュ、および 0 から 32 までの数値が含まれます。例えば、10.0.0.0/16 は、10.0.0.0 から 10.0.255.255 までの 65,536 個の IPv4 アドレスを表します。
+ 個々の IPv6 のアドレスは、128 ビットで、4 桁の 16 進数の 8 つのセグメントで構成されます。例えば、2001:0db8:85a3:0000:0000:8a2e:0370:7334 です。先頭のゼロをセグメントに含める必要はありません。連続する全ゼロセグメントを、アドレス内で二重コロン (::) に 1 回置き換えることもできます。したがって、サンプルアドレスは 2001:db8:85a3::8a2e:370:7334 として圧縮できます。
+ IPv6 CIDR ブロックには、全ゼロセグメントで終わる IPv6 アドレスがあり、全ゼロセグメントは二重コロンに置き換えられ、スラッシュと 0 から 128 の数値が続きます。例えば、2001:db8:1234:1a00::/56 は、2001:db8:1234:1a00:0000:0000:0000:0000 から 2001:db8:1234:1aff:ffff:ffff:ffff:ffff までの 2^72 個の IPv6 アドレスを表します。

詳細については、「[CIDR とは?](https://aws.amazon.com/what-is/cidr/)」を参照してください。

**Topics**
+ [プライベート IPv4 アドレス](#vpc-private-ipv4-addresses)
+ [パブリック IPv4 アドレス](#vpc-public-ipv4-addresses)
+ [IPv6 アドレス](#vpc-ipv6-addresses)
+ [独自の IP アドレスを使用する](#vpc-using-own-ip-address)
+ [Amazon VPC IP Address Manager を使用する](#vpc-using-ipam)
+ [VPC CIDR ブロック](vpc-cidr-blocks.md)
+ [サブネット CIDR ブロック](subnet-sizing.md)
+ [IPv4 と IPv6 を比較する](ipv4-ipv6-comparison.md)
+ [マネージドプレフィックスリスト](managed-prefix-lists.md)
+ [AWS IP アドレスの範囲](aws-ip-ranges.md)
+ [VPC の IPv6 サポート](vpc-migrate-ipv6.md)
+ [AWS の IPv6 サポート](aws-ipv6-support.md)

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

プライベート IPv4 アドレス (このトピックでは*プライベート IP アドレス*とも呼ばれます) は、インターネット経由では到達できないアドレスで、VPC 内のインスタンス間の通信に使用できます。VPC でインスタンスを起動すると、サブネットの IPv4 アドレス範囲内のプライマリプライベート IP アドレスがインスタンスのプライマリネットワークインターフェイス (例えば eth0) に割り当てられます。また、各インスタンスには、インスタンスのプライベート IP アドレスに解決されるプライベート (内部) DNS ホスト名も割り当てられます。ホスト名には、リソースベースと IP ベースの 2 つのタイプがあります。詳細については、[EC2 インスタンスの名前付け](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html)を参照してください。プライマリプライベート IP アドレスを指定しない場合、サブネットの範囲内で使用可能な IP アドレスが選択されます。ネットワークインターフェイスの詳細については、「*Amazon EC2 ユーザーガイド*」の「[Elastic Network Interface](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)」を参照してください。

VPC 内で実行されているインスタンスに、追加のプライベート IP アドレス（セカンダリプライベート IP アドレスと呼ばれる）を割り当てることができます。プライマリプライベート IP アドレスとは異なり、セカンダリプライベート IP アドレスはあるネットワークインターフェイスから別のネットワークインターフェイスへ割り当て直すことができます。プライベート IP アドレスは、インスタンスが停止されて再起動されたときもネットワークインターフェイスとの関連付けを維持し、インスタンスが終了すると解放されます。プライマリ IP アドレスとセカンダリ IP アドレスの詳細については、「*Amazon EC2 ユーザーガイド*」の「[複数の IP アドレス](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/MultipleIP.html)」を参照してください。

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

サブネットの IPv4 アドレス範囲がインターネットにアドバタイズされることはありません。

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

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

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

インスタンスがパブリック IP アドレスを取得するかどうかは、以下を実行することで制御できます。
+ サブネットのパブリック IP アドレス属性を変更する。詳細については、「[サブネットの IP アドレス指定属性を変更する](subnet-public-ip.md)」を参照してください。
+ インスタンスの起動時のパブリック IP アドレス割り当てを有効または無効にする。この設定は、サブネットのパブリック IP アドレス指定属性を上書きします。
+ パブリック IP アドレスは、ネットワークインターフェースに関連付けられた IP アドレスを管理することで、起動後にインスタンスから割り当て解除できます。詳細については、「*Amazon EC2 ユーザーガイド*」の「[IP アドレスを管理する](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#managing-network-interface-ip-addresses)」を参照してください。

パブリック IP アドレスは Amazon のパブリック IP アドレスプールから割り当てられ、お客様のアカウントには関連付けられていません。パブリック IP アドレスとインスタンスの関連付けを解除すると、アドレスが解放されてプールに戻され、そのアドレスを使用することができなくなります。場合によっては、AWS がお客様のインスタンスからパブリック IP アドレスを解放する、または新しいインスタンスに割り当てる場合があります。詳細については、「*Amazon EC2 ユーザーガイド*」の「[パブリック IP アドレス](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html#concepts-public-addresses)」を参照してください。

必要に応じてインスタンスに割り当てたりインスタンスから削除したりできる永続的なパブリック IP アドレスをお客様のアカウントに割り当てる必要がある場合は、Elastic IP アドレスを使用します。詳細については、「[Elastic IP アドレスを VPC 内のリソースに関連付ける](vpc-eips.md)」を参照してください。

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

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

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

インターネットが拡大し続けるにつれて、IP アドレスの必要性も高まります。IP アドレスの最も一般的な形式は IPv4 です。IPv6 は IP アドレスの新しい形式で、IPv4 よりも大きなアドレス空間を提供します。IPv6 により、IPv4 アドレス枯渇の問題が解決され、より多くのデバイスをインターネットに接続できるようになります。移行は段階的に行われますが、IPv6 の導入が増えるにつれて、ネットワークを簡素化し、IPv6 の高度な機能を活用して接続性、パフォーマンス、セキュリティを向上させることができます。

Amazon EC2、Amazon S3、Amazon CloudFront などの多くの AWS サービスは、デュアルスタック (IPv4 および IPv6) または IPv6 専用のサポートを提供しており、リソースに IPv6 アドレスを割り当てて IPv6 プロトコル経由でアクセスできるようになり、IPv6 を導入した顧客のネットワークの設定と管理が簡素化されます。他のサービスでは、デュアルスタックおよび IPv6 専用の限定的または部分的なサポートを提供しています。

IPv6 をサポートしているサービスの詳細については、「[IPv6 をサポートする AWS サービス](aws-ipv6-support.md)」を参照してください。

なお、一部の IPv6 アドレスは、インターネットエンジニアリングタスクフォースによって予約されています。予約済み 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)」を参照してください。

**注記**  
AWS ではパブリック IPv6 アドレス指定とプライベート IPv6 アドレス指定の両方が利用できます。AWS では、AWS からインターネットでアドバタイズされる IP アドレスはパブリック IP アドレスとして定義されますが、プライベート IP アドレスは AWS からインターネットでアドバタイズされず、アドバタイズすることもできません。

**Topics**
+ [パブリック IPv6 アドレス](#vpc-ipv6-addresses-public)
+ [プライベート IPv6 アドレス](#vpc-ipv6-addresses-private)

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

Amazon が提供する IPv6 アドレスは常にインターネットでアドバタイズされます。これはグローバルに一意であるため、インターネット経由で到達できます。サブネットのルーティングを制御するか、セキュリティグループとネットワーク ACL を使用することで、EC2 インスタンスなどのリソースに IPv6 アドレスを使用してアクセスできるかどうかを制御できます。

以下に、パブリック IPv6 アドレスをワークロードに使用するための準備方法をいくつか紹介します。
+ Amazon VPC IP Address Manager で IPAM を作成し、Amazon 所有のパブリック IPv6 アドレス範囲を IPAM アドレスプールにプロビジョニングします。詳細については、「*Amazon VPC IPAM ユーザーガイド*」の「[IPv6 プールを作成する](https://docs.aws.amazon.com/vpc/latest/ipam/intro-create-ipv6-pools.html)」を参照してください。
+ IPAM があり、パブリック IPv6 アドレス範囲を所有している場合は、パブリック IPv6 アドレス範囲の一部またはすべてを IPAM に持ち込み、パブリック IPv6 アドレス範囲を IPAM アドレスプールにプロビジョニングします。詳細については、「*Amazon VPC IPAM ユーザーガイド*」の「[チュートリアル: IP アドレスを IPAM に移行する](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-ipam.html)」を参照してください。
+ IPAM はないが、パブリック IPv6 アドレス範囲を所有している場合は、パブリック IPv6 アドレス範囲の一部またはすべてを AWS に持ち込みます。詳細については、「*Amazon EC2 ユーザーガイド*」の「[Amazon EC2 に自分の IP アドレスを持ち込む (BYOIP)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html)」を参照してください。

パブリック IPv6 アドレスを使用する準備ができたら、インスタンスにパブリック IPv6 アドレスを割り当てたり (「*Amazon EC2 ユーザーガイド*」の「[EC2 インスタンスの IPv6 アドレスを管理する](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/working-with-ipv6-addresses.html)」を参照)、パブリック IPv6 CIDR ブロックを VPC に割り当てたり (「[CIDR ブロックを追加するまたは VPC から削除する](add-ipv4-cidr.md)」を参照)、IPv6 CIDR ブロックをサブネットに関連付けたり (「[サブネットの IP アドレス指定属性を変更する](subnet-public-ip.md)」を参照) することができます。

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

プライベート IPv6 アドレスは、AWS からインターネットでアドバタイズされず、そしてアドバタイズできない IPv6 アドレスです。

プライベートネットワークで IPv6 をサポートし、このアドレスからインターネットにトラフィックをルーティングするつもりがない場合は、プライベート IPv6 アドレスを使用できます。プライベート IPv6 アドレスを持つリソースからインターネットに接続する場合、それは可能ですが、そのためにはパブリック IPv6 アドレスを持つ別のサブネットのリソースを介してトラフィックをルーティングする必要があります。

プライベート IPv6 アドレスには 2 つのタイプがあります。
+ **IPv6 ULA 範囲**: [RFC4193](https://datatracker.ietf.org/doc/html/rfc4193) で定義されている IPv6 アドレス。このアドレス範囲は常に「fc」または「fd」で始まり、簡単に識別できます。有効な IPv6 ULA スペースは、Amazon の予約範囲 fd00::/16 と重複しない fd00::/8 より下のいずれかです。
+ **IPv6 GUA 範囲**: [RFC3587](https://datatracker.ietf.org/doc/html/rfc3587) で定義されている IPv6 アドレス。IPv6 GUA 範囲をプライベート IPv6 アドレスとして使用するオプションはデフォルトで無効になっているため、使用する前に有効にする必要があります。詳細については、「Amazon VPC IPAM ユーザーガイド」の「[プライベート IPv6 GUA CIDR のプロビジョニングを有効にする](https://docs.aws.amazon.com/vpc/latest/ipam/enable-prov-ipv6-gua.html)」を参照してください。

次の点に注意してください。
+ プライベート IPv6 アドレスは、[Amazon VPC IP Address Manager (IPAM)](https://docs.aws.amazon.com/vpc/latest/ipam/what-it-is-ipam.html) 経由でのみ使用できます。IPAM は、IPv6 ULA および GUA アドレスを持つリソースを検出し、プールをモニタリングして、IPv6 ULA および GUA アドレス空間が重複していないかを確認します。
+ プライベート IPv6 GUA 範囲を使用するときは、独自に所有する IPv6 GUA 範囲を使用する必要があります。
+ プライベート IPv6 アドレスは、AWS によってインターネットでアドバタイズされることはなく、そしてアドバタイズすることができません。AWS では、VPC にインターネットゲートウェイまたは Egress Only インターネットゲートウェイがある場合でも、プライベート IPv6 範囲からのパブリックインターネットへの直接送信を許可しません。プライベート IPv6 アドレスは、インターネットゲートウェイエッジで自動的にドロップされ、パブリックにルーティングされません。
+ AWS では、最初の 4 つのサブネットプライベート IPv6 アドレスと最後のサブネットプライベート IPv6 アドレスが予約されます。
+ プライベート IPv6 ULA の有効範囲は、fd80::/9 以降の /9～/60 です。
+ VPC にプライベート IPv6 GUA 範囲が割り当てられている場合、同じ VPC 内のプライベート IPv6 GUA スペースと重複するパブリック IPv6 GUA スペースを使用することはできません。
+ プライベート IPv6 ULA および GUA アドレス範囲を持つリソース間の通信がサポートされています (Direct Connect、VPC ピアリング、Transit Gateway、および VPN 接続間の通信など)。
+ プライベート IPv6 アドレスは、IPv6 のみ、およびデュアルスタックの [VPC サブネット](configure-subnets.md#subnet-ip-address-range)、[Elastic Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/load-balancer-getting-started.html)、[AWS Global Accelerator エンドポイント](https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoints.html)で使用できます。
+ プライベート IPv6 アドレスは無料です。

ワークロードにプライベート IPv6 アドレスを使用するための準備方法の一部を以下に示します。
+ Amazon VPC IP Address Manager で IPAM を作成し、IPAM アドレスプールにプライベート IPv6 *ULA* 範囲をプロビジョニングします。詳細については、「*Amazon VPC IPAM ユーザーガイド*」の「[IPv6 プールを作成する](https://docs.aws.amazon.com/vpc/latest/ipam/intro-create-ipv6-pools.html)」を参照してください。
+ Amazon VPC IP Address Manager で IPAM を作成し、IPAM アドレスプールにプライベート IPv6 *GUA* 範囲をプロビジョニングします。IPv6 GUA 範囲をプライベート IPv6 アドレスとして使用するオプションはデフォルトで無効になっているため、使用する前に IPAM で有効にする必要があります。詳細については、「*Amazon VPC IPAM ユーザーガイド*」の「[プライベート IPv6 GUA CIDR のプロビジョニングを有効にする](https://docs.aws.amazon.com/vpc/latest/ipam/enable-prov-ipv6-gua.html)」を参照してください。

プライベート IPv6 アドレスを使用する準備ができたら、IPAM プールから VPC にプライベート IPv6 CIDR ブロックを割り当てたり (「[CIDR ブロックを追加するまたは VPC から削除する](add-ipv4-cidr.md)」を参照)、IPv6 CIDR ブロックをサブネットに関連付けたり (「[サブネットの IP アドレス指定属性を変更する](subnet-public-ip.md)」を参照) することができます。

## 独自の IP アドレスを使用する
<a name="vpc-using-own-ip-address"></a>

独自のパブリック IPv4 アドレス範囲または IPv6 アドレス範囲の一部またはすべてを AWS アカウントに持ち込むことができます。アドレス範囲は引き続き所有できますが、AWS はデフォルトで、この範囲をインターネットでアドバタイズします。アドレス範囲を AWS に設定すると、そのアドレス範囲がアドレスプールとしてアカウントに表示されます。IPv4 アドレスプールから Elastic IP アドレスを作成し、IPv6 アドレスプールからの IPv6 CIDR ブロックを VPC に関連付けることができます。

詳細については、「*Amazon EC2 ユーザーガイド*」の「[自分の IP アドレスを持ち込む (BYOIP)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html)」を参照してください。

## Amazon VPC IP Address Manager を使用する
<a name="vpc-using-ipam"></a>

Amazon VPC IP Address Manager (IPAM)は、AWS ワークロードの IP アドレスを計画、追跡、監視しやすくする VPC 機能です。IPAM を使用すると、特定のビジネスルールを使用して IP アドレス CIDR を VPC に割り当てることができます。

詳細については、「*Amazon VPC IPAM ユーザーガイド*」の「[IPAM とは](https://docs.aws.amazon.com/vpc/latest/ipam/what-it-is-ipam.html)」を参照してください。