什么是VPC虚拟私有云Virtual Private Cloud网络什么是 VPC虚拟私有云Virtual Private Cloud网络简单来说VPC 是在公共云如阿里云、AWS、腾讯云上构建的一个 logically isolated逻辑隔离的、属于用户自己的私有网络环境。你可以把它想象成在云厂商的大数据中心里为你划拨出一块完全独立的、专属于你的网络空间。在这个空间里你可以自由地定义IP地址范围、划分子网、配置路由表和设置网络网关就像管理你自己的传统数据中心网络一样。核心思想逻辑隔离 自定义网络。VPC 的核心组成部分一个典型的 VPC 环境由以下几个关键部分组成1.私有 IP 地址空间CIDR 块是什么当你创建一个 VPC 时你需要指定一个私有的 IP 地址范围。这通常使用 CIDR无类别域间路由表示法例如10.0.0.0/16。这意味着你的 VPC 内部最多可以有 65536 个 IP 地址从 10.0.0.0 到 10.0.255.255。常用范围通常使用 RFC 1918 定义的私有地址段10.0.0.0/810.0.0.0 - 10.255.255.255172.16.0.0/12172.16.0.0 - 172.31.255.255192.168.0.0/16192.168.0.0 - 192.168.255.255注意这个地址范围一旦选定就不能轻易更改。你需要确保它不会和你希望连接的其他网络如你的公司内网的 IP 地址范围重叠。2.子网是什么子网是 VPC 这个大网络内部的更小网段。通过将 VPC 划分为多个子网你可以更有效地管理和部署资源。划分依据通常子网会按照可用区来划分。例如在10.0.0.0/16的 VPC 中你可以在可用区 A创建一个子网10.0.1.0/24在可用区 B创建一个子网10.0.2.0/24。公网与私网子网公网子网子网中的路由表指向了互联网网关因此部署在此子网中的云服务器如ECS实例可以分配公网IP直接与互联网通信通常用于 Web 服务器、堡垒机。私网子网子网中的路由表没有指向互联网网关因此部署在此子网中的云服务器无法直接访问互联网通常用于数据库、后端应用服务器安全性更高。3.路由器与路由表是什么VPC 中有一个隐形的、分布式的虚拟路由器。它的职责是控制 VPC 内部子网之间、以及 VPC 与外部网络之间的数据包流向。路由表路由器的工作依据是路由表。每个子网都必须关联一个路由表可以多个子网共用同一个路由表。路由表中定义了一系列规则指明目的地址的流量应该从哪个下一跳出去。示例规则目的10.0.0.0/16下一跳local这是默认规则表示 VPC 内部通信目的0.0.0.0/0下一跳Internet Gateway igw-xxxx表示所有去往公网的流量都发往互联网网关目的192.168.1.0/24下一跳VPN Gateway vgw-xxxx表示去往公司内网的流量都发往 VPN 网关4.网关网关是 VPC 连接外部世界的出入口。常见的网关类型有互联网网关功能实现 VPC 内的云服务器与互联网的双向通信。它是 VPC 访问互联网的“大门”。特点它本身不提供 NAT网络地址转换功能通常需要配合弹性公网IP使用。一个 VPC 只能绑定一个互联网网关。NAT 网关功能专门为私网子网中的云服务器提供访问互联网的能力但阻止互联网主动访问这些服务器。它实现了源网络地址转换。场景数据库服务器需要下载软件包补丁但不希望被外界直接访问。你可以将它们放在私网子网通过 NAT 网关上网。VPN 网关 / 专线网关功能用于将你的 VPC 与你的本地数据中心公司内网通过加密通道或专线连接起来构建一个混合云环境。5.安全控制VPC 提供了两层安全保障实现精细化的访问控制安全组作用范围类似于一个“虚拟防火墙”工作在实例级别即云服务器级别。状态有状态的。如果你允许了某个请求出去那么该请求的响应流量会被自动允许无论入站规则如何。规则你可以定义允许哪些 IP、哪些协议TCP/UDP/ICMP访问哪些端口。网络 ACL作用范围工作在子网级别是子网的无状态防火墙。状态无状态的。意味着你必须明确设置入站规则和出站规则即使是对应请求的响应流量也需要单独设置规则。规则支持“允许”和“拒绝”规则并按规则编号从小到大依次执行。通常用于为整个子网设置一个粗粒度的安全屏障。VPC 是如何工作的让我们通过一个例子来看 VPC 如何协调工作场景你想部署一个三层架构的 Web 应用包括Web 服务器、应用服务器和数据库服务器。Web 服务器需要被公网访问而应用和数据库服务器则不能。创建 VPC创建一个 VPCCIDR 为10.0.0.0/16。创建子网在可用区 A 创建一个公网子网10.0.1.0/24。在可用区 B 创建一个私网子网10.0.2.0/24。创建互联网网关创建一个互联网网关并将其附加到 VPC 上。配置路由表公网路由表关联到公网子网10.0.1.0/24。添加一条路由0.0.0.0/0-Internet Gateway。私网路由表关联到私网子网10.0.2.0/24。初始时只有local路由。部署资源在公网子网中启动 Web 服务器并为其分配一个弹性公网IP。由于公网路由表的存在来自互联网的请求可以到达它它也能主动访问互联网。在私网子网中启动应用服务器和数据库服务器。它们没有公网IP且路由表没有指向互联网网关因此无法被公网直接访问。安全加固为 Web 服务器配置安全组只允许来自0.0.0.0/0的 80HTTP和 443HTTPS端口流量。为应用服务器配置安全组只允许来自 Web 服务器安全组的流量而不是某个 IP。为数据库服务器配置安全组只允许来自应用服务器安全组的流量例如 MySQL 的 3306 端口。可选让私网服务器上网如果应用服务器需要下载更新你可以创建一个 NAT 网关放在公网子网中然后在私网路由表中添加一条路由0.0.0.0/0-NAT Gateway。这样应用服务器就能通过 NAT 网关访问互联网下载补丁但外界依然无法主动访问它。VPC 与传统网络的优势对比特性传统数据中心网络云上 VPC建设周期需要采购硬件路由器、交换机、防火墙布线配置周期长。分钟级创建完全软件定义即时可用。可扩展性受限于物理设备和机房的规模扩展需要再次采购。弹性伸缩理论上可以无限扩展通过子网划分。运维成本需要专业的网络工程师维护硬件设备处理故障。运维简单底层硬件由云厂商负责用户只需进行软件层面的配置。高可用性需要自行设计冗余方案双机热备等成本高且复杂。原生高可用子网可以跨可用区NAT网关、VPN网关等组件本身是云厂商托管的、高可用的。灵活性修改网络架构如调整路由复杂风险高。高度灵活可以随时修改路由表、安全组等配置即时生效。安全性物理隔离安全性高但边界防护依赖硬件防火墙。多租户隔离逻辑隔离 软件定义的安全组/NACL提供更精细化的安全策略。不同云厂商的 VPC 差异虽然核心概念一致但不同云厂商的实现和命名略有不同阿里云专有网络 VPC。概念与本文基本一致。主要组件包括 VPC、交换机子网、路由表、NAT 网关、VPN 网关、安全组等。AWSAmazon Virtual Private Cloud VPC。概念相同。主要组件包括 VPC、Subnet、Route Table、Internet Gateway、NAT Gateway、Security Group、Network ACL。腾讯云私有网络 VPC。概念相同。主要组件包括私有网络、子网、路由表、公网网关、NAT 网关、VPN 连接、安全组等。总结VPC 是云计算的网络基础。它通过软件定义网络技术将物理网络虚拟化为用户提供了一个逻辑隔离的、可自定义的、安全的网络环境。理解 VPC 的核心在于隔离性你的 VPC 和其他用户的 VPC 是天然隔离的。可控性你可以完全控制你的网络环境从 IP 范围到路由策略。分层安全结合子网、路由、安全组和网络 ACL构建纵深防御体系。混合云连接它是连接云上资源和本地数据中心构建混合云的基石。掌握了 VPC你就掌握了在云上构建复杂、安全、高可用应用系统的第一步。