EC2 インスタンスで複数の IP アドレス
インスタンスに複数のプライベート IPv4 および IPv6 アドレスを指定できます。インスタンスに指定できるネットワークインターフェイスとプライベート IPv4 および IPv6 アドレスの数は、インスタンスタイプによって異なります。詳細については、ネットワークインターフェイスあたりの IP アドレスの最大数を参照してください。
次のような場合、複数の IP アドレスを VPC 内のインスタンスに割り当てると便利です。
-
1 つのサーバーで複数の SSL 証明書を使用し、各インターフェイスに各 IP アドレスに割り当てることで、1 つのサーバーで複数のウェブサイトをホストする。
-
各ネットワークインターフェイス用に複数の IP アドレスを持つネットワークアプライアンス (ファイアウォールやロードバランサーなど) を運用する。
-
インスタンスでエラーが発生した場合に、セカンダリ 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 アドレスを別のネットワークインターフェイスに再割り当てすることはできます。
次の一覧は、Elastic IP アドレスで複数の IP アドレスを使用する方法の説明です (IPv4 のみ)。
-
各プライベート IPv4 アドレスを関連付けることができる Elastic IP アドレスは 1 つであり、逆に各 Elastic IP アドレスを関連付けることができるプライベート IPv4 アドレスは 1 つです。
-
セカンダリプライベート IPv4 アドレスを別のインターフェイスに再割り当てした場合、セカンダリプライベート IPv4 アドレスと Elastic IP アドレスの関連付けは維持されます。
-
セカンダリプライベート IPv4 アドレスとインターフェイスの割り当てを解除すると、関連付けられた Elastic IP アドレスとセカンダリプライベート IPv4 アドレスとの関連付けは自動的に解除されます。
複数の IPv4 アドレスの使用
セカンダリプライベート IPv4 アドレスは、インスタンスに割り当てたり、Elastic IPv4 アドレスと関連付けたり、割り当て解除したりできます。
タスク
セカンダリプライベート IPv4 アドレスの割り当て
セカンダリプライベート IPv4 アドレスは、インスタンスの起動時または起動後に、インスタンスのネットワークインターフェイスに割り当てることができます。
インスタンスの起動時にセカンダリプライベート IPv4 アドレスを割り当てるには
-
インスタンスを起動するための手順に従います。[ネットワーク設定] で、[編集] を選択します。
-
VPC とサブネットを選択します。
-
高度なネットワーク設定の拡張。
-
[セカンダリ IP] で、[自動で割り当て] を選択して IP アドレスの数を入力するか (Amazon が自動的にセカンダリ IPv4 アドレスを割り当てます)、[手動で割り当て] を選択して IPv4 アドレスを入力します。
-
インスタンスを起動する残りのステップを完了します。
コマンドラインを使用して起動時にセカンダリ IPv4 アドレスを割り当てるには
次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。
-
run-instances コマンド (AWS CLI) の
--secondary-private-ip-addresses
オプション -
-NetworkInterface
を定義し、New-EC2Instance コマンド (AWS Tools for Windows PowerShell) にPrivateIpAddresses
パラメータを指定します。
セカンダリプライベート IPv4 アドレスをネットワークインターフェイスに割り当てるには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[ネットワークインターフェイス] を選択し、インスタンスのネットワークインターフェイスを選択します。
-
[Actions]、[Manage IP Addresses] の順に選択します。
-
ネットワークインターフェイスを展開します。[IPv4 アドレス] で、[新しい IP アドレスの割り当て] を選択します。
-
インスタンスのサブネットの範囲に含まれる特定の IPv4 アドレスを入力するか、フィールドを空のままにして Amazon によって IPv4 アドレスが自動的に選択されるようにします。
-
(省略可能) セカンダリプライベート IP アドレスが既に別のネットワークインターフェイスに割り当てられている場合、[許可] を選択して、セカンダリプライベート IP アドレスを割り当て直すことができます。
-
[Save] を選択します。
または、インスタンスにセカンダリプライベート IPv4 アドレスを割り当てることができます。ナビゲーションペインで [インスタンス] を選択し、インスタンスを選択します。次に、[アクション] を選択し、[ネットワーク]、[IP アドレスの管理] の順に選択します。上記のステップに従って、同じ情報を設定できます。IP アドレスは、インスタンスのプライマリネットワークインターフェイス (eth0) に割り当てられます。
コマンドラインを使用して既存のインスタンスにセカンダリプライベート IPv4 アドレスを割り当てるには
次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。
-
assign-private-ip-addresses (AWS CLI)
-
Register-EC2PrivateIpAddress (AWS Tools for Windows PowerShell)
セカンダリプライベート IPv4 アドレスを認識するようにオペレーティングシステムを設定する
セカンダリプライベート IPv4 アドレスをインスタンスに割り当てたら、セカンダリプライベート IP アドレスを認識するようにインスタンスのオペレーティングシステムを設定する必要があります。
Linux インスタンス
-
Amazon Linux を使用している場合、ec2-net-utils パッケージがこの処理を自動実行します。このパッケージは、インスタンスの実行中にアタッチされる追加のネットワークインターフェイスを設定し、DHCP リースの更新中にセカンダリ IPv4 アドレスを更新して、関連するルーティングルールを更新します。コマンド
sudo service network restart
を使用して即座にインターフェースの一覧を更新し、ip addr li
を使用することで最新の一覧を表示することができます。ネットワーク構成を手動で構成する必要がある場合、ec2-net-utils パッケージを削除できます。詳細については、「ec2-net-utils を使用したネットワークインターフェイスの設定」を参照してください。 -
別の Linux ディストリビューションを使用している場合、Linux ディストリビューションのドキュメントを参照してください。追加のネットワークインターフェイスとセカンダリ IPv4 アドレスの設定に関する情報が記載されています。同じサブネットのインスタンスに複数のインターフェイスがある場合、非対称のルーティングに対処する方法については、ルーティングルールの使用に関する情報を検索してください。
Windows インスタンス
詳細については、「Windows インスタンスのセカンダリプライベート IPv4 アドレスを設定する」を参照してください。
セカンダリプライベート IPv4 アドレスへの Elastic IP アドレスの割り当て
Elastic IP アドレスをセカンダリプライベート IPv4 アドレスに関連付けるには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで [Elastic IP] を選択します。
-
Elastic IP アドレスのチェックボックスをオンにします。
-
[アクション]、[Elastic IP アドレスの関連付け] の順に選択します。
-
[リソースタイプ] で [ネットワークインターフェイス] を選択します。ネットワークインターフェイスを選択し、[プライベート IP アドレス] リストからセカンダリ IP アドレスを選択します。
-
[ネットワークインターフェイス] でネットワークインターフェイスを選択し、[プライベート IP アドレス] リストからセカンダリ IP アドレスを選択します。
-
[プライベート IP アドレス] でセカンダリ IP アドレスを選択します。
-
[関連付ける] を選択します。
コマンドラインを使用して Elastic IP アドレスにセカンダリプライベート IPv4 アドレスを関連付けるには
次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。
-
associate-address (AWS CLI)
-
Register-EC2Address (AWS Tools for Windows PowerShell)
セカンダリプライベート IPv4 アドレスの表示
ネットワークインターフェイスに割り当てられたプライベート IPv4 アドレスを確認するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Network Interfaces] を選択します。
-
ネットワークインターフェイスのチェックボックスをオンにします。
-
[詳細] タブの [IP アドレス] で、[プライベート IPv4 アドレス] と [セカンダリプライベート IPv4 アドレス] を見つけます。
インスタンスに割り当てられたプライベート IPv4 アドレスを確認するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[インスタンス] を選択します。
-
インスタンスのチェックボックスをオンにします。
-
[ネットワーキング] タブの [ネットワーキングの詳細] で、[プライベート IPv4 アドレス] と [セカンダリプライベート IPv4 アドレス] を見つけます。
セカンダリプライベート IPv4 アドレスの割り当て解除
セカンダリプライベート IPv4 アドレスが不要になった場合、インスタンスやネットワークインターフェイスから割り当て解除できます。セカンダリプライベート IPv4 アドレスをネットワークインターフェイスから割り当て解除した場合、Elastic IP アドレス (存在する場合) の関連付けも解除されます。
インスタンスからセカンダリプライベート IPv4 アドレスを割り当て解除するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Instances] (インスタンス) を選択します。
-
インスタンスを選択し、[アクション]、[ネットワーク]、[IP アドレスの管理] の順に選択します。
-
ネットワークインターフェイスを展開します。[IPv4 アドレス] で、割り当て解除する IPv4 アドレスに対して [割り当て解除] を選択します。
-
[Save] を選択します。
ネットワークインターフェイスからセカンダリプライベート IPv4 アドレスを割り当て解除するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[ネットワークインターフェイス] を選択します。
-
ネットワークインターフェイスを選択し、[アクション]、[IP アドレスの管理] の順に選択します。
-
ネットワークインターフェイスを展開します。[IPv4 アドレス] で、割り当て解除する IPv4 アドレスに対して [割り当て解除] を選択します。
-
[Save] を選択します。
コマンドラインを使用してセカンダリプライベート IPv4 アドレスを割り当て解除するには
次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。
-
unassign-private-ip-addresses (AWS CLI)
-
Unregister-EC2PrivateIpAddress (AWS Tools for Windows PowerShell)
複数の IPv6 アドレスの使用
インスタンスに複数の IPv6 アドレスを割り当て、インスタンスに割り当てられている IPv6 アドレスを表示したり、インスタンスから IPv6 アドレスを割り当て解除したりできます。
複数の IPv6 アドレスの割り当て
起動時または起動後のインスタンスに 1 つ以上の IPv6 アドレスを割り当てることができます。IPv6 アドレスをインスタンスに割り当てるには、インスタンスを起動した VPC およびサブネットに IPv6 CIDR ブロックが関連付けられている必要があります。
起動時に複数の IPv6 アドレスを割り当てるには
-
インスタンスを起動するための手順に従います。[ネットワーク設定] で、[編集] を選択します。
-
VPC とサブネットを選択します。
-
高度なネットワーク設定の拡張。
-
[IPv6 IP] で、[自動で割り当て] を選択して IP アドレスの数を入力するか (Amazon が自動的に IPv6 アドレスを割り当てます)、[手動で割り当て] を選択して IPv6 アドレスを入力します。
-
インスタンスを起動する残りのステップを完了します。
Amazon EC2 コンソールの [インスタンス] 画面を使用して、既存のインスタンスに複数の IPv6 アドレスを割り当てることができます。IPv6 アドレスは、インスタンスのプライマリネットワークインターフェイス (eth0) に割り当てられます。IPv6 アドレスをインスタンスに割り当てるには、IPv6 アドレスが別のインスタンスやネットワークインターフェイスにまだ割り当てられていないことを確認します。
複数の IPv6 アドレスを既存のインスタンスに割り当てるには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Instances] (インスタンス) を選択します。
-
インスタンスを選択し、[アクション]、[ネットワーキング]、[IP アドレスの管理] の順に選択します。
-
ネットワークインターフェイスを展開します。[IPv6 アドレス] で、追加する IPv6 アドレスごとに [新しい IP アドレスの割り当て] を選択します。サブネットの範囲から IPv6 アドレスを指定します。また、フィールドを空のままにすると Amazon によって IPv6 アドレスが自動的に選択されます。
-
[Save] を選択します。
また、既存のネットワークインターフェイスに複数の IPv6 アドレスを割り当てることができます。そのネットワークインターフェイスは、IPv6 CIDR ブロックが関連付けられているサブネットで作成されている必要があります。特定の IPv6 アドレスをネットワークインターフェイスに割り当てるには、その IPv6 アドレスが別のネットワークインターフェイスにまだ割り当てられていないことを確認します。
複数の IPv6 アドレスをネットワークインターフェイスに割り当てるには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[ネットワークインターフェイス] を選択します。
-
ネットワークインターフェイスを選択し、[アクション]、[IP アドレスの管理] の順に選択します。
-
ネットワークインターフェイスを展開します。[IPv6 アドレス] で、追加する IPv6 アドレスごとに [新しい IP アドレスの割り当て] を選択します。サブネットの範囲から IPv6 アドレスを指定します。また、フィールドを空のままにすると Amazon によって IPv6 アドレスが自動的に選択されます。
-
[Save] を選択します。
CLI の概要
次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。
-
起動時に IPv6 アドレスを割り当てる:
-
run-instances コマンド (AWS CLI) で、
--ipv6-addresses
または--ipv6-address-count
オプションを使用する -
-NetworkInterface
を定義し、New-EC2Instance コマンド (AWS Tools for Windows PowerShell) で、Ipv6Addresses
パラメータまたはIpv6AddressCount
パラメータを指定します
-
-
IPv6 アドレスをネットワークインターフェイスに割り当てる:
-
assign-ipv6-addresses (AWS CLI)
-
Register-EC2Ipv6AddressList (AWS Tools for Windows PowerShell)
-
IPv6 アドレスの表示
インスタンスまたはネットワークインターフェイスの IPv6 アドレスを確認できます。
インスタンスに割り当てられた IPv6 アドレスを確認するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[インスタンス] を選択します。
-
インスタンスのチェックボックスをオンにします。
-
[ネットワーキング] タブで、[IPv6 アドレス] フィールドを見つけます。
ネットワークインターフェイスに割り当てられた IPv6 アドレスを確認するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[ネットワークインターフェイス] を選択します。
-
ネットワークインターフェイスのチェックボックスをオンにします。
-
[詳細] タブの [IP アドレス] で、[IPv6 アドレス] フィールドを見つけます。
CLI の概要
次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。
-
インスタンスの IPv6 アドレスを確認する場合
-
describe-instances (AWS CLI)
-
Get-EC2Instance (AWS Tools for Windows PowerShell)
-
-
ネットワークインターフェイスの IPv6 アドレスを確認する場合
-
describe-network-interfaces (AWS CLI)
-
Get-EC2NetworkInterface (AWS Tools for Windows PowerShell)
-
IPv6 アドレスの割り当て解除
インスタンスのプライマリネットワークインターフェイスから IPv6 アドレスを割り当て解除できます。またはネットワークインターフェイスから IPv6 アドレスを割り当て解除できます。
インスタンスから IPv6 アドレスを割り当て解除するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[インスタンス] を選択します。
-
インスタンスのチェックボックスをオンにしたら、[アクション]、[ネットワーキング]、[IP アドレスの管理] を選択します。
-
ネットワークインターフェイスを展開します。[IPv6 addresses] (IPv6 アドレス) で、IPv6 アドレスの横にある [Unassign] (割り当て解除) を選択します。
-
[Save] を選択します。
ネットワークインターフェイスから IPv6 アドレスを割り当て解除するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[ネットワークインターフェイス] を選択します。
-
ネットワークインターフェイスのチェックボックスをオンにしたら、[アクション] と [IP アドレスの管理] を選択します。
-
ネットワークインターフェイスを展開します。[IPv6 addresses] (IPv6 アドレス) で、IPv6 アドレスの横にある [Unassign] (割り当て解除) を選択します。
-
[Save] を選択します。
CLI の概要
次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセスを参照してください。
-
unassign-ipv6-addresses (AWS CLI)
-
Unregister-EC2Ipv6AddressList (AWS Tools for Windows PowerShell)