

# IPAM ポリシーを使用してパブリック IPv4 割り当て戦略を定義する
<a name="define-public-ipv4-allocation-strategy-with-ipam-policies"></a>

IPAM ポリシーは、IPAM プールからのパブリック IPv4 アドレスを AWS リソースに割り当てる方法を定義する一連のルールです。各ルールは、サービスが IP アドレスを取得するために使用する IPAM プールに AWS サービスをマッピングします。1 つのポリシーに複数のルールを設定し、複数の AWS リージョンに適用できます。IPAM プールのアドレスが不足している場合、サービスは Amazon が提供する IP アドレスにフォールバックします。ポリシーは、AWS Organizations 内の個々の AWS アカウントまたはエンティティに適用できます。[Bring-Your-Own-IP (BYOIP)](https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoip-ipam.html) を導入すると、AWS パブリック IPv4 のコストを削減できます。

**IPAM ポリシーを使用するタイミング**

IPAM ポリシーを使用して以下を行います。
+ BYOIP アドレスを使用してパブリック IPv4 コストを削減する
+ AWS リソースが使用する IP プールを一元的に制御する
+ 組織全体で一貫した IP 割り当てを確保する

**仕組み**

IPAM ポリシーが強制されたアカウントでパブリック IP アドレスを必要とする AWS リソースを作成する場合:
+ IPAM はポリシールールを順番にチェックします。
+ ルールがリソースタイプと一致する場合、IPAM は指定されたプールから IP を割り当てます。
+ プールが空で、オーバーフローが有効になっている場合、Amazon は IP アドレスを提供します。
+ 一致するルールがない場合、デフォルトの動作が適用されます。

**サポートされているサービスとリソース**

IPAM ポリシーを作成して、IPAM プールからのパブリック IPv4 アドレスを以下の AWS サービスとリソースに割り当てる方法を定義できます。
+ Elastic IP アドレス (EIP)
+ Application Load Balancers (ALB)
+ Amazon Relational Database Service (RDS)
+ リージョン NAT ゲートウェイ

**重要**  
AWS リソースを作成するときに特定の IPAM プールまたは EIP 割り当て ID を選択すると IPAM ポリシーが上書きされます。

