网络内的 GCP IPv6 通信?

网络内的 GCP IPv6 通信?

我有一个 VPC 设置,其中有多个主机需要通过 IPv6 服务进行通信。每个实例都配置了 IPv6,可以使用 IPv6 成功 ping 并连接到外部主机。我创建了一条防火墙规则,使它们能够相互通信(主机标记为“测试”):

$ gcloud compute firewall-rules create target-all-ipv6 \
  --network=test-net-1 --priority=1000 \
  --direction=INGRESS --action=ALLOW \
  --rules=all \
  --source-ranges="fe80::/10" \
  --target-tags=test

但是,通过此设置,我无法使用本地 f80 地址在这些实例之间 ping 或建立任何 IPv6 连接。

同一网络上的两个 GCP 实例是否可以通过 IPv6 进行通信?

答案1

经过进一步挖掘,我找到了答案。似乎无法使用链路本地 (fe80::) 地址在 IPv6 实例之间建立连接,但实例可以使用 IPv6 与其全局地址进行通信。

解决方案是制定防火墙规则以允许来自网络的全局 IPv6 前缀的 IPv6 流量,并使用这些全局地址进行通信。

例如:

$ gcloud compute firewall-rules create test-ipv6 \
  --network=test-net-1 --priority=1000 \
  --direction=INGRESS --action=ALLOW \
  --rules=tcp:443,icmp \
  --source-ranges="2600:1900:xxxx:xxxx:xxxx::/64" \
  --target-tags=test

相关内容