能否通过VPC Peering连接VPN网关与Google VPC访问内部Cloud Run服务
1. VPC Peering连接VPN网关与Google VPC的可行性及替代方案
- 核心结论:VPC Peering无法直接对接你的VPN网关实现连通。VPC Peering是GCP提供的同平台内两个VPC之间的私网对等服务,对接端点只能是GCP内部的VPC网络,不支持直接连接非GCP环境的用户侧VPN网关。
- 可用替代方案:
- 优先选Cloud VPN:直接在GCP VPC侧创建Cloud VPN网关,和你现有VPN网关建立IPsec加密隧道,路由配置完成后两侧网络即可私网互通,是最常规、配置成本最低的跨环境VPN连通方案。
- 有低延迟、大带宽需求选Cloud Interconnect:通过专用物理专线/合作伙伴专线打通本地网络与GCP VPC,链路稳定性远高于公网VPN。
- 跨云场景可选第三方中转:如果你的VPN网关部署在其他公有云,可先打通其他云与GCP的跨云VPN隧道,再通过云平台内部路由转发本地VPN侧流量到GCP。
2. VPN侧静态IP资源访问GCP内部Cloud Run的实现方案
- 你设想的「通过VPC Peering打通VPN网关与GCP VPC、进而访问内部Cloud Run」的方案完全不可行,除了前面提到的VPC Peering不支持对接VPN网关的限制外,还有一个硬规则:VPC Peering不支持传递非对等VPC来源的路由,就算你用中转VPC做多层Peering,来自VPN侧的流量也会被GCP的路由策略直接丢弃,根本到不了Cloud Run所在的托管网络。
- 可落地的标准配置路径:
- 先通过Cloud VPN或者Cloud Interconnect打通你VPN所在网络和GCP自定义VPC的私网连接,确认两边静态路由配置正确,VPN侧的静态IP资源可以正常访问GCP VPC内的虚拟机等私网资源。
- 给目标Cloud Run服务开启内部访问模式,通过Serverless VPC Access连接器或者VPC直连功能,将Cloud Run服务接入你已经打通的GCP VPC,为其分配VPC内可路由的私网地址。
- 配置GCP侧防火墙规则,放通VPN侧静态IP所在网段到Cloud Run关联VPC网段的访问权限,同时在你的本地VPN网关上添加指向Cloud Run所用VPC网段的路由,即可实现私网直接访问内部Cloud Run服务。
- 关于文档说明:你找不到单篇覆盖全流程的官方文档是正常的,这个场景属于两个独立云产品的组合使用,没有专门的场景化文档,你只需要分别对照Cloud VPN的站点到站点连接配置文档、Cloud Run的VPC内部访问配置文档按步骤操作即可,没有特殊的隐藏限制。
避坑提示:不用花时间测试VPC Peering中转访问Cloud Run的路径,从GCP底层网络的路由转发规则来看,这个路径天生不通,所有相关的测试都是无效的。
内容的提问来源于stack exchange,提问作者xetra11
相关产品推荐
相关产品推荐

