本节摘要:网络服务是云的"街道系统"——VPC 划出隔离的私有街区,子网把街区分成功能区,安全组管街区的门禁,负载均衡在路口分车流,DNS 做门牌登记,CDN 在城郊设缓存仓库。本节把这六个组件放进一张"云网络地图"里讲清各自职责,再给出一张典型 Web 架构的网络连接示例,让你面对 VPC、子网、安全组这类名词时不再发怵。
阅读完本节,你应当能够:
你在云上开了一台虚拟机,发现能上网,但谁也连不进来——因为你还没给它"安家"在一个可以被找到、可以设规则的网络里。云上的网络不是"通了就行",而是一整套层层嵌套的"街道系统",它的核心矛盾是:既要隔离(别人进不来),又要连通(该进来的人进得来)。
隔离与连通是一对需要精确配平的力。VPC 负责划出你的私有街区,子网把街区分为"对外开放区"和"核心内网区",安全组是每栋楼的门卫,负载均衡在街口分流,DNS 帮你把"门牌"翻译成"坐标",CDN 则让远处的访客先到城郊仓库取货,不用每次都进市中心。
一句话记住:网络服务的职责是"让该通的路通、该堵的门堵"。下面逐个组件展开。
VPC(Virtual Private Cloud)是在公有云里划出的一块逻辑隔离网络空间。你可以自定义它的网段(IP 范围)、路由表、网关,相当于在云厂商的大城市里圈了一块地,修了围栏,里面的一切网络配置由你做主。多租户之间通过 VPC 天然隔离——别人的 VPC 里的机器,默认连不进你的 VPC。
子网(Subnet) 是 VPC 内的一个 IP 网段,用来做功能分区:通常把面向用户的 Web 层放在"公有子网"(可以挂公网 IP、接负载均衡),把数据库、中间件放在"私有子网"(不直接暴露公网)。安全组(Security Group) 是状态化的虚拟防火墙,挂在计算实例上,控制进出的流量规则——放行哪些端口、哪些来源 IP。它像楼栋门卫:只认登记过的访客和允许的通道。
负载均衡(Load Balancer)把请求分发到后端的多台服务器上,解决两个问题:一是单点故障——一台 Web 服务器挂了,流量自动转给其他健康的机器;二是横向扩展——后端机器数量增加,分发逻辑不用改。常见分发策略包括轮询、加权、按最少连接数等。
负载均衡不是免费的午餐:它多一跳网络路径,可能增加几毫秒延迟;配置不当(比如没开健康检查)还会把流量发给已经挂掉的机器。但总体而言,它是高可用架构里性价比最高的组件之一。
DNS(Domain Name System) 把人类好记的域名翻译成机器用的 IP 地址——用户输入网站名,DNS 查询返回服务器 IP,浏览器才发请求。它是互联网的"门牌登记处"。CDN(Content Delivery Network) 把静态资源(图片、CSS、视频)缓存到分布全球的边缘节点,用户就近取货,大幅降低源站压力和用户等待时间。它本质是"把货搬到离买家最近的仓库"。
| 组件 | 类比 | 作用 | 典型产品 |
|---|---|---|---|
| VPC | 封闭小区 | 逻辑隔离网络空间 | AWS VPC、Azure VNet |
| 子网 | 小区分区 | 网段划分与功能分区 | 公有/私有子网 |
| 安全组 | 楼栋门卫 | 实例级防火墙 | Security Group |
| 负载均衡 | 路口交警 | 流量分发与故障转移 | ELB、ALB、NLB |
| DNS | 门牌登记处 | 域名→IP 解析 | Route 53、云解析 |
| CDN | 城郊仓库 | 就近缓存加速 | CloudFront、CDN 服务 |

