AWS CLI のみを使用した IPAM への自分のパブリック IPv4 CIDR の取り込み
AWS CLI のみを使用して、IPAM に IPv4 CIDR を取り込み、Elastic IP アドレス (EIP) を CIDR に割り当てる手順は次のとおりです。
重要
このチュートリアルでは、次のセクションのステップがすでに完了していることを前提としています。
-
このチュートリアルの各ステップを、3 つの AWS Organizations アカウントのいずれかで実行する必要があります。
管理アカウント。
IPAM を AWS Organizations 内のアカウントと統合する で IPAM 管理者として設定されるメンバーアカウント。このチュートリアルでは、このアカウントを IPAM アカウントと呼びます。
IPAM プールから CIDR を割り当てる組織内のメンバーアカウント。このチュートリアルでは、このアカウントをメンバーアカウントと呼びます。
内容
- ステップ 1: AWS CLI の名前付きプロファイルと IAM ロールを作成する
- ステップ 2: IPAM を作成する
- ステップ 3: 最上位の IPAM プールの作成する
- ステップ 4: CIDR を最上位プールにプロビジョニングする
- ステップ 5: 最上位プール内にリージョンプールを作成する
- ステップ 6: リージョンプールに CIDR をプロビジョニングする
- ステップ 7: CIDR をアドバタイズする
- ステップ 8: リージョンレベルのプールを共有する
- ステップ 9: プールから Elastic IP アドレスを割り当てる
- ステップ 10: Elastic IP アドレスと EC2 インスタンスの関連付け
- ステップ 11: クリーンアップ
- ステップ 9 の代替方法
ステップ 1: AWS CLI の名前付きプロファイルと IAM ロールを作成する
このチュートリアルをシングル AWS ユーザーとして完了するには、AWS CLI の名前付きプロファイルを使用して、1 つの IAM ロールから別のアカウントへと切り替えることができます。名前付きプロファイルは、AWS CLI を使用して --profile
オプションを使用するときに参照する設定と認証情報の集まりです。AWS アカウントの IAM ロールと名前付きプロファイルを作成する方法の詳細については、「AWS Identity and Access Management ユーザーガイド」の「AWS CLI での IAM ロールの使用」を参照してください。
このチュートリアルで使用する 3 つの AWS アカウントごとに、1 つのロールと 1 つの名前付きプロファイルを作成します。
AWS Organizations 管理アカウント向けの
management-account
と呼ばれるプロファイル。IPAM 管理者として設定された AWS Organizations メンバーアカウント向けの、
ipam-account
と呼ばれるプロファイル。IPAM プールから CIDR を割り当てる自分の組織の AWS Organizations メンバーアカウント向けの、
member-account
と呼ばれるプロファイル。
IAM ロールと名前付きプロファイルを作成した後、このページに戻り次のステップに進みます。なお、このチュートリアルの残りの部分では、サンプルの AWS CLI コマンドで --profile
オプションを名前付きプロファイルのうちの 1 つとともに使用することにより、どのアカウントでコマンドを実行する必要があるのかを示しています。
ステップ 2: IPAM を作成する
この手順は省略可能です。us-east-1
と us-west-2
の運用リージョンで作成された IPAM が既にある場合は、このステップをスキップできます。IPAM を作成し、us-east-1
と us-west-2
の運用リージョンを指定します。運用リージョンを選択する必要があるのは、IPAM プールの作成時にロケールオプションを使用できるようにするためです。IPAM を BYOIP と統合するには、BYOIP CIDR に使用されるプールにロケールを設定する必要があります。
このステップは、IPAM アカウントで実行する必要があります。
次のコマンドを実行します。
aws ec2 create-ipam --description
my-ipam
--regionus-east-1
--operating-regionsRegionName=us-west-2
--profileipam-account
出力に、作成した IPAM が示されます。PublicDefaultScopeId
の値を書き留めます。パブリックスコープ ID は、次のステップで必要になります。BYOIP CIDR はパブリック IP アドレスであるため、パブリックスコープを使用しています。パブリックスコープはこのために存在します。
{
"Ipam": {
"OwnerId": "123456789012",
"IpamId": "ipam-090e48e75758de279",
"IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279",
"PublicDefaultScopeId": "ipam-scope-0087d83896280b594",
"PrivateDefaultScopeId": "ipam-scope-08b70b04fbd524f8d",
"ScopeCount": 2,
"Description": "my-ipam",
"OperatingRegions": [
{
"RegionName": "us-east-1"
},
{
"RegionName": "us-west-2"
}
],
"Tags": []
}
}
ステップ 3: 最上位の IPAM プールの作成する
このセクションのステップに従って、最上位の IPAM プールを作成します。
このステップは、IPAM アカウントで実行する必要があります。
AWS を使用してすべての AWS CLI リソースの IPv4 アドレスプールを作成するには
-
次のコマンドを実行して、IPAM プールを作成します。前のステップで作成した IPAM のパブリックスコープの ID を使用します。
このステップは、IPAM アカウントで実行する必要があります。
aws ec2 create-ipam-pool --region
us-east-1
--ipam-scope-idipam-scope-0087d83896280b594
--description"top-level-IPv4-pool"
--address-familyipv4
--profileipam-account
出力に、
create-in-progress
と表示されます。これは、プールの作成が進行中であることを示します。{ "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "None", "PoolDepth": 1, "State": "create-in-progress", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [] } }
-
出力に
create-complete
という状態が表示されるまで、次のコマンドを実行します。aws ec2 describe-ipam-pools --region
us-east-1
--profileipam-account
次の出力例は、プールの状態を示しています。
{ "IpamPools": [ { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "None", "PoolDepth": 1, "State": "create-complete", "Description": "top-level-IPV4-pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [] } ] }
ステップ 4: CIDR を最上位プールにプロビジョニングする
最上位プールに CIDR ブロックをプロビジョンします。IPv4 CIDR を最上位のプール内のプールにプロビジョニングするとき、プロビジョンできる最小の IPv4 CIDR は /24
です。より具体的な CIDR (/25
など) は許可されません。
注記
-
X.509 証明書でドメインコントロールを検証した場合は、パブリックスペースがユーザーによって制御されていることを確認できるように、CIDR と BYOIP メッセージおよびそのステップで作成した証明書署名を含める必要があります。
-
DNS TXT レコード でドメインコントロールを検証した場合は、パブリックスペースがユーザーによって制御されていることを確認できるように、CIDR およびそのステップで作成した IPAM 検証トークンを含める必要があります。
BYOIP CIDR を最上位プールにプロビジョンする場合は、ドメインコントロールを検証するだけで済みます。最上位プール内のリージョンプールについては、ドメイン所有者検証オプションを省略できます。
このステップは、IPAM アカウントで実行する必要があります。
重要
BYOIP CIDR を最上位プールにプロビジョンする場合は、ドメインコントロールを検証するだけで済みます。最上位プール内のリージョンプールについては、ドメインコントロールオプションを省略できます。BYOIP を IPAM にオンボードすると、リージョンとアカウントとの間で BYOIP を分割するときに、所有権の検証を実行する必要がなくなります。
AWS CLI を使用して CIDR ブロックをプールにプロビジョニングするには
-
証明書情報を使用して CIDR をプロビジョニングするには、次のコマンド例を使用します。この例で必要に応じて値を置き換えるだけでなく、
Message
およびSignature
の値を、X.509 証明書を使用してドメインを検証する で取得したtext_message
およびsigned_message
の値に置き換えてください。aws ec2 provision-ipam-pool-cidr --region
us-east-1
--ipam-pool-idipam-pool-0a03d430ca3f5c035
--cidr130.137.245.0/24
--verification-method remarks-x509 --cidr-authorization-context Message="1|aws|470889052444|130.137.245.0/24|20250101|SHA256|RSAPSS
",Signature="W3gdQ9PZHLjPmrnGM~cvGx~KCIsMaU0P7ENO7VRnfSuf9NuJU5RUveQzus~QmF~Nx42j3z7d65uyZZiDRX7KMdW4KadaLiClyRXN6ps9ArwiUWSp9yHM~U-hApR89Kt6GxRYOdRaNx8yt-uoZWzxct2yIhWngy-du9pnEHBOX6WhoGYjWszPw0iV4cmaAX9DuMs8ASR83K127VvcBcRXElT5URr3gWEB1CQe3rmuyQk~gAdbXiDN-94-oS9AZlafBbrFxRjFWRCTJhc7Cg3ASbRO-VWNci-C~bWAPczbX3wPQSjtWGV3k1bGuD26ohUc02o8oJZQyYXRpgqcWGVJdQ__
" --profileipam-account
検証トークン情報を使用して CIDR をプロビジョニングするには、次のコマンド例を使用します。この例で必要に応じて値を置き換えるだけでなく、
ipam-ext-res-ver-token-0309ce7f67a768cf0
を DNS TXT レコードを使用してドメインを検証する で取得したIpamExternalResourceVerificationTokenId
トークン ID に置き換えてください。aws ec2 provision-ipam-pool-cidr --region
us-east-1
--ipam-pool-idipam-pool-0a03d430ca3f5c035
--cidr130.137.245.0/24
--verification-method dns-token --ipam-external-resource-verification-token-idipam-ext-res-ver-token-0309ce7f67a768cf0
--profileipam-account
出力に、CIDR のプロビジョンが保留されていることが示されます。
{ "IpamPoolCidr": { "Cidr": "130.137.245.0/24", "State": "pending-provision" } }
-
続行する前に、この CIDR のプロビジョンが完了したことを確認してください。
重要
ほとんどのプロビジョニングは 2 時間以内に完了しますが、パブリックにアドバタイズ可能な範囲のプロビジョニングプロセスが完了するまでに最大 1 週間かかる場合があります。
出力に
provisioned
という状態が表示されるまで、次のコマンドを実行します。aws ec2 get-ipam-pool-cidrs --region
us-east-1
--ipam-pool-idipam-pool-0a03d430ca3f5c035
--profileipam-account
次の出力例に、その状態が示されています。
{ "IpamPoolCidrs": [ { "Cidr": "130.137.245.0/24", "State": "provisioned" } ] }
ステップ 5: 最上位プール内にリージョンプールを作成する
最上位プール内にリージョンプールを作成する
プールのロケールは、以下のいずれかにする必要があります。
この IPAM プールを割り当て可能にする AWS リージョン。
この IPAM プールを割り当て可能にする AWS Local Zone のネットワーク境界グループ (サポートされるローカルゾーン)。このオプションを利用できるのは、パブリックスコープ内の IPAM IPv4 プールのみです。
AWS Dedicated Local Zone
。AWS Dedicated Local Zone 内にプールを作成するには、セレクタ入力に AWS Dedicated Local Zone を入力します。
例えば、VPC の CIDR は、VPC のリージョンとロケールを共有する IPAM プールからしか割り当てることができません。プールのロケールを選択したら、変更はできないことに注意してください。停止が原因で IPAM のホームリージョンが使用できなくなり、プールのロケールが IPAM のホームリージョンと異なる場合でも、プールを使用して IP アドレスを割り当てることができます。
このセクションのコマンドを実行するときは、BYOIP CIDR に使用されるプールの作成時に入力した --locale
オプションが --region
の値に含まれている必要があります。例えば、us-east-1 のロケールで BYOIP プールを作成した場合、--region
は us-east-1 にする必要があります。us-east-1-scl-1 (Local Zone に使用されるネットワーク境界グループ) のロケールで BYOIP プールを作成した場合は、--region
を us-east-1 にする必要があります。これは、このリージョンがロケール us-east-1-scl-1 を管理するからです。
このステップは、IPAM アカウントで実行する必要があります。
ロケールを選択すると、プールとそのプールから割り当てられるリソースの間にクロスリージョン依存関係がないことが保証されます。使用可能なオプションは、IPAM を作成したときに選択した運用リージョンによって提供されます。このチュートリアルでは、us-west-2
をリージョンプールのロケールとして使用します。
重要
プールを作成するときは、--aws-service ec2
を含める必要があります。選択したサービスによって、CIDR がアドバタイズ可能になる AWS サービスが決定します。現在、唯一の選択肢は ec2
であり、このプールから割り当てられた CIDR は、Amazon EC2 サービス (Elastic IP アドレスの場合) と Amazon VPC サービス (VPC に関連付けられている CIDR の場合) に対してアドバタイズできるようになります。
AWS CLI を使用してリージョンプールを作成するには
-
次のコマンドを実行して、プールを作成します。
aws ec2 create-ipam-pool --description
"Regional-IPv4-pool"
--regionus-east-1
--ipam-scope-idipam-scope-0087d83896280b594
--source-ipam-pool-idipam-pool-0a03d430ca3f5c035
--localeus-west-2
--address-familyipv4
--aws-service ec2 --profileipam-account
出力に、IPAM がプールを作成していることが表示されます。
{ "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0d8f3646b61ca5987", "SourceIpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0d8f3646b61ca5987", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-west-2", "PoolDepth": 2, "State": "create-in-progress", "Description": "Regional--pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [], "ServiceType": "ec2" } }
-
出力に
create-complete
という状態が表示されるまで、次のコマンドを実行します。aws ec2 describe-ipam-pools --region
us-east-1
--profileipam-account
出力には、IPAM にあるプールが表示されます。このチュートリアルでは、最上位プールとリージョンプールを作成したので、両方が表示されます。
ステップ 6: リージョンプールに CIDR をプロビジョニングする
リージョンプールに CIDR ブロックをプロビジョンします。
注記
CIDR を最上位プール内のリージョンプールにプロビジョニングする場合、プロビジョニングできる最も具体的な IPv4 CIDR は /24
です。より具体的な CIDR (/25
など) は許可されません。リージョンプールを作成すると、リージョンプール内に小さなプール (/25
など) を作成できます。リージョンプールまたはリージョンプール内のプールを共有する場合、これらのプールは同じリージョンプールで設定されたロケールでのみ使用できることに注意してください。
このステップは、IPAM アカウントで実行する必要があります。
AWS CLI を使用して CIDR ブロックをリージョンプールに割り当てるには
-
以下のコマンドを実行して CIDR をプロビジョニングします。
aws ec2 provision-ipam-pool-cidr --region
us-east-1
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--cidr130.137.245.0/24
--profileipam-account
出力に、CIDR のプロビジョンが保留されていることが示されます。
{ "IpamPoolCidr": { "Cidr": "130.137.245.0/24", "State": "pending-provision" } }
-
出力に、
provisioned
の状態が表示されるまで、次のコマンドを実行します。aws ec2 get-ipam-pool-cidrs --region
us-east-1
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--profileipam-account
次の出力例に、正しい状態が示されています。
{ "IpamPoolCidrs": [ { "Cidr": "130.137.245.0/24", "State": "provisioned" } ] }
ステップ 7: CIDR をアドバタイズする
このセクションのステップは、IPAM アカウントで実行する必要があります。Elastic IP アドレス (EIP) をインスタンスまたは Elastic Load Balancer に関連付けると、--aws-service
ec2
が定義されているプール内にある、AWS に取り込んだ CIDR のアドバタイズを開始できます。このチュートリアルでは、これはリージョンプールです。デフォルトでは、CIDR はアドバタイズされません。つまり、インターネット経由でパブリックにアクセスできません。このセクションのコマンドを実行するときは、BYOIP CIDR に使用されるプールを作成したときに入力した --locale
オプションと --region
の値が一致する必要があります。
このステップは、IPAM アカウントで実行する必要があります。
注記
アドバタイズメントステータスによって Elastic IP アドレスを割り当てる機能が制限されることはありません。BYOIPv4 CIDR がアドバタイズされていなくても、IPAM プールから EIP を作成できます。
AWS CLI を使用して CIDR のアドバタイズを開始するには
-
次のコマンドを実行して、CIDR をアドバタイズします。
aws ec2 advertise-byoip-cidr --region
us-west-2
--cidr130.137.245.0/24
--profileipam-account
出力に、CIDR がアドバタイズされたことが示されます。
{ "ByoipCidr": { "Cidr": "130.137.245.0/24", "State": "advertised" } }
ステップ 8: リージョンレベルのプールを共有する
このセクションのステップに従い、AWS Resource Access Manager (RAM) を使用して IPAM プールを共有します。
AWS RAM 内でリソース共有を有効にする
IPAM を作成したら、リージョンプールを組織内の他のアカウントと共有する必要があります。IPAM プールを共有する前に、このセクションのステップを完了し、AWS RAM とのリソース共有を有効にします。AWS CLI を使用してリソース共有を有効にする場合は、--profile
オプションを使用します。management-account
リソース共有を有効にするには
-
AWS Organizations 管理アカウントを使って AWS RAM コンソール (https://console.aws.amazon.com/ram/
) を開きます。 -
ナビゲーションペインで [設定] を選択し、[AWS Organizations との共有を有効にする] を選択し、[設定の保存] を選択します。
これで、IPAM プールを組織の他のメンバーと共有できるようになりました。
AWS RAM を使用して IPAM プールを共有する
このセクションでは、リージョンプールを他の AWS Organizations メンバーアカウントと共有します。必要な IAM アクセス許可に関する情報を含め、IPAM プールの共有に関する詳細な手順については、「AWS RAM を使用して IPAM プールを共有する」を参照してください。AWS CLI を使用してリソース共有を有効にする場合は、--profile
オプションを使用します。ipam-account
AWS RAM を使用して IPAM プールを共有するには
-
IPAM の管理者アカウントを使って IPAM コンソール (https://console.aws.amazon.com/ipam/
) を開きます。 -
ナビゲーションペインで、[プール] を選択します。
-
プライベートスコープを選択し、IPAM プールを選択して、[アクション] > [詳細を表示] の順に選択します。
-
[Resource sharing] (リソース共有) で [Create resource share] (リソース共有の作成) を選択します。AWS RAM コンソールが開きます。AWS RAM を使用してプールを共有します。
-
[リソースの共有の作成] を選択します。
-
AWS RAM コンソールで、[リソースの共有を作成] を再度選択します。
-
共有リソースの [名前] を追加します。
-
[リソースタイプを選択] で [IPAM プール] を選択し、次に共有したいプールの ARN を選択します。
-
[Next] を選択します。
-
AWSRAMPermissionIpamPoolByoipCidrImport 許可を選択します。アクセス許可オプションの詳細は本チュートリアルの対象外ですが、このオプションの詳細は「AWS RAM を使用して IPAM プールを共有する」にてご覧いただけます。
-
[Next] を選択します。
-
[プリンシパル] > [プリンシパルタイプを選択] で、[AWS アカウント] を選択し、IPAM に IP アドレス範囲を取り込むアカウントのアカウント ID を入力して、[追加] を選択します。
-
[Next] を選択します。
-
リソース共有オプションと共有先のプリンシパルを確認し、[作成] を選択します。
-
IPAM プールからの IP アドレス CIDR の割り当てを
member-account
アカウントに許可するには、AWSRAMDefaultPermissionsIpamPool
を使用して 2 つ目のリソース共有を作成します。--resource-arns
の値は、前のセクションで作成した IPAM プールの ARN です。--principals
の値は、member-account
のアカウント ID です。--permission-arns
の値は、AWSRAMDefaultPermissionsIpamPool
アクセス許可の ARN です。
ステップ 9: プールから Elastic IP アドレスを割り当てる
プールから Elastic IP アドレスを割り当てるには、このセクションのステップを実行します。パブリック IPv4 プールを使用して Elastic IP アドレスを割り当てる場合は、このセクションのステップではなく、ステップ 9 の代替方法 の代替ステップを使用できます。
重要
ec2:AllocateAddress を呼び出す許可がないことに関するエラーが表示される場合は、共有された IPAM プールに現在割り当てられているマネージド許可を更新する必要があります。リソース共有の作成者に連絡して、マネージド許可 AWSRAMPermissionIpamResourceDiscovery
をデフォルトバージョンに更新するよう依頼してください。詳細については、AWS RAM ユーザーガイドの「リソース共有の更新」を参照してください。
ステップ 10: Elastic IP アドレスと EC2 インスタンスの関連付け
Elastic IP アドレスを EC2 インスタンスに関連付けるには、このセクションのステップを実行します。
ステップ 11: クリーンアップ
このセクションのステップに従って、このチュートリアルでプロビジョンし、作成したリソースをクリーンアップします。このセクションのコマンドを実行するときは、BYOIP CIDR に使用されるプールの作成時に入力した --locale
オプションが --region
の値に含まれている必要があります。
AWS CLI を使用したクリーンアップ
-
IPAM で管理されている EIP 割り当てを表示します。
このステップは、IPAM アカウントで実行する必要があります。
aws ec2 get-ipam-pool-allocations --region
us-west-2
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--profileipam-account
出力に、IPAM での割り当てが示されます。
{ "IpamPoolAllocations": [ { "Cidr": "130.137.245.0/24", "IpamPoolAllocationId": "ipam-pool-alloc-5dedc8e7937c4261b56dc3e3eb53dc45", "ResourceId": "ipv4pool-ec2-0019eed22a684e0b2", "ResourceType": "ec2-public-ipv4-pool", "ResourceOwner": "123456789012" } ] }
-
IPv4 CIDR のアドバタイズを停止します。
このステップは、IPAM アカウントで実行する必要があります。
aws ec2 withdraw-byoip-cidr --region
us-west-2
--cidr130.137.245.0/24
--profileipam-account
出力に、CIDR の状態が [advertised] (アドバタイズ済) から [provisioned] (プロビジョン済) に変更されていることが示されます。
{ "ByoipCidr": { "Cidr": "130.137.245.0/24", "State": "provisioned" } }
-
Elastic IP アドレスを解放します。
このステップは、メンバーアカウントで実行する必要があります。
aws ec2 release-address --region
us-west-2
--allocation-ideipalloc-0db3405026756dbf6
--profilemember-account
このコマンドの実行では出力は表示されません。
-
IPAM で管理されていない EIP 割り当てを表示します。IPAM が Elastic IP アドレスが削除されたことを検出するには、しばらく時間がかかる場合があります。割り当てが IPAM から削除されたことが表示されるまでは、IPAM プール CIDR のクリーンアップとプロビジョン解除を続行できません。このセクションのコマンドを実行するときは、BYOIP CIDR に使用されるプールの作成時に入力した
--locale
オプションが--region
の値に含まれている必要があります。このステップは、IPAM アカウントで実行する必要があります。
aws ec2 get-ipam-pool-allocations --region
us-west-2
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--profileipam-account
出力に、IPAM での割り当てが示されます。
{ "IpamPoolAllocations": [] }
-
リージョンプール CIDR のプロビジョンを解除します。このステップのコマンドを実行するときは、IPAM のリージョンと
--region
の値が一致する必要があります。このステップは、IPAM アカウントで実行する必要があります。
aws ec2 deprovision-ipam-pool-cidr --region
us-east-1
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--cidr130.137.245.0/24
--profileipam-account
出力に、CIDR のプロビジョン解除が保留されていることが示されます。
{ "IpamPoolCidr": { "Cidr": "130.137.245.0/24", "State": "pending-deprovision" } }
プロビジョン解除の完了には、しばらく時間がかかります。プロビジョニング解除のステータスをチェックします。
aws ec2 get-ipam-pool-cidrs --region
us-east-1
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--profileipam-account
[deprovisioned] (プロビジョン解除済) が表示されるまで待ってから、次のステップに進みます。
{ "IpamPoolCidr": { "Cidr": "130.137.245.0/24", "State": "deprovisioned" } }
-
RAM 共有を削除し、AWS Organizations との RAM 統合を無効にします。「AWS RAM ユーザーガイド」内にある「AWS RAM のリソース共有を削除」と「AWS Organizations とのリソース共有を無効化」に記載されているステップをこの順序で行い、RAM 共有を削除して、AWS Organizations との RAM 統合を無効にします。
このステップは、IPAM アカウントと管理アカウントのそれぞれで実行する必要があります。AWS CLI を使用して RAM 共有を削除し、RAM 統合を無効にする場合は、
--profile
およびipam-account
--profile
オプションを使用します。management-account
-
リージョンプールを削除します。このステップのコマンドを実行するときは、IPAM のリージョンと
--region
の値が一致する必要があります。このステップは、IPAM アカウントで実行する必要があります。
aws ec2 delete-ipam-pool --region
us-east-1
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--profileipam-account
出力に、削除状態が表示されます。
{ "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0d8f3646b61ca5987", "SourceIpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0d8f3646b61ca5987", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-east-1", "PoolDepth": 2, "State": "delete-in-progress", "Description": "reg-ipv4-pool", "AutoImport": false, "Advertisable": true, "AddressFamily": "ipv4" } }
-
最上位プール CIDR のプロビジョンを解除します。このステップのコマンドを実行するときは、IPAM のリージョンと
--region
の値が一致する必要があります。このステップは、IPAM アカウントで実行する必要があります。
aws ec2 deprovision-ipam-pool-cidr --region
us-east-1
--ipam-pool-idipam-pool-0a03d430ca3f5c035
--cidr130.137.245.0/24
--profileipam-account
出力に、CIDR のプロビジョン解除が保留されていることが示されます。
{ "IpamPoolCidr": { "Cidr": "130.137.245.0/24", "State": "pending-deprovision" } }
プロビジョン解除の完了には、しばらく時間がかかります。次のコマンドを実行して、プロビジョン解除のステータスを確認します。
aws ec2 get-ipam-pool-cidrs --region
us-east-1
--ipam-pool-idipam-pool-0a03d430ca3f5c035
--profileipam-account
[deprovisioned] (プロビジョン解除済) が表示されるまで待ってから、次のステップに進みます。
{ "IpamPoolCidr": { "Cidr": "130.137.245.0/24", "State": "deprovisioned" } }
-
最上位プールを削除します。このステップのコマンドを実行するときは、IPAM のリージョンと
--region
の値が一致する必要があります。このステップは、IPAM アカウントで実行する必要があります。
aws ec2 delete-ipam-pool --region
us-east-1
--ipam-pool-idipam-pool-0a03d430ca3f5c035
--profileipam-account
出力に、削除状態が表示されます。
{ "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-east-1", "PoolDepth": 2, "State": "delete-in-progress", "Description": "top-level-pool", "AutoImport": false, "Advertisable": true, "AddressFamily": "ipv4" } }
-
IPAM を削除します。このステップのコマンドを実行するときは、IPAM のリージョンと
--region
の値が一致する必要があります。このステップは、IPAM アカウントで実行する必要があります。
aws ec2 delete-ipam --region
us-east-1
--ipam-idipam-090e48e75758de279
--profileipam-account
出力に、IPAM 応答が示されます。これは、IPAM が削除されたことを示します。
{ "Ipam": { "OwnerId": "123456789012", "IpamId": "ipam-090e48e75758de279", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "PublicDefaultScopeId": "ipam-scope-0087d83896280b594", "PrivateDefaultScopeId": "ipam-scope-08b70b04fbd524f8d", "ScopeCount": 2, "OperatingRegions": [ { "RegionName": "us-east-1" }, { "RegionName": "us-west-2" } ], } }
ステップ 9 の代替方法
パブリック IPv4 プールを使用して Elastic IP アドレスを割り当てる場合は、ステップ 9: プールから Elastic IP アドレスを割り当てる のステップではなく、このセクションのステップを使用できます。
内容
ステップ 1: パブリック IPv4 プールの作成
このステップは通常、Elastic IP アドレスをプロビジョンしようとする別の AWS アカウントで行います (メンバーアカウントなど)。
重要
パブリック IPv4 プールと IPAM プールは、別個の AWS リソースによって管理されます。パブリック IPv4 プールは、パブリック所有の CIDR を Elastic IP アドレスに変換できるようにする単一のアカウントリソースです。IPAM プールは、パブリック空間をパブリック IPv4 プールに割り当てるために使用できます。
AWS CLI を使用してパブリック IPv4 プールを作成するには
-
以下のコマンドを実行して CIDR をプロビジョニングします。このセクションのコマンドを実行するときは、BYOIP CIDR に使用されるプールを作成したときに入力した
--locale
オプションと--region
の値が一致する必要があります。aws ec2 create-public-ipv4-pool --region
us-west-2
--profilemember-account
出力に、パブリック IPv4 プール ID が示されます。この ID は次のステップで必要になります。
{ "PoolId": "ipv4pool-ec2-0019eed22a684e0b2" }
ステップ 2: パブリック IPv4 CIDR のパブリック IPv4 プールへのプロビジョン
パブリック IPv4 CIDR をパブリック IPv4 プールにプロビジョンします。BYOIP CIDR に使用されるプールを作成したときに入力した --locale
値と --region
の値が一致する必要があります。定義できる最も具体的でない --netmask-length
は 24
です。
このステップは、メンバーアカウントで実行する必要があります。
AWS CLI を使用してパブリック IPv4 プールを作成するには
-
以下のコマンドを実行して CIDR をプロビジョニングします。
aws ec2 provision-public-ipv4-pool-cidr --region
us-west-2
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--pool-idipv4pool-ec2-0019eed22a684e0b2
--netmask-length24
--profilemember-account
出力に、プロビジョンされた CIDR が示されます。
{ "PoolId": "ipv4pool-ec2-0019eed22a684e0b2", "PoolAddressRange": { "FirstAddress": "130.137.245.0", "LastAddress": "130.137.245.255", "AddressCount": 256, "AvailableAddressCount": 256 } }
-
次のコマンドを実行して、パブリック IPv4 プールにプロビジョンされた CIDR を表示します。
aws ec2 describe-byoip-cidrs --region
us-west-2
--max-results10
--profilemember-account
出力に、プロビジョンされた CIDR が示されます。デフォルトでは、CIDR はアドバタイズされません。つまり、インターネット経由でパブリックにアクセスできません。このチュートリアルの最後のステップで、この CIDR をアドバタイズするように設定できます。
{ "ByoipCidrs": [ { "Cidr": "130.137.245.0/24", "StatusMessage": "Cidr successfully provisioned", "State": "provisioned" } ] }
ステップ 3: パブリック IPv4 プールからの Elastic IP アドレスの作成
パブリック IPv4 プールから Elastic IP アドレス (EIP) を作成します。このセクションのコマンドを実行するときは、BYOIP CIDR に使用されるプールを作成したときに入力した --locale
オプションと --region
の値が一致する必要があります。
このステップは、メンバーアカウントで実行する必要があります。
AWS CLI を使用してパブリック IPv4 プールから EIP を作成する
-
次のコマンドを実行して、EIP を作成します。
aws ec2 allocate-address --region
us-west-2
--public-ipv4-poolipv4pool-ec2-0019eed22a684e0b2
--profilemember-account
出力に、割り当てが示されます。
{ "PublicIp": "130.137.245.100", "AllocationId": "eipalloc-0db3405026756dbf6", "PublicIpv4Pool": "ipv4pool-ec2-0019eed22a684e0b2", "NetworkBorderGroup": "us-east-1", "Domain": "vpc" }
-
次のコマンドを実行して、IPAM の EIP 割り当てを表示します。
このステップは、IPAM アカウントで実行する必要があります。
aws ec2 get-ipam-pool-allocations --region
us-west-2
--ipam-pool-idipam-pool-0d8f3646b61ca5987
--profileipam-account
出力に、IPAM での割り当てが示されます。
{ "IpamPoolAllocations": [ { "Cidr": "130.137.245.0/24", "IpamPoolAllocationId": "ipam-pool-alloc-5dedc8e7937c4261b56dc3e3eb53dc45", "ResourceId": "ipv4pool-ec2-0019eed22a684e0b2", "ResourceType": "ec2-public-ipv4-pool", "ResourceOwner": "123456789012" } ] }
ステップ 9 の代替方法 クリーンアップ
ステップ 9 の代替方法を使用して作成されたパブリック IPv4 プールをクリーンアップするには、次のステップを実行します。これらのステップは、ステップ 10: クリーンアップ の標準クリーンアッププロセス中に Elastic IP アドレスを解放した後に実行する必要があります。
-
BYOIP CIDR を表示します。
このステップは、メンバーアカウントで実行する必要があります。
aws ec2 describe-public-ipv4-pools --region
us-west-2
--profilemember-account
出力に、BYOIP CIDR の IP アドレスが示されます。
{ "PublicIpv4Pools": [ { "PoolId": "ipv4pool-ec2-0019eed22a684e0b2", "Description": "", "PoolAddressRanges": [ { "FirstAddress": "130.137.245.0", "LastAddress": "130.137.245.255", "AddressCount": 256, "AvailableAddressCount": 256 } ], "TotalAddressCount": 256, "TotalAvailableAddressCount": 256, "NetworkBorderGroup": "us-east-1", "Tags": [] } ] }
-
CIDR の最後の IP アドレスをパブリック IPv4 プールから解放します。ネットマスクに /32 を指定して、IP アドレスを入力します。CIDR 範囲内の IP アドレスごとに、このコマンドを再実行する必要があります。CIDR が
/24
の場合は、このコマンドを実行して、/24
CIDR 内に 256 個ある各 IP アドレスのプロビジョンを解除する必要があります。このセクションのコマンドを実行するときは、--region
の値が IPAM のリージョンと一致する必要があります。このステップは、メンバーアカウントで実行する必要があります。
aws ec2 deprovision-public-ipv4-pool-cidr --region
us-east-1
--pool-idipv4pool-ec2-0019eed22a684e0b2
--cidr130.137.245.255/32
--profilemember-account
出力に、プロビジョンを解除された CIDR が示されます。
{ "PoolId": "ipv4pool-ec2-0019eed22a684e0b2", "DeprovisionedAddresses": [ "130.137.245.255" ] }
-
BYOIP CIDR を再度表示して、プロビジョンされたアドレスがないことを確認します。このセクションのコマンドを実行するときは、
--region
の値が IPAM のリージョンと一致する必要があります。このステップは、メンバーアカウントで実行する必要があります。
aws ec2 describe-public-ipv4-pools --region
us-east-1
--profilemember-account
出力に、パブリック IPv4 プール内の IP アドレス数が示されます。
{ "PublicIpv4Pools": [ { "PoolId": "ipv4pool-ec2-0019eed22a684e0b2", "Description": "", "PoolAddressRanges": [], "TotalAddressCount": 0, "TotalAvailableAddressCount": 0, "NetworkBorderGroup": "us-east-1", "Tags": [] } ] }