AWS ELB 中的双栈前缀是啥意思?

Posted

技术标签:

【中文标题】AWS ELB 中的双栈前缀是啥意思?【英文标题】:What does the dualstack prefix mean in AWS ELB?AWS ELB 中的双栈前缀是什么意思? 【发布时间】:2017-05-28 03:54:47 【问题描述】:

当我在 AWS Route 53 中添加一个 ELB 作为别名目标时,它会自动将 dualstack 前缀添加到我的 ELB DNS 中。这代表什么?

当我尝试dig 时,两者都返回相同的端点。

注意:这是一个内部负载平衡器。

【问题讨论】:

【参考方案1】:

dualstack DNS 名称返回 EC2-Classic(面向 Internet,非 VPC)弹性负载均衡器的 IPv6 和 IPv4 记录。

请参阅Internet-Facing Load Balancers 上的 ELB 文档:

EC2-VPC

VPC 中的负载均衡器仅支持 IPv4 地址。 [...]

EC2-经典

EC2-Classic 中的负载均衡器支持 IPv4 和 IPv6 地址。 [...]

基本公共 DNS 名称仅返回 IPv4 记录。带有 ipv6 前缀的公共 DNS 名称仅返回 IPv6 记录。带有 dualstack 前缀的公共 DNS 名称返回 IPv4 和 IPv6 记录。我们建议您通过使用带有 dualstack 前缀的 DNS 名称来启用 IPv6 支持,以确保客户端可以使用 IPv4 或 IPv6 访问负载平衡器。

虽然 Route53 控制台总是在为 A (IPv4) 或 AAAA (IPv6) 资源记录集选择别名目标时将 dualstack. 添加到 DNS 名称之前(如在documentation),此外,dualstack.* 端点总是正确返回 IPv4 A 记录,EC2-Classic ELB 的 DNS 名称(无论是dualstack.*ipv6.* 端点)当前返回 IPv6 AAAA 记录,或用作 AAAA 记录的有效别名目标。

您可以使用dig进行确认:

dig dualstack.[endpoint] A dualstack.[endpoint] AAAA +short

只有 EC2-Classic ELB 会为此命令返回 IPv4 和 IPv6 地址,其他只会返回 IPv4 地址。

【讨论】:

从技术上讲,由于问题与别名有关,因此如果您还创建了 AAAA 别名,它只会返回 IPv6 答案。 知道上述答案是否也适用于内部负载均衡器? @NithinSatheesan 添加了更多信息,阐明 IPv6 双栈终端节点仅对不在 VPC 中的 EC2-Classic 弹性负载均衡器有用。 @NithinSatheesan - 它只对面向互联网有用 AWS VPC 和 ALB 现在支持 ipv6。

以上是关于AWS ELB 中的双栈前缀是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

javascript中的双括号是啥意思以及如何访问它们

dockerfile中的双箭头(<<:*django)是啥意思?

python中的双下划线__是啥意思? [复制]

Java的方法参数中的双感叹号和#号是啥意思?

c语言的双冒号是啥意思::

SceneKit 中的“simd”前缀是啥意思?