⚠️ 常见坑:把所有机器放进"公有子网"且安全组全放行——等于把小区围墙拆了还让门卫放假。数据库、密钥这类核心资源必须留在私有子网,只对必要的来源放行端口。
💡 关键直觉:网络配置写的是"最小通路"——能不开的端口就不开,能不加的暴露就不暴露。云网络的安全感来自"拒绝优先",而不是"放行优先"。
网络服务不是"接上就行",每一步都有延迟代价。CDN 把静态内容推到用户附近,动态请求还是要走回源;负载均衡多一跳;跨可用区/跨地域的网络往返更慢。设计时要把"用户到服务"的物理距离画出来,再决定哪些层放 CDN、哪些层保持单一回源。判断标准就一句话:这笔流量值得为"新鲜度"付出多少延迟——静态资源可以缓存,实时数据不能。
不是。VPC 是云里的虚拟私有网络空间,VPN 是在公网上建立加密隧道,把你的本地网络"接进"云网络。通常的用法是:企业本地机房通过 VPN 或专线连进云上的 VPC,形成混合网络的连通基础(关联第 1.3 节混合云)。
安全组挂在实例级别,有状态(返回流量自动放行);网络 ACL(Network ACL)挂在子网级别,无状态(出站入站都要显式配置)。一般先配网络 ACL 做子网边界粗控,再用安全组做实例级细控,两层叠加形成纵深防御。
配置了健康检查就不会——负载均衡定期探测后端健康状态,把异常的机器摘出分发池。没配置健康检查,或者检查间隔过长,就可能把请求分给正在宕机的服务器。所以"健康检查"是负载均衡上线清单里最不该省的一项。
常见原因:本地 DNS 缓存未过期、权威服务器响应慢、CNAME 链过长。排查顺序通常是"换公共 DNS 试试 → 查解析链 → 查权威服务器"。云上也可以用托管 DNS 服务,自带缓存与负载均衡,省去自建维护。
标准 CDN 主要缓存静态内容;动态接口要"加速"通常需要另配智能路由、协议优化或边缘计算。现在不少 CDN 产品支持"动态加速",但效果取决于回源链路质量。原则是:能缓存则缓存,不能缓存则缩短路径、优化协议。
把本章的组件组装成一个可用的生产环境,比看表格更能理解它们之间的关系。假设你要上线一个电商网站的订单查询服务,从头开始配网络。
第一步,创建 VPC,规划网段。把 10.0.0.0/16 划给这个项目,其中 10.0.1.0/24 作为公有子网(跑 Web),10.0.2.0/24 作为私有子网(跑数据库)。这一步解决的是"街区围起来、分区划清楚"。
第二步,搭入口。申请域名,配置 DNS 解析,让订单查询的域名指向负载均衡器的地址;同时把静态页面、图片配置到 CDN。这一步解决"门牌登记"和"就近取货"。
第三步,建 Web 层。在公有子网里创建两台 Web 服务器,各自挂一个安全组,只放行 443 端口且来源限定为负载均衡;把这两台机器加到负载均衡的后端组,开启健康检查。这一步解决"门禁"和"分流"。
第四步,放数据库。在私有子网里创建数据库实例,它的安全组只放行来自 Web 层安全组的数据库端口流量——这意味着外界根本摸不到数据库,只有 Web 层能连。这一步是"纵深防御"最典型的落地。
第五步,检查连通与隔离。从外部 curl 域名确认能访问;再从 Web 服务器尝试连接数据库确认通路;再确认数据库没有公网 IP、外部无法直连。三层结构就完整了。
这套"入口(DNS/CDN)→ 分流(负载均衡)→ 应用(Web 层)→ 数据(私有子网)"的模式,是云上绝大多数 Web 应用的默认骨架。无论业务大小,骨架逻辑一致;差异只在于规模、冗余度和安全加固的深度。把这张骨架记在脑子里,再看任何云架构图都会轻松很多。
最后用一句话梳理网络服务提供的四层隔离,方便你建立纵深感:
第一层是 VPC 边界——把整个网络空间与其他租户隔开,这是"小区围墙";第二层是子网——在 VPC 内部再分区,这是"功能区划";第三层是安全组与网络 ACL——控制具体实例和子网间的流量,这是"门卫与巡逻";第四层是密钥与加密——就算流量进了内网,数据本身仍然不可读,这是"保险箱"。四层一起才构成完整防线,缺一层,其他层都能被绕开。
第 4 章会从安全视角重新走一遍这四层,这里先建立"网络不是一层墙,而是一组嵌套的闸门"的心智模型。
网络服务常被忽略的成本项是流量费。多数云厂商对"出网流量"收费(数据从云上往外走),而"入网流量"和云内流量通常免费或很便宜。CDN 流量、跨地域同步流量、公网 IP 的保有费,都会体现在账单上。一个小而实的提醒:把静态资源全部走 CDN,把大文件同步放在云内完成,把不必要的公网暴露收掉,能压掉不少网络账单。这一节到第 3.4 节成本管理之间,先留个印象——网络也是钱,且比存储更容易被忽略。
网络把机器连起来了,数据有了安放处——但"怎么把数据组织起来让应用高效读写"是另一门学问,下一节讲数据库服务。