描述“消费者端防火墙”对 PSC 连接的影响。

解读

在国内政企或金融客户上云面试中,考官常把 PSC(Private Service Connect)与“消费者端防火墙”并列提问,目的是验证候选人是否理解双向安全边界——不仅云侧要放行,客户侧防火墙同样决定 TCP 握手能否成功。回答必须点出“消费者端防火墙”指的是客户 VPC 内由云厂商或客户自己管理的防火墙规则(VPC 防火墙、本地 IDC 防火墙、云企业网/专线侧 ACL),并说明它对 PSC 终端节点 IP 与端口的出向/入向控制如何直接决定 Cloud SQL 实例的私有连接可用性

知识点

  1. PSC 消费者端架构:用户在自己 VPC 创建转发规则 + 私有服务连接地址,指向 Google 发布的服务连接 URI(如 servicenetworking.googleapis.com)。
  2. 流量路径:客户端 → 消费者 VPC 子网 → 消费者端 PSC 转发规则 → Google 生产 VPC 的 PSC 服务端终端节点 → Cloud SQL 实例。
  3. 防火墙检查点:
    • 消费者 VPC 防火墙规则(ingress allow 与 egress allow)
    • 子网级 VPC 流日志可观测性
    • 对等互连/专线/云企业网侧 ACL(若消费者 VPC 与客户端不在同一账户)
  4. 关键端口:Cloud SQL 实例端口(MySQL 3306、PostgreSQL 5432、SQL Server 1433)以及PSC 转发规则前端端口(可自定义,但须与消费者防火墙匹配)。
  5. 国内合规差异:部分省份要求ICP 备案源地址不能出现在公网,因此 PSC 私网访问一旦因消费者防火墙被阻断,将直接触发业务合规告警,比公网 IP 被墙更严重。

答案

消费者端防火墙对 PSC 连接的影响体现在出向与入向双重策略

  1. 出向(egress):客户端所在子网的防火墙必须允许目的 IP 为 PSC 转发规则前端 IP、目的端口为 Cloud SQL 实例端口的 TCP 出向流量;若规则缺失,SYN 包在消费者 VPC 即被丢弃,表现为连接超时
  2. 入向(ingress):虽然 Cloud SQL 仅回包,但 Google 生产侧源 IP 属于预留地址块 35.199.192.0/19,消费者 VPC 防火墙仍需对该网段入向放行对应端口,否则返回的 SYN-ACK 被丢弃,表现为半开连接或 RST
  3. 优先级与标签:国内多账户场景下,防火墙规则常绑定标签服务账户;若客户端 VM 标签未命中 allow 规则,即使 CIDR 匹配也会阻断。
  4. MTU 与 TCP MSS(加分点):部分 IDC 防火墙默认 MTU 1500,而 PSC over VPC Peering 可能要求 1460;若防火墙未开启TCP MSS clamping,大报文分片被丢弃,会导致间歇性连接重置

总结:消费者端防火墙是 PSC 私网可达的第一跳闸口,规则未放行时 Cloud SQL 实例状态仍显示“已连接”,但业务侧完全无法建连,排障需优先检查消费者 VPC 的防火墙日志。

拓展思考

面试官可能追问:

  1. 如何在国内双栈(IPv4/IPv6)环境下验证防火墙是否放行了 PSC?——可答:在消费者 VM 使用tcpdump -nn icmp and host 35.199.192.1 先测路径 MTU,再telnet PSC_IP 3306,结合 VPC 流日志查看被防火墙拒绝的计数器。
  2. 如果客户要求零信任,是否还需要消费者防火墙?——需要,PSC 仅提供私网路由,零信任需叠加BeyondCorp Enterprise 或 IAM Conditions,但防火墙仍是网络层最小权限基线。