各 Elastic Network Interface (ENI) には、永続的なプライマリプライベート IPv4 アドレスが 1 つ割り当てられます。このアドレスは削除できず、変更のみ可能です。
基本概念
次の図は、Elastic Compute Service (ECS) インスタンス上の ENI とプライベート IP アドレスの関係を示しています。より多くの IP アドレスを使用するには、プライマリ ENI にセカンダリプライベート IP アドレスを割り当てるか、セカンダリ ENI をアタッチします。
Elastic Network Interface (ENI): ECS インスタンスにアタッチされる仮想ネットワークインターフェイスです。各インスタンスには、デタッチできないプライマリ ENI が 1 つあります。複数のセカンダリ ENI をアタッチできます。
プライマリプライベート IPv4 アドレス: すべての ENI には、プライマリプライベート IPv4 アドレスが 1 つだけあります。
プライマリ ENI: プライマリプライベート IPv4 アドレスを変更できます。
セカンダリ ENI: 作成後にプライマリプライベート IPv4 アドレスを変更することはできません。変更するには、ENI をデタッチして削除し、新しい ENI を作成してアタッチする必要があります。
セカンダリプライベート IPv4 アドレス: 複数 IP のデプロイでは、ENI (通常はプライマリ ENI) に 1 つ以上のセカンダリプライベート IPv4 アドレスを割り当てます。プライマリプライベート IP アドレスを変更する前に、まずすべてのセカンダリプライベート IP アドレスの割り当てを解除する必要があります。
システム予約済み IP アドレス: vSwitch の CIDR ブロック内の最初のアドレスと最後の 3 つの IPv4 アドレスは予約されており、割り当てることはできません。たとえば、192.168.1.0/24 では、予約済みアドレスは 192.168.1.0、192.168.1.253、192.168.1.254、192.168.1.255 です。
新規インスタンスのプライマリプライベート IPv4 アドレスの指定
インスタンスの作成時に、そのプライマリ ENI に静的プライベート IPv4 アドレスを割り当てることができます。
コンソール
ECSコンソール - カスタム購入ページに移動します。
[ネットワークとゾーン] セクションで、VPC と vSwitch を選択するか、VPCを作成 と vSwitch の作成 をクリックして新規作成します。作成後、
アイコンをクリックして更新し、新しい VPC と vSwitch を選択します。[プライマリ ENI のプライマリプライベート IP アドレスを指定] を選択し、選択した vSwitch の CIDR ブロック内で利用可能な IP アドレスを入力します。
システムは IP の可用性をリアルタイムでチェックします。アドレスは使用中でも予約済みでもない必要があります。

API
RunInstances API を呼び出し、PrivateIpAddress パラメーターを指定します。
既存インスタンスのプライマリプライベート IPv4 アドレスの変更
プライマリプライベート IP アドレスの変更には、インスタンスの再起動が必要であり、ネットワーク中断が発生します。この操作は、オフピーク時間中に実行してください。
潜在的リスク
サービスの中断: インスタンスが [停止済み] になっている必要があり、サービスの中断が発生します。
インスタンスのネットワーク接続の切断:
OS が静的 IP アドレスを使用している場合、プライベート IP を変更すると、OS のネットワーク設定 (IP アドレスやゲートウェイなど) と新しい設定との間に不一致が生じます。これにより、リモート接続が妨げられたり、ネットワーク通信がブロックされたりする可能性があります。
元の IP アドレスをハードコーディングしているアプリケーション、クラウドサービス (データベース接続文字列やファイアウォールのホワイトリストなど) 、または設定ファイル (
/etc/hostsなど) は動作しなくなります。変更後にこれらを更新してください。
事前準備
インスタンスの停止
インスタンスは [停止済み] の状態であり、ロックされておらず必要があります。インスタンスが 実行中 の場合は、まずインスタンスを停止します。
前提条件の確認
複数のプライベート IP アドレス: プライマリ ENI にセカンダリプライベート IPv4 または IPv6 アドレスがある場合は、まずセカンダリプライベート IP アドレスの割り当てを解除するか、IPv6 アドレスを削除します。
(オプション) インスタンス内の IP 取得方法: OS が静的 IP アドレスを使用している場合は、続行する前にネットワーク設定を DHCP に変更します。DHCP を使用すると、インスタンスは IP アドレス、サブネットマスク、デフォルトゲートウェイ、およびその他の設定を自動的に取得します。
Linux
Linux イメージでネットワークを DHCP として設定する方法をご参照ください。
Windows
以下の手順では、Windows Server 2022 を例として使用します。
Windows ECS インスタンスに接続します。
詳細については、「Workbench を使用して RDP 経由で Windows インスタンスに接続する」をご参照ください。
ネットワークと共有センターを開きます。
[アダプターの設定の変更] をクリックします。
[イーサネット] という名前のプライマリ ENI をダブルクリックします。次に、[イーサネットの状態] ダイアログボックスで [プロパティ] をクリックします。

[イーサネットのプロパティ] ダイアログボックスで、[インターネットプロトコルバージョン 4 (TCP/IPv4)] をダブルクリックします。

[インターネット プロトコル バージョン 4 (TCP/IPv4) のプロパティ] ダイアログボックスで、[IP アドレスを自動的に取得する] を選択します。

(オプション) ネットワークリソースの準備
同じ vSwitch 内の利用可能な IP に変更する場合は、この手順をスキップします。次のシナリオでは、事前にネットワークリソースを準備します。
プライマリプライベート IP アドレスを同じゾーン内の別の CIDR ブロックに移動するには: 宛先の CIDR ブロック用に vSwitch を作成します。
宛先の CIDR ブロックが現在の VPC の範囲外にある場合: VPC にセカンダリ CIDR ブロックを追加し、次にターゲットの CIDR ブロック用に vSwitch を作成します。
プライマリプライベート IP アドレスの変更
コンソール
ECSコンソール - インスタンスページに移動します。左上隅で、ターゲットインスタンスの リソースグループと リージョンを選択します。
ターゲットインスタンスを見つけ、その ID をクリックして詳細ページを開きます。
すべての操作 をクリックし、 を選択します。
プライマリプライベート IP アドレスを変更します。
(オプション) vSwitch を変更するには、同じゾーン内の vSwitch を選択します。
プライベート IP アドレス を設定します。新しいアドレスは、宛先の vSwitch の CIDR ブロック内にある必要があります。
このフィールドを空のままにすると、システムは新しいプライマリプライベート IP アドレスを自動的に割り当てます。
変更後、インスタンスの詳細 ページの 設定 セクションで新しい [VSwitch] を確認します。
プライマリプライベート IP アドレスを変更した後、インスタンスは自動的に起動しません。インスタンスを手動で起動してください。
API
ModifyInstanceVpcAttribute API を呼び出して、vSwitch とプライマリプライベート IP アドレスを変更します。
DescribeInstances API を呼び出して、新しい vSwitch とプライベート IP アドレスを確認します。
vSwitch を変更した後、インスタンスは自動的に起動しません。StartInstance API を呼び出して起動します。
Configure the primary private IPv4 address of a secondary ENI
Whether you can specify the primary private IP address for a secondary ENI depends on how it was created:
Created with an ECS instance: The IP address is assigned automatically and cannot be specified.
Created separately: You can specify any available IP address from the vSwitch's CIDR block. If not specified, the system assigns one automatically.
The primary private IPv4 address of a secondary ENI cannot be modified after creation. To change it, detach the ENI, create a new secondary ENI with the desired primary private IPv4 address, and attach it to the instance. The new address must be available within the vSwitch's CIDR block.