Google Cloud Serverless VPC 访问无法双向运行

Google Cloud Serverless VPC 访问无法双向运行

我有一个 Cloud Run 服务,我想通过无服务器 VPC 连接器将其连接到我的默认 VPC 网络。这样做的最终目标是允许我的 Cloud Run 实例通过单独配置的 VPN 访问本地服务器,但我的第一个问题是我甚至无法访问同一网络上的虚拟机。

我尝试使用这个来调试这个问题vpc-网络测试器服务,这确认我无法 ping 我的 Compute Engine VM。

从我的虚拟机,我能够成功 ping 通 Cloud Run 实例(我已经配置并设置了一些简单的防火墙日志来查找实例的内部 IP,并且虚拟机能够访问它们)。

从我读过的所有内容来看,这听起来像是 Compute Engine VM 或默认网络方面的防火墙问题,但我设置的唯一附加防火墙规则是允许我检查防火墙流量的规则。

这是有关配置的一些信息,但如果我可以提供更多信息,请告诉我。

无服务器 VPC 访问

(我最初确实为此设置了自己的子网,但我删除了它并允许它使用 IP 范围自行管理)

姓名 网络 IP 地址范围 地区 实例类型
无服务器-vpc-连接器 默认 10.1.0.0/28 美国-中央1 e2-micro

Cloud Run 配置(用于 vpc-network-tester)

VPC 连接器 路线类型
无服务器-vpc-连接器 通过 VPC 连接器仅将请求路由到私有 IP

Ping 响应

来源 目的地 结果
10.1.0.2(vpc-网络测试器) 10.128.0.2(Compute Engine VM 的内部 IP)
PING 10.128.0.2 (10.128.0.2): 56 个数据字节

--- 10.128.0.2 ping 统计信息 ---
已发送 4 个数据包,已接收 0 个数据包,100% 数据包丢失
10.128.0.2(Compute Engine VM 的内部 IP) 10.1.0.2(vpc-网络测试器)
PING 10.1.0.2 (10.1.0.2) 56(84) 字节数据。

--- 10.1.0.2 ping 统计 ---
已发送 4 个数据包,已接收 4 个数据包,0% 数据包丢失,耗时 82 毫秒

连通性测试

这是从 Cloud Run 到 Compute Engine VM 的 ICMP 测试

答案1

由于我的声誉不足以发表评论,因此我将将其作为答案发布。

看起来你已经创建了一个无服务器 VPC 访问连接器将 Cloud Run 服务直接连接到您的 VPC 网络。

您可以尝试创建一个入口防火墙规则 允许此子网 0.0.0.0/0 只是为了检查这是否允许从 Cloud Run 实例到虚拟机的连接。

您可以执行另一项连通性测试从 Cloud Run 到 VM。确保将协议更改为 TCP,并为目标端口指定特定端口。例如,如果您想使用端口 80,请确保使用该端口的服务正在运行。您可以查看此链接检查 Linux 上正在运行的服务

相关内容