

# DAX と IPv6
<a name="DAX.create-cluster.DAX_and_IPV6"></a>

DynamoDB DAX で IPv6 アドレス指定がサポートされるようになりました。これにより、IPv4 のみ、IPv6 のみ、またはデュアルスタックのネットワークモードで動作するクラスターを作成できます。進化するインフラストラクチャ要件を満たすネットワーク機能を強化するのに役立ちます。

**ネットワークの種類:**

クラスターの作成には、次のいずれかの種類のネットワークが使用できます。
+ IPv4 のみ
+ IPv6 のみ
+ デュアルスタック (IPv4 と IPv6 の両方をサポート)

**の主な特徴**

IPv6 のサポートを使用して、次のことを実行できます。
+ **ネットワーク設定のオプション:**
  + IPv4 のみ、および `dual_stack subnets` の デュアルスタッククラスター。
  + IPv6 専用サブネットの IPv6 専用クラスター。
+ **サブネットグループの管理:**
  + IPv4 のみ、IPv6 のみ、またはデュアルスタックをサポートする新しいサブネットグループを作成する。
  + 追加の VPC サブネットを使用して既存のサブネットグループを変更する
  + IPv6 専用サブネットを、IPv6 用に設定されたサブネットグループに追加する
  + IPv4 およびデュアルスタック用に設定されたサブネットグループに IPv4 またはデュアルスタックサブネットを追加する
+ **クライアント設定:**
  + データプレーンの呼び出しを行うとき、次を使用してデュアルスタッククラスターの優先 IP プロトコルを設定できます。
    + Python SDK の `ip_discovery` パラメータ
    + 他の SDK の `ipDiscovery` パラメータ
  + デフォルト: プロトコル設定が指定されていない場合、IPv4

DAX クラスターに IPv6 を実装する前に、次の点を考慮する必要があります。
+ クラスター作成後にネットワークタイプを変更することはできません。
+ デュアルスタッククラスターの場合、クライアント設定の `ip_discovery/ipDiscovery` パラメータによって、使用する IP プロトコル (IPv4 または IPv6) が決まります。
+ 異なるアプリケーションは、設定に基づいて異なる IP プロトコルを使用して同じデュアルスタッククラスターに接続できます。

**Example クライアント設定の例**  

```
DynamoDbAsyncClient client = ClusterDaxAsyncClient.builder()
        .overrideConfiguration(Configuration.builder()
            .url(endpoint)             // DAX cluster endpoint
            .ipDiscovery(ipDiscovery)       // IP discovery type (IPv4 or IPv6)
            .build())
        .build();
```

**重要**  
リソースベースの IAM ポリシーを使用して DAX を使用する IPv6 専用の環境にある DynamoDB テーブルの IP アドレスを制限しているとき、IPv4 アドレス空間 (`0.0.0.0/0`) をブロックする場合は、DAX クラスターの IAM ロールに例外を作成する必要があります。他のアクセスパスの IP ベースの制限を維持しながら、DAX クラスターの IAM ロールへのアクセスを特に許可するポリシーに、`ArnNotEquals` 条件を追加します。この例外がない限り、DAX は DynamoDB テーブルにアクセスできません。  
例：  

**Example**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": "*",
      "Action": "dynamodb:PutItem",
      "Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/MusicCollection",
      "Condition": {
        "ArnNotEquals": {
          "aws:PrincipalArn": "arn:aws:iam::123456789012:role/DAXServiceRoleForDynamoDBAccess"
        },
        "IpAddress": {
          "aws:SourceIp": "0.0.0.0/0"
        }
      }
    }
  ]
}
```