全球加速器IPv6无法连接

全球加速器IPv6无法连接

我在 eu-west-1(都柏林)和 ap-southeast-2(悉尼)有双栈 ALB。

  • 端口 80 重定向到 https
  • 端口 443 转发至目标组 (IPv4)

通过直接进入 ALB(在每个区域),我就可以顺利地到达 IPv4 和 IPv6 上的两个目标组。

现在我创建一个双栈 GA,其端点指向这两个 ALB。

  • 端点被标记为健康
  • 我可以从 GA IPv4 地址获得正常响应。我的流量被发送到其中一个 ALB。
  • 我明白了没有什么当我尝试通过 GA IPv6 地址连接时(TCP 连接超时)。
  • 我可以 ping IPv6 GA 地址
  • 我已经检查了 ACL、安全组等。
  • 失败似乎不应该由目标组、安全组或 VPC 引起,因为我可以通过直接进入 ALB(IPv6)来访问所有内容。

有什么提示吗?我遗漏了什么?

已更新... VPC 流日志通常显示 srcaddr 为 0:0:0:0:0:0:0:0(接受 OK),然后回复 dstaddr 0:0:0:0:0:0:0:0(拒绝 OK)。

  • 可能是因为 0:0:0:0:0:0:0:0 不是一个有效的地址?
  • 我不知道为什么我会看到 srcaddr 0:0:0:0:0:0:0:0

然而,有时我会看到正确的 IPv6 srcaddr(接受 OK)后跟对正确 dstaddr 的回复(接受 OK),但是,在我的家庭 IPv6 地址或具有公共 IPv6 地址的 EC2 实例上运行的 curl 仍然会显示“连接超时”。

  • 我通过以下方式验证我具有良好的 IPv6 访问权限curl -6 https://yahoo.com

答案1

我最终能够通过更改 VPC ACL 来实现这一点,包括全部TCP 流量(terraform 中的端口 0 到 65535)::/0,而不仅仅是端口 80 和 443。

在 ACL 中允许端口 80 和 443 有效没有但是,由于全球加速器端点 (eni) 连接到 VPC 的方式,ACL 中的目标端口实际上是来自全球加速器的源端口。

  • 我在之前的调查中没有注意到全部允许 IPv4 流量,但仅允许 IPv6 端口 80 和 443。

相关内容