**前提条件**
+ [アドバンスト階層](https://docs.aws.amazon.com/vpc/latest/ipam/mod-ipam-tier.html)が有効になっている委任管理者アカウントの [IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html)
+ IPv4 アドレスを持つ[パブリック IPAM プール](https://docs.aws.amazon.com/vpc/latest/ipam/create-top-ipam.html)
+ IPAM および EC2 オペレーションの [IAM アクセス許可](https://docs.aws.amazon.com/vpc/latest/ipam/iam-ipam.html)

**用語**

**IPAM ポリシー**  
IPAM ポリシーは、IPAM プールからのパブリック IPv4 アドレスを AWS リソースに割り当てる方法を定義する一連のルールです。各ルールは、サービスが IP アドレスを取得するために使用する IPAM プールに AWS サービスをマッピングします。1 つのポリシーに複数のルールを設定し、複数の AWS リージョンに適用できます。IPAM プールのアドレスが不足している場合、サービスは Amazon が提供する IP アドレスにフォールバックします。ポリシーは、AWS Organizations 内の個々の AWS アカウントまたはエンティティに適用できます。ポリシーは、AWS Organizations 内の個々の AWS アカウントまたはエンティティに適用できます。

**割り当てルール**  
AWS リソースタイプを特定の IPAM プールにマッピングする IPAM ポリシー内のオプション設定。ルールが定義されていない場合、リソースタイプはデフォルトで Amazon が提供する IP アドレスを使用します。

**ターゲット**  
IPAM ポリシーを適用できる AWS Organization 内の個々の AWS アカウントまたはエンティティ。

**ステップ 1: IPAM ポリシーを作成する**

**AWS コンソールを使用する:**  
AWS コンソールを使用して IPAM ポリシーを作成するには、以下のステップに従います。

1. IPAM コンソール ([https://console.aws.amazon.com/ipam/](https://console.aws.amazon.com/ipam/)) を開きます。

1. 左のナビゲーションペインの **[ポリシー]** を選択します。

1. [**Create policy (ポリシーの作成)**] を選択します。

1. ポリシーの **[名前]** を入力します (オプション)。

1. このポリシーに関連付ける **[IPAM]** を選択します。

1. (オプション) タグを追加します。

1. [**Create policy**] (ポリシーの作成) を選択します。

**AWS CLI の使用**  
[create-ipam-policy](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-ipam-policy.html) コマンドを使用します。

**ステップ 2: 割り当てルールを追加する**

ポリシーを作成したら、IP アドレスの割り当て方法を定義する割り当てルールを追加する必要があります。

**AWS コンソールを使用する:**  
AWS コンソールを使用して割り当てルールを追加するには、以下のステップに従います。

1. 左のナビゲーションペインの **[ポリシー]** を選択します。

1. 前のステップで作成したポリシーを選択します。

1. ポリシーの詳細ページで、**[割り当てルール]** タブを選択します。

1. **[割り当てルールの作成]** を選択します。

1. **[サービスの設定]** を設定します。
   + **[ロケール]**: このポリシーを適用する AWS リージョン (us-east-1) またはローカルゾーンを選択します。
   + **リソースタイプ**: このポリシーの AWS サービスまたはリソースタイプ (リージョン別可用性モードの Elastic IP アドレス、RDS データベースインスタンス、Application Load Balancer、または NAT ゲートウェイ) を選択します。

1. **[ルールの設定]** を設定します。
   + **[IPAM プール]**: IP アドレスを提供する IPAM プールを選択します。
   + プールの詳細 (ロケール、パブリック IP ソース、使用可能なスペース、使用可能な CIDR 範囲) を確認します。

1. (オプション) 追加のルールを作成するには、**[新しいルールを追加]** を選択します。

1. **[割り当てルールの作成]** を選択します。

**AWS CLI の使用**  
[modify-ipam-policy-allocation-rules](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-ipam-policy-allocation-rules.html) コマンドを使用します。

**ステップ 3: ポリシーを有効にする**

このポリシーを使用するアカウントを指定します。

**AWS コンソールを使用する:**  
AWS コンソールを使用してポリシーを有効にするには、以下のステップに従います。

1. ポリシーの詳細ページで、**[ターゲット]** タブを選択します。

1. **[ポリシーターゲットの管理]** を選択します。

1. 次のいずれかを行います。
   + 単一アカウントで使用する (IPAM が AWS Organizations と統合されていない) 場合は、**[アカウントで有効にする]** を選択します。
   + AWS Organizations と統合された IPAM の場合 (委任管理者の場合):
     + **[組織構造]** セクションで、このポリシーを適用するアカウントまたは組織単位を選択します。
     + 各ターゲットの **[有効]** チェックボックスをオンにします。
     + **[Save changes]** (変更の保存) をクリックします。
     + **重要**: このポリシーを有効にすると、選択したアカウントまたは組織単位のアクティブな IPAM ポリシーが置き換えられます。

**AWS CLI の使用**  
セットアップに基づいて [enable-ipam-policy](https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-ipam-policy.html) コマンドを使用します。

単一アカウントで使用する (IPAM が AWS Organizations と統合されていない) 場合:

```
aws ec2 enable-ipam-policy \
    --ipam-policy-id ipam-policy-12345678
```

AWS Organizations と統合された IPAM の場合 (委任管理者の場合)、AWS Organization 内のアカウントをターゲットとするポリシーを設定します。

```
aws ec2 enable-ipam-policy \
    --ipam-policy-id ipam-policy-12345678 \
    --organization-target-id 123456789012
```

AWS Organizations と統合された IPAM の場合 (委任管理者の場合)、組織単位をターゲットとするポリシーを設定します。

```
aws ec2 enable-ipam-policy \
    --ipam-policy-id ipam-policy-12345678 \
    --organization-target-id ou-123
```

**重要**  
このポリシーを有効にすると、選択したアカウントまたは組織単位のアクティブな IPAM ポリシーが置き換えられます。

**ステップ 4: ポリシーをテストする**

 いずれかのターゲットアカウントで、設定したタイプの新しいリソース (EIP など) を作成します。リソースは、IPAM プールの IP アドレスを自動的に使用します。

**重要**  
AWS リソースを作成するときに特定の IPAM プールまたは EIP 割り当て ID を選択すると IPAM ポリシーが上書きされます。

**ステップ 5: 使用状況をモニタリングする**

コンソールで [IPAM プール](https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-usage-ipam.html)を確認して、リソースに割り当てられた IP アドレスを確認します。