对新手来说,VPC 的概念可能有点抽象——它不像 EC2 那样是“一台电脑”,也不像 S3 那样是“一个硬盘”。它更像是在云里为你划出的一块完全属于你的私人领地

今天这篇文章,就带你彻底搞懂 VPC 是什么、为什么需要它,然后手把手完成一次 VPC 基础配置。

什么是 Amazon VPC?

VPC 的全称是 Amazon Virtual Private Cloud(亚马逊虚拟私有云)。AWS 官方给它的定义是:在 AWS 云中逻辑隔离的虚拟网络,你可以在这个网络里启动 AWS 资源。

你可以把它想象成在 AWS 这个大型“写字楼”里,AWS 给你划出了一整层楼——钥匙只有你有,网络完全独立,你想怎么装修(配置)都可以。其他租户(AWS 的其他客户)进不来,也看不见你在里面做什么。

为什么需要 VPC?

AWS 的底层是多租户架构。如果没有 VPC 这种隔离机制,你创建的 EC2 实例和其他客户的实例就会混在一个大网里,这显然不安全。VPC 的核心价值就是网络隔离——每个 VPC 逻辑上完全独立于其他 VPC,确保你的数据和应用程序受到保护。

VPC 的三大核心组件

要理解 VPC,关键是搞清楚它的三个核心“零件”:子网、路由表和网关

1. 子网(Subnet):划分你的“领地”

子网是 VPC 内部的一个 IP 地址范围,你可以把 AWS 资源(比如 EC2 实例)部署到子网里。每个子网必须位于一个可用区(Availability Zone) 内,不能跨可用区。

子网主要分两种类型:

子网类型特点典型用途公有子网(Public Subnet)子网中的资源有公网 IP,可通过互联网网关与互联网直接通信Web 服务器、负载均衡器私有子网(Private Subnet)子网中的资源没有公网 IP,不能直接接收来自互联网的入站请求数据库服务器、应用服务器(后端)

💡 关键思路:把面向用户的资源放在公有子网,把核心数据资产放在私有子网,这就是 VPC 设计最基本的“安全分层”思路。

2. 路由表(Route Table):告诉流量往哪走

路由表里包含一组“路由规则”,决定了网络流量从哪来、往哪去。每个子网都必须关联一个路由表。

一个典型的路由表规则可能是这样的:

  • 目的地 10.0.0.0/16 → 目标 本地(VPC 内部通信)

  • 目的地 0.0.0.0/0(所有 IPv4 流量) → 目标 互联网网关(让流量能出 VPC 访问互联网)

3. 网关(Gateway):连接外部世界的“大门”

网关是 VPC 与外界通信的“出入口”:

网关类型作用互联网网关(Internet Gateway)让 VPC 中的资源能与互联网直接通信NAT 网关(NAT Gateway)让私有子网中的资源能主动访问互联网(如下载更新包),但阻止来自互联网的主动入站连接虚拟私有网关(Virtual Private Gateway)用于通过 VPN 将 VPC 连接到你的本地数据中心

VPC 安全:安全组 vs 网络 ACL

VPC 提供了两层安全防护,可以结合起来使用,形成“纵深防御”。

安全组(Security Group):实例级别的“门禁”

  • 作用范围:实例级别——控制进出某个特定 EC2 实例的流量

  • 核心特点有状态——如果你允许了某个入站请求,那么对应的出站响应会自动被允许,无需单独配置出站规则

  • 规则类型:只支持 允许 规则

  • 一个实例可以关联多个安全组,取所有规则的并集

网络 ACL(Network ACL):子网级别的“安检”

  • 作用范围:子网级别——控制进出某个子网的所有流量

  • 核心特点无状态——入站和出站规则需要分别配置,即使允许了入站请求,出站响应也必须被明确允许

  • 规则类型:同时支持 允许拒绝 规则

  • 规则按编号升序评估,一旦匹配就立即执行,不再继续评估后面的规则

两者对比速览

对比维度安全组网络 ACL作用层级实例级别子网级别状态有状态(响应流量自动允许)无状态(响应流量需显式允许)规则类型仅允许规则允许规则 + 拒绝规则规则评估评估所有规则按编号顺序匹配,匹配即停止

💡 最佳实践:通常先用安全组控制实例级别的访问(比如允许 SSH 从你的 IP 连入),再考虑是否需要网络 ACL 增加一层子网级别的防护。

图文教程:创建一个带公有子网的 VPC

AWS 为每个区域都自动创建了一个 默认 VPC,它已经配置好了互联网网关、子网和路由表。在默认子网里启动的 EC2 实例默认就有公网 IP,可以直接访问互联网。

但如果想理解 VPC 的运作原理,最好的方式是从零创建一个 自定义 VPC

第一步:进入 VPC 控制台

登录 AWS 管理控制台,在顶部搜索框输入 “VPC” 并点击进入。

第二步:使用“VPC 向导”快速创建

在 VPC 控制台页面,点击 “创建 VPC” 按钮。你会看到两种创建方式:

  • VPC 及其他资源:自动创建 VPC、子网、路由表、互联网网关等全套资源

  • 仅 VPC:只创建 VPC 本身,其他组件手动配置

新手建议选择 “VPC 及其他资源”,让 AWS 帮你一键生成标准配置。

第三步:填写配置信息(以“带公有子网的 VPC”为例)

  1. 要创建的资源:选择 “VPC 及其他资源”

  2. 名称标签自动生成:可以保持默认

  3. IPv4 CIDR 块:输入 10.0.0.0/16。这个范围意味着 VPC 内最多可以有 65536 个 IP 地址

  4. IPv6 CIDR 块:选择 “无 IPv6 CIDR 块”(新手入门先聚焦 IPv4)

  5. 租期:保持默认的 “默认”

  6. 可用区数量:选择 1(学习阶段用一个可用区就够了)

  7. 公有子网数量:选择 1

  8. 私有子网数量:选择 0(先不创建私有子网,让结构更简单)

  9. NAT 网关:选择 “无”

第四步:检查并创建

确认配置信息无误后,点击 “创建 VPC” 按钮。几秒钟后,AWS 会帮你自动创建好以下资源:

  • VPC 本身(CIDR 为 10.0.0.0/16

  • 一个公有子网(比如 10.0.1.0/24

  • 一个互联网网关(已附加到 VPC)

  • 一个主路由表(包含一条指向互联网网关的默认路由)

  • 一个默认安全组

第五步:在 VPC 中启动一个 EC2 实例测试

  1. 进入 EC2 控制台,点击 “启动实例”

  2. “网络设置” 部分,VPC 选择你刚创建的 VPC,子网 选择那个公有子网

  3. 确保 “自动分配公有 IP”“启用”

  4. 配置安全组,添加入站规则:SSH(端口 22),来源为 “我的 IP”(仅允许你自己的 IP 访问)

  5. 完成其他配置后启动实例

如果能够通过 SSH 成功连接到这台 EC2 实例,说明你的 VPC 网络配置完全正确!

别忘了“打扫房间”

VPC 本身不收费,但你在 VPC 中启动的资源(EC2、NAT 网关等)会产生费用。测试完成后:

  1. 终止 在 VPC 中启动的所有 EC2 实例

  2. 在 VPC 控制台中 删除 你创建的 VPC(这会自动删除关联的子网、路由表和安全组)

  3. 如果创建了弹性 IP 或 NAT 网关,记得单独释放


VPC 是 AWS 网络架构的基石,几乎所有服务都运行在它之上。理解 VPC 的工作原理,就像拿到了 AWS 云上“建房子”的地基图纸——掌握了它,你才能在上面搭建安全、可靠的云上应用。