

# IPAM を使用して独自の IP を CloudFront に持ち込む (IPv4 と IPv6 をサポート)
<a name="tutorials-byoip-cloudfront"></a>

IPAM のグローバルサービス用の BYOIP を使用すると、CloudFront などの AWS グローバルサービスで独自の IPv4 および IPv6 アドレスを使用できます。リージョン BYOIP とは異なり、IP アドレスはエニーキャストルーティングを通じて複数のエッジロケーションから同時にアドバタイズされます。

このチュートリアルでは、以下について説明します。
+ IPv4 (/24) および/または IPv6 (/48) アドレス範囲のグローバル IPAM プールの作成
+ 独自の IP アドレスを使用したエニーキャスト静的 IP リストのプロビジョニング
+ CloudFront エッジロケーションを通じた CIDR のグローバルな宣伝
+ 個別の IPv4 および IPv6 IPAM プールを使用したデュアルスタック設定

## この機能を使用する理由
<a name="why-use-this-feature"></a>
+ **IP 許可リストの維持** – ファイアウォール設定を更新する代わりに、既存の承認済み IP アドレスを使用します。
+ **移行の簡素化** – IP インフラストラクチャを変更せずに他の CDN から移行します
+ **一貫したブランディング** – AWS に移行するときは既存の IP アドレス空間を維持します
+ **IPv6 の準備状況** — IPv4 と IPv6 の両方で最新のデュアルスタックアーキテクチャをサポート

## この機能を使用すべきユーザー
<a name="who-should-use-this-feature"></a>

グローバルコンテンツ配信で独自の IP アドレスを必要とする組織:
+ IP 許可リストの要件を持つ大規模なエンタープライズ
+ 既存の IP アドレスを保持したまま、他の CDN から移行する企業
+ 特定の IP 範囲を必要とする厳格なセキュリティポリシーを持つ組織
+ グローバルリーチのためにデュアルスタック (IPv4/IPv6) 設定を必要とする企業

## この機能を使用するタイミング
<a name="when-to-use-this-feature"></a>

以下の場合は、グローバルサービスに BYOIP を使用します。
+ パートナー/クライアントとの既存の IP 許可リストを維持する必要がある場合
+ IP アドレスを使用して別の CDN から移行する場合
+ 特定の IP 範囲のコンプライアンス要件を満たす必要がある場合
+ IPv4 クライアントと IPv6 クライアントの両方をサポートするデュアルスタックアーキテクチャをデプロイ

**注記**  
IPv4 用の /24 CIDR ブロックが必要です。デュアルスタック (IPv4 および IPv6) には、/24 IPv4 および /48 IPv6 CIDR ブロックが必要です。現在、CloudFront でのみ使用できます。

## 前提条件
<a name="prerequisites"></a>

開始する前に、次のステップを完了します。
+ **IPAM のセットアップ** – [IPAM を AWS Organizations 内のアカウントと統合する](enable-integ-ipam.md) および [IPAM を作成する](create-ipam.md)
+ **ドメインの検証** – [ドメインコントロールの検証](tutorials-byoip-ipam-domain-verification-methods.md)
+ **最上位プールを作成する (複数可)** – 「[独自の IPv4 CIDR を IPAM に持ち込む](tutorials-byoip-ipam-console-ipv4.md)」または「[独自の IPv6 CIDR を IPAM に持ち込む](tutorials-byoip-ipam-console-ipv6.md)」のステップ1～2 に沿って操作します。
+ **ROA (ルートオリジン認可)** – デュアルスタックをデプロイする場合は、IPv4 (/24) プレフィックスと IPv6 (/48) プレフィックスの両方に ROA が設定されていることを確認します。

## グローバルサービス設定ステップ
<a name="global-service-configuration-steps"></a>

次の手順は、標準のリージョン BYOIP プロセスとは異なり、グローバルサービスのパターンを確立します。デュアルスタックデプロイでは、IPv4 と IPv6 用に別々のプールを作成し、両方を CloudFront にプロビジョニングします。

### ステップ 1: エニーキャストサービスのグローバルプールを作成する
<a name="step-1-create-global-pool"></a>

リージョンプールを作成する代わりに、エニーキャストサービスのグローバルプールを作成します。

**コンソール**  
コンソールを使用してグローバルプールを作成するには:

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

1. ナビゲーションペインで、**[プール]** を選択します

1. **[プールを作成]** を選択します

1. **[ソース]**: 最上位の BYOIP プールを選択します

1. **[ロケール]**: **[グローバル]** を選択します

1. **[サービス]**: **[グローバルサービス]** を選択します ([グローバル] が選択されている場合に表示されます)

1. **[パブリック IP ソース]**: **[BYOIP]** を選択します

