为 CloudFront 分配启用 IPv6 - Amazon CloudFront

为 CloudFront 分配启用 IPv6

Amazon CloudFront 同时支持 IPv4 和 IPv6(从客户端到 AWS 边缘站点)。CloudFront 还支持指向源的 IPv6 连接和双堆栈(IPv4 和 IPv6)连接。这有助于您实现端到端 IPv6 传输。

IPv6 是下一代互联网协议,旨在取代 IPv4。IPv4 使用 32 位地址(例如 192.0.2.44),而 IPv6 使用 128 位地址(例如 2001:0db8:85a3::8a2e:0370:7334)。IPv6 提供扩展的地址空间,可容纳更多的互联网连接设备。

IPv6 查看器请求

通常,如果您有 IPv6 网络上的用户需要访问您的内容,则应启用 IPv6。不过,如果您使用签名 URL 或签名的 Cookie 来限制对您的内容的访问,并且您使用自定义策略(该策略包含 IpAddress 参数以限制可访问您的内容的 IP 地址),请不要启用 IPv6。如果您希望按 IP 地址限制对某些内容的访问,而不限制对其他内容的访问 (或限制访问,但不按 IP 地址实施限制),则您可创建两个分配。有关使用自定义策略创建签名 URL 的信息,请参阅使用自定义策略创建签名 URL。有关使用自定义策略创建签名 Cookie 的信息,请参阅使用自定义策略设置签名 Cookie

如果您使用 Route 53 别名资源记录集将流量路由到您的 CloudFront 分配,在满足以下两个条件时,您需要创建另一个别名资源记录集:

  • 您为分发启用 IPv6

  • 您在对象的 URL 中使用备用域名

有关更多信息,请参阅《Amazon Route 53 开发人员指南》中的使用域名将流量路由到 Amazon CloudFront 分配

如果您已使用 Route 53 或其他 DNS 服务创建 CNAME 资源记录集,则无需进行任何更改。CNAME 记录会将流量路由到您的分配,无论查看器请求的 IP 地址格式如何。

如果您启用 IPv6 和 CloudFront 访问日志,c-ip 列将包含 IPv4 和 IPv6 格式的值。有关更多信息,请参阅 日志文件字段

注意

为了维护客户的高可用性,CloudFront 将使用 IPv4 响应查看器请求(如果我们的数据表明 IPv4 将提供更佳的用户体验)。要查明 CloudFront 通过 IPv6 提供的请求的百分比,请为分配启用 CloudFront 日志记录并解析 c-ip 列,该列包含已发出请求的查看器的 IP 地址。此百分比将随时间增大,但仍只占据流量的一小部分,因为 IPv6 并未在全球范围内得到所有查看器网络的支持。一些查看器网络具有很好的 IPv6 支持,但其他查看器网络根本不支持 IPv6。(查看器网络类似于您的家庭 Internet 或无线运营商。)

有关我们对 IPv6 的支持的更多信息,请参阅 CloudFront 常见问题。有关启用访问日志的信息,请参阅标准日志记录日志前缀字段。

IPv6 源请求

当您使用自定义源(不包括 Amazon S3 和 VPC 源)时,您可以自定义分配的源设置,以选择 CloudFront 如何使用 IPv4 或 IPv6 地址连接到源。对于自定义源(不包括 Amazon S3 和 VPC 源),您具有以下连接选项:

  • 仅限 IPv4(默认):这是 CloudFront 用于通过 IPv4 连接到源的默认配置。

  • 仅限 IPv6:需要源域才能解析为 IPv6 地址。CloudFront 将仅使用 IPv6 地址进行源连接。

  • 双堆栈:启用通过 IPv4 和 IPv6 进行连接。CloudFront 会自动选择 IPv4 或 IPv6 源连接来确定性能和可用性的优先级,这样您就可以将 CloudFront 用作 Web 应用程序的 IPv6 和 IPv4 双栈互联网网关。

选择符合源的网络配置和连接要求的选项。有关更多信息,请参阅 Designing DNS for IPv6IPv6 security and monitoring considerations