![负载均衡器和虚拟机之间的 VPC 防火墙规则](https://linux22.com/image/768737/%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1%E5%99%A8%E5%92%8C%E8%99%9A%E6%8B%9F%E6%9C%BA%E4%B9%8B%E9%97%B4%E7%9A%84%20VPC%20%E9%98%B2%E7%81%AB%E5%A2%99%E8%A7%84%E5%88%99.png)
我添加了一些 vpc 防火墙规则来阻止访问我的负载均衡器 - 并且只允许特定的 ip。这些规则似乎阻止了负载均衡器和虚拟机之间的流量。我如何设置允许负载均衡器和虚拟机之间所有流量的规则?我尝试使用 LB 外部 ip,但它不起作用。负载均衡器有内部 ip 吗?我在哪里可以找到它?“内部”默认规则在这里也不起作用。
答案1
您无法使用 VPC 防火墙阻止对负载均衡器的访问。当负载均衡器连接到您的虚拟机时,VPC 防火墙会看到负载均衡器的 IP 地址,而不是客户端的 IP 地址。客户端的 IP 地址存储在 HTTP 标头 X-Forwarded-For 中,而 VPC 防火墙不处理 HTTP 标头。
您可以限制虚拟机实例上的流量,以仅允许来自负载均衡器和健康检查的流量。但是,这不会控制从客户端到负载均衡器的流量。要控制客户端流量,需要将 Cloud Armor 添加到 HTTP(S) 负载均衡器。
后端实例必须允许来自负载均衡器 GFE/健康检查范围的连接。这意味着您必须为从 130.211.0.0/22 和 35.191.0.0/16 到后端实例或终端节点的流量创建入口允许防火墙规则。这些 IP 地址范围用作健康检查数据包和发送到后端的所有负载平衡数据包的来源。