1. **プロビジョニングする CIDR**: /24 CIDR 範囲 (IPv4 の場合) または /48 CIDR 範囲 (IPv6 の場合) を指定する

1. **[プールを作成]** を選択します

**CLI**  
IPv4 の場合:

```
aws ec2 create-ipam-pool \
  --ipam-scope-id {{scope-id}} \
  --locale None \
  --address-family ipv4 \
  --source-ipam-pool-id {{top-level-pool-id}}

aws ec2 provision-ipam-pool-cidr \
  --ipam-pool-id {{global-pool-id}} \
  --cidr {{your-ipv4-/24}}
```

IPv6 の場合:

```
aws ec2 create-ipam-pool \
  --ipam-scope-id {{scope-id}} \
  --locale None \
  --address-family ipv6 \
  --source-ipam-pool-id {{top-level-pool-id}}

aws ec2 provision-ipam-pool-cidr \
  --ipam-pool-id {{global-pool-id}} \
  --cidr {{your-ipv6-/48}}
```

**重要**  
IPv4 の場合: このプールには完全な /24 ブロックを割り当てる必要があります。さまざまな用途に合わせて、このブロック内でより具体的な範囲をプロビジョニングできます。
IPv6 の場合: このプールには完全な /48 ブロックを割り当てる必要があります。さまざまな用途に合わせて、このブロック内でより具体的な範囲をプロビジョニングできます。

### ステップ 2: サービス固有のリソースを作成する
<a name="step-2-create-service-specific-resources"></a>

CloudFront の場合は、IPAM プールを使用するエニーキャスト IP リストを作成します。詳細な手順については、「*Amazon CloudFront デベロッパーガイド*」の「[IPAM を使用して CloudFront に独自の IP を持ち込む](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/bring-your-own-ip-address-using-ipam.html)」を参照してください。

**IPAM 統合の主要なパラメータ:**
+ **IP アドレスタイプ** – **[BYOIP]** を選択します
+ **IPAM プール** – ステップ 1 のグローバルプールを選択する (IPv4 または IPv6)
+ **IP 数** – **3** を入力します (CloudFront に必要)

### ステップ 3: サービスリソースに関連付ける
<a name="step-3-associate-with-service-resources"></a>

エニーキャスト静的 IP リストを CloudFront ディストリビューションに関連付けます。詳細な手順については、「*Amazon CloudFront デベロッパーガイド*」の「[IPAM を使用して CloudFront に独自の IP を持ち込む](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/bring-your-own-ip-address-using-ipam.html)」を参照してください。

**設定キー:**
+ ディストリビューション設定で、ステップ 2 のエニーキャスト IP リストを選択します

### ステップ 4: 移行の準備をする
<a name="step-4-prepare-for-migration"></a>
+ **DNS TTL を下げる** – レコードの DNS TTL を 60 秒以下に設定します
+ **伝播を待つ** – 新しい TTL がインターネット全体に反映されるまで待ちます

### ステップ 5: CIDR をグローバルにアドバタイズする
<a name="step-5-advertise-cidr-globally"></a>

IPAM グローバルアドバタイズコマンドを使用します。

**コンソール**  
コンソールを使用して CIDR をアドバタイズするには:

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

1. ナビゲーションペインで、**[プール]** を選択します

1. グローバルプールを選択します

1. **[CIDR]** タブを選択します

1. CIDR を選択し、**[アクション]** > **[CIDR をアドバタイズ]** を選択します

1. アドバタイズを確認します

**CLI**  
IPv4 の場合:

```
aws ec2 advertise-byoip-cidr \
  --cidr {{your-ipv4-/24}}
```

IPv6 の場合:

```
aws ec2 advertise-byoip-cidr \
  --cidr {{your-ipv6-/48}}
```

**重要**  
このコマンドを実行する前に、以前のプロバイダーからアドバタイズを取り消します
CloudFront を指すように DNS レコードを更新して移行を完了する (IPv4 は A レコード、IPv6 は AAAA レコード)

## クリーンアップ
<a name="cleanup"></a>

このチュートリアルで作成したリソースをクリーンアップするには:
+ **CloudFront リソースの削除** – 「[Amazon CloudFront デベロッパーガイド](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/bring-your-own-ip-address-using-ipam.html)」の「*IPAM を使用して独自の IPを Amazon CloudFrontに持ち込む*」のクリーンアップ手順に沿って操作します。
+ **CIDR の取り消しと IPAM プールの削除** – [ステップ 8: クリーンアップ](tutorials-byoip-ipam-console-ipv4.md#tutorials-byoip-ipam-ipv4-console-cleanup) の標準クリーンアッププロセスに従います

**重要**  
サービスの中断を避けるために、まず CloudFront リソースを削除してから、IPAM クリーンアップに進みます。