通过 IPv6 向 S3 表类数据存储服务发出请求 - Amazon Simple Storage Service

通过 IPv6 向 S3 表类数据存储服务发出请求

除了 IPv4 协议之外,Amazon S3 还支持使用互联网协议版本 6(IPv6)通过双堆栈端点访问 S3 存储桶的功能。双堆栈端点可以解析为 IPv6 端点或 IPv4 端点,具体取决于网络支持的协议版本。

下面是在尝试通过 IPv6 访问 S3 表类数据存储服务之前应了解的一些事项:

  • 访问表存储桶的客户端和网络必须支持使用 IPv6。

  • 表客户端和 S3 客户端都必须启用了双堆栈。

  • 如果您使用 IP 地址筛选 IAM 策略,则必须对这些策略进行更新才能处理 IPv6 地址。有关使用 IAM 管理访问权限的更多信息,请参阅 Amazon S3 的身份和访问管理

  • 如果使用 IPv6,服务器访问日志文件以 IPv6 格式输出 IP 地址。您需要对用于分析 Amazon S3 日志文件的现有工具、脚本和软件进行更新,以便它们能够分析 IPv6 格式的 Remote IP 地址。有关更多信息,请参阅 使用服务器访问日志记录来记录请求

通过 IPv6 发出 S3 表类数据存储服务请求入门

当您向双堆栈端点发出请求时,表存储桶 URL 解析为 IPv6 或 IPv4 地址,具体取决于网络支持的协议版本。如果您的网络优先使用 IPv4,则请求将自动使用 IPv4。如果您的网络优先使用 IPv6,则请求将使用 IPv6。除了更新客户端或应用程序以启用双堆栈端点之外,无需更改任何其它配置。

当使用 REST API 时,您通过使用端点名称(URI)直接访问 Amazon S3 端点。您可以使用以下命名约定,通过双堆栈端点访问 S3 表类数据存储服务和表存储桶:

s3tables.<region>.api.aws

有关 S3 表类数据存储服务的端点的完整列表,请参阅 Amazon Simple Storage Service endpoints and quotas

如果使用 AWS CLI、AWS SDK 和 Iceberg 客户端,则可以使用参数或标志以更改为双堆栈端点。您还可以在配置文件中直接将双堆栈端点指定为覆盖 Amazon S3 端点。

您可以通过使用以下命令设置双堆栈标志,在 SDK 或客户端中启用双堆栈端点解析:

S3TablesClient client = S3TablesClient.builder() .region(Region.US_EAST_1) .dualstackEnabled(true) .build();

要在 AWS CLI 中使用双堆栈端点,请参阅 Using dual-stack endpoints from the AWS CLI

有关为 AWS PrivateLink 使用双堆栈端点的信息,请参阅使用双堆栈端点访问表和表存储桶