You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GCP跨项目共享VPC中禁用App Engine公共入站访问

GCP App Engine 内网访问连通问题排查方案

1. 确认Shared VPC授权与子网配置

  • 检查服务项目的App Engine服务帐号 service-<服务项目号>@gae-api-prod.google.com.iam.gserviceaccount.com 是否在宿主项目中拥有 roles/compute.networkUser 角色,无此权限则服务项目无法使用共享VPC。
  • 确保VPC B的目标子网已开启私有Google访问(Private Google Access),App Engine依赖该配置访问Google核心服务,同时子网路由需允许流量流向本地网络。

2. 核对App Engine入站限制配置

  • 确认部署时明确设置内网-only访问:要么在app.yaml中添加 ingress: internal-only,要么执行命令 gcloud app deploy --ingress internal-only,避免遗漏配置参数。
  • 查看App Engine控制台的服务设置,确认没有额外的外部IP允许规则覆盖内网限制。

3. 检查VPN与跨VPC路由

  • 若VPC A和VPC B使用对等连接,确认对等关系为双向,路由条目已同步,本地网络IP段可被VPC B识别。
  • 查看VPN隧道状态,确保隧道处于UP状态,无论使用BGP还是静态路由,本地网络IP范围需正确发布到VPC A并同步至VPC B。
  • 检查VPC B的路由表,确认存在指向VPC A的路由规则,将本地内网流量引导至VPN方向,缺失则手动添加。

4. 防火墙规则排查

  • 在宿主项目的VPC B中,添加防火墙规则:来源设为本地内网CIDR,目标选择App Engine使用的子网,允许80/443端口的入站流量。
  • 确认不存在针对App Engine服务帐号的deny规则,避免直接阻断流量。

5. 连通性测试定位问题

  • 在本地网络使用traceroute或mtr工具测试App Engine内部IP(通过gcloud app describe获取服务内部IP范围),定位流量阻断的节点。
  • 在VPC B中创建临时VM,直接访问App Engine服务:若VM可访问但本地不行,问题出在VPN或跨VPC路由;若VM也无法访问,则排查App Engine配置或VPC B防火墙。

6. 私有DNS配置(自定义域名场景)

  • 若使用自定义域名访问App Engine,需确保本地DNS将域名解析至App Engine内部IP,或在Cloud DNS中创建私有区域,绑定域名与内部IP,保证VPC B和本地网络可正确解析。

内容的提问来源于stack exchange,提问作者S.K

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 20:10:10