1. 企业网络与安全边界总览
在 Google Cloud 上构建企业网络,核心不是“把虚拟机连起来”,而是围绕一个 VPC 网络 建立可控的地址空间、可达路径与安全策略。理解 VPC、子网、防火墙、路由、混合连接与安全边界之间的整体关系,是后续所有实验和架构设计的基础。本节先建立全局视图,再搭建贯穿课程的实战环境。
一、整体关系:从地址到策略的六层结构
Google Cloud 的网络对象可以按“承载—寻址—放行—选路—互联—防护”六个层次理解:
- VPC 网络:全局资源,是地址空间与策略的容器,跨区域存在,但不直接承载流量。
- 子网:区域级资源,为资源提供 IP 地址段,是实例、转发规则、混合连接的落点。
- 防火墙规则:作用于 VPC 内的实例,按方向、优先级、源/目标、协议端口决定是否放行。
- 路由:决定数据包“往哪走”,包括系统生成路由、自定义静态路由和动态路由。
- 混合连接:Cloud VPN、Cloud Interconnect、Router 等把本地网络接入 VPC。
- 安全边界:Cloud Armor、VPC Service Controls、Private Service Connect、Cloud NAT 等构成对外与对内的防护面。
这六层不是并列的,而是有明确的依赖顺序:没有 VPC 就没有子网,没有子网就没有实例地址,没有路由就无法跨网段通信,没有防火墙规则流量就会被默认拒绝。下图给出它们之间的整体关系。
二、关键概念辨析
VPC 是全局的,子网是区域的。 一个 VPC 可以包含多个区域的子网,子网之间默认通过系统路由互通。这与传统数据中心“每个 VLAN 一个广播域”的模型不同,Google Cloud 的 VPC 更像一个跨区域的逻辑网络。
防火墙规则是“允许”语义,不是“拒绝”语义。 VPC 默认有一条隐含的 deny all ingress 和 allow all egress。你写的规则几乎都是“允许某类流量”,而不是“禁止某类流量”。要禁止,通常靠不写允许规则,或用优先级更高的拒绝规则覆盖。
路由决定“能不能到达”,防火墙决定“允不允许通过”。 两者缺一不可:有路由但没放行,包会被丢弃;有放行但没路由,包根本找不到下一跳。
三、实战环境搭建
本课程后续实验统一使用以下环境。建议在独立项目中操作,避免影响生产资源。
# 1. 设置项目与区域
gcloud config set project netsec-lab-01
gcloud config set compute/region asia-east1
gcloud config set compute/zone asia-east1-b
# 2. 创建自定义模式 VPC
gcloud compute networks create corp-vpc \
--subnet-mode=custom
# 3. 创建两个区域的子网
gcloud compute networks subnets create subnet-a \
--network=corp-vpc \
--region=asia-east1 \
--range=10.0.1.0/24
gcloud compute networks subnets create subnet-b \
--network=corp-vpc \
--region=us-central1 \
--range=10.0.2.0/24
# 4. 放行 IAP SSH 与内部 ICMP
gcloud compute firewall-rules create allow-iap-ssh \
--network=corp-vpc \
--direction=INGRESS \
--action=ALLOW \
--rules=tcp:22 \
--source-ranges=35.235.240.0/20
gcloud compute firewall-rules create allow-internal-icmp \
--network=corp-vpc \
--direction=INGRESS \
--action=ALLOW \
--rules=icmp \
--source-ranges=10.0.0.0/8
创建完成后,用以下命令验证环境是否符合预期:
gcloud compute networks subnets list --network=corp-vpc
gcloud compute firewall-rules list --filter="network:corp-vpc"
gcloud compute routes list --filter="network:corp-vpc"
预期结果:subnet-a 与 subnet-b 均处于 READY 状态;防火墙规则中能看到两条自定义规则,优先级均为 1000;路由表中除默认路由外,应出现两条子网路由,分别指向 10.0.1.0/24 和 10.0.2.0/24。
subnet-a 中创建一台实例,从该实例 ping subnet-b 中实例的内网 IP。若能通,说明子网路由与 ICMP 放行规则生效;若不通,优先检查防火墙规则的方向和源范围,而不是先怀疑路由。
四、安全边界的定位
安全边界不是单一产品,而是一组能力的组合:Cloud Armor 保护外部 HTTP(S) 负载均衡入口,VPC Service Controls 防止数据从受保护服务中渗出,Private Service Connect 让服务以私有方式暴露,Cloud NAT 控制出站访问。它们与 VPC 的关系是“叠加在 VPC 之上”,而不是替代 VPC 的防火墙与路由。