DAX 和 IPv6 - Amazon DynamoDB

DAX 和 IPv6

DynamoDB DAX 现在支持 IPv6 寻址,这样您就可以创建在仅 IPv4、仅 IPv6 或双栈联网模式下工作的集群。这有助于增强网络能力,满足不断变化的基础设施需求。

网络类型:

您可以使用下列网络类型之一创建集群:

  • 仅 IPv4

  • 仅 IPv6

  • 双栈(同时支持 IPv4 和 IPv6)

主要功能

利用 IPv6 支持,您可以:

  • 网络配置选项:

    • dual_stack subnets 上的仅 IPv4 集群和双栈集群。

    • 仅 IPv6 的子网上的仅 IPv6 集群。

  • 子网组管理:

    • 创建子网组,支持仅 IPv4、仅 IPv6 或双栈模式

    • 使用其他 VPC 子网修改现有子网组

    • 向配置为支持 IPv6 的子网组添加仅 IPv6 子网

    • 向配置为支持 IPv4 和双栈的子网组添加 IPv4 或双栈子网

  • 客户端配置:

    • 在进行数据面板调用时,您可以使用以下方法为 dual_stack 集群设置首选 IP 协议:

      • Python SDK 中的 ip_discovery 参数

      • 其他 SDK 中的 ipDiscovery 参数

    • 默认值:未指定协议首选项时为 IPv4

在 DAX 集群中实施 IPv6 之前,您必须考虑以下事项:

  • 创建集群后,网络类型将无法更改

  • 对于双栈集群,客户端配置中的 ip_discovery/ipDiscovery 参数确定使用哪个 IP 协议(IPv4 或 IPv6)

  • 不同的应用程序可以根据其配置,使用不同的 IP 协议连接到同一个双栈集群

例示例客户端配置
DynamoDbAsyncClient client = ClusterDaxAsyncClient.builder() .overrideConfiguration(Configuration.builder() .url(endpoint) // DAX cluster endpoint .ipDiscovery(ipDiscovery) // IP discovery type (IPv4 or IPv6) .build()) .build();
重要

使用 DAX 时,当您通过基于资源的 IAM 策略,在仅 IPv6 的环境中限制 DynamoDB 表的 IP 地址时,如果您屏蔽 IPv4 地址空间(0.0.0.0/0),则必须为 DAX 集群的 IAM 角色创建一个特例。在您的策略中添加 ArnNotEquals 条件,专门允许 DAX 集群的 IAM 角色进行访问,同时保持对其他访问路径的基于 IP 的限制。如无此特例,DAX 将无法访问您的 DynamoDB 表。

例如:

JSON
{ "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" } } } ] }