Google Cloud Firewall 是否默认阻止子网间流量?

Does Google Cloud Firewall block inter-subnet traffic by default?

GCP 防火墙有默认的隐含规则来阻止所有入口并允许所有出口。那是针对 VPN 之外的外部流量。

但这会默认阻止单个 VPN 中子网之间的流量吗?

大部分是,默认情况下不允许给定 VPC 网络上的子网之间的流量(除了在您的项目中自动创建的 default 网络)。

请注意,这实际上会阻止 所有 实例之间的流量,而不仅仅是子网之间的流量。所以,重点实际上是在实例上,而不是在子网上——但效果是默认情况下,不同子网上的实例(default 网络上的实例除外)将无法通信。

请记住,VPC 防火墙规则是 enforced at the instance level,即使它的配置是在网络级别。

While the rule is enforced at the instance level, its configuration is associated with a VPC network.

如您所见,只有两个 implied rules:

  • 允许所有出口(到任何其他地址,包括内部地址)
  • 拒绝所有入口(来自任何其他地址,包括内部地址)

default 网络上还有 default rules

  • allow internal traffic (default-allow-internal) -- 此规则允许实例之间的流量(不考虑子网)
  • 允许来自任何来源的 ssh 进入
  • 允许来自任何来源的 rdp 入口
  • 允许来自任何来源的 icmp 入口

因此,在非 default 网络上,您需要创建与 default-allow-internal 规则等效的规则(允许来自网络上所有 IP 的所有协议到网络上的任何实例)。