腾讯云 VPC 网络配置教程与指南:专有网络创建、子网规划、路由表与安全组配置

腾讯云 VPC 网络配置

腾讯云 VPC(Virtual Private Cloud,专有网络)是所有腾讯云计算资源的网络基础。CVM 云服务器、云数据库、负载均衡、容器实例,都必须运行在某个 VPC 的子网内。理解腾讯云 VPC 的设计逻辑,是在腾讯云上搭建任何生产架构的前提。

每个腾讯云账号在每个地域都有一个默认 VPC,新建 CVM 时如果不指定,就会使用这个默认 VPC。默认 VPC 适合快速测试,但不适合正式业务——默认 VPC 的 CIDR 是固定的,网段规划缺乏灵活性,且预置的安全组规则偏宽松。生产环境应该创建自定义 VPC,从网段规划开始做好隔离设计。

VPC 的核心概念

理解腾讯云 VPC 的四个核心组件,是后续配置的基础。

VPC(专有网络) 是地域级资源,一个 VPC 属于一个地域,不能跨地域。香港地域的 VPC 和新加坡地域的 VPC 是两个完全独立的网络,默认互不相通,需要通过云联网或对等连接才能互访。同一地域内的不同 VPC 同样默认完全隔离。每个 VPC 在创建时指定一个私网 CIDR 网段,CIDR 选定后不能修改,只能追加辅助 CIDR。

腾讯云 VPC 支持的私网 CIDR 范围:

  • 10.0.0.0/8,子网掩码范围 /16–/28
  • 172.16.0.0/12,子网掩码范围 /16–/28
  • 192.168.0.0/16,子网掩码范围 /16–/28

子网(Subnet) 是可用区级资源,每个子网属于一个可用区。CVM、数据库等云资源必须部署在某个子网内。一个 VPC 可以包含多个子网,不同子网分布在不同可用区,是实现跨可用区高可用的基础。子网的 CIDR 必须是所在 VPC CIDR 的子集,且同一 VPC 内的所有子网 CIDR 不能重叠。

路由表(Route Table) 控制子网的出流量走向。每个子网有且只有一个关联路由表,一个路由表可以关联多个子网。VPC 创建时自动生成默认路由表,保证 VPC 内部各子网之间的互通,这条默认路由不能删除。自定义路由表用于需要特殊路由策略的场景,例如让某个子网的流量通过 NAT 网关出公网,或者通过 VPN 网关访问本地 IDC。

安全组(Security Group) 是实例级别的有状态防火墙,控制 CVM 实例的入站和出站流量。安全组规则基于协议、端口和源/目标地址配置,有状态意味着如果入站方向允许某个连接,该连接的响应流量自动放行,不需要额外配置出站规则。一个 CVM 实例可以关联多个安全组,一个安全组可以被多个实例共用。

创建 VPC 和子网

规划网段

在创建 VPC 之前,需要先规划好网段。网段规划的核心原则是:同一 VPC 内各子网不重叠,不同 VPC 之间尽量不重叠(为将来的 VPC 对等连接预留空间)。

以一个典型的生产环境为例,部署在香港节点(ap-hongkong)的三层架构:

production-vpc:10.10.0.0/16(香港,生产环境)

  ├── web-subnet-a:10.10.1.0/24(可用区 a,Web 层)

  ├── web-subnet-b:10.10.2.0/24(可用区 b,Web 层)

  ├── app-subnet-a:10.10.3.0/24(可用区 a,应用层)

  ├── app-subnet-b:10.10.3.0/24(可用区 b,应用层)

  └── db-subnet:10.10.10.0/24(数据库层,单可用区)

staging-vpc:10.20.0.0/16(香港,测试环境)

Web 层和应用层各分布在两个可用区,实现跨可用区高可用;数据库层根据业务需求选择是否跨可用区;生产和测试环境使用不同 VPC 隔离,便于权限管理和成本追踪;两个 VPC 使用不同网段(10.10 和 10.20),为将来的 VPC 互联预留空间。

创建 VPC

在腾讯云控制台搜索「私有网络 VPC」,进入后点击「新建」:

# 通过腾讯云 CLI 创建 VPC

tccli vpc CreateVpc \

  –VpcName “production-vpc” \

  –CidrBlock “10.10.0.0/16” \

  –Region “ap-hongkong”

创建子网

VPC 创建完成后,在 VPC 详情页点击「新建子网」,为每个子网指定名称、可用区和 CIDR:

# 创建 Web 层子网(可用区 a)

tccli vpc CreateSubnet \

  –VpcId “vpc-xxxx” \

  –SubnetName “web-subnet-a” \

  –CidrBlock “10.10.1.0/24” \

  –Zone “ap-hongkong-2” \

  –Region “ap-hongkong”

子网创建时腾讯云会保留部分 IP 地址用于系统使用,一个 /24 子网(256 个地址)实际可分配约 251 个私网 IP,足够大多数业务场景使用。

关于在香港节点部署业务的延迟和配置选型,可以参考腾讯云香港服务器选择指南;关于 CVM 实例创建和配置的完整说明,可以参考腾讯云服务器开户的操作流程。

安全组配置

安全组是腾讯云网络安全配置中最常用的工具,每次新建 CVM 实例都会要求选择或创建安全组。

安全组的默认行为

腾讯云安全组的默认规则:入站方向拒绝所有流量,出站方向允许所有流量。这意味着新创建的 CVM 实例如果没有配置入站规则,外部无法访问任何端口,包括 SSH 的 22 端口。

创建安全组规则

为 Web 服务器创建安全组,允许 HTTP、HTTPS 入站和 SSH 管理入站(限制来源 IP):

# 创建安全组

tccli vpc CreateSecurityGroup \

  –GroupName “web-server-sg” \

  –GroupDescription “Security group for web servers” \

  –Region “ap-hongkong”

# 添加 HTTP 入站规则(允许所有 IP)

tccli vpc CreateSecurityGroupPolicies \

  –SecurityGroupId “sg-xxxx” \

  –SecurityGroupPolicySet ‘{

    “Ingress”: [

      {

        “Protocol”: “TCP”,

        “Port”: “80”,

        “CidrBlock”: “0.0.0.0/0”,

        “Action”: “ACCEPT”,

        “PolicyDescription”: “Allow HTTP”

      },

      {

        “Protocol”: “TCP”,

        “Port”: “443”,

        “CidrBlock”: “0.0.0.0/0”,

        “Action”: “ACCEPT”,

        “PolicyDescription”: “Allow HTTPS”

      },

      {

        “Protocol”: “TCP”,

        “Port”: “22”,

        “CidrBlock”: “YOUR_ADMIN_IP/32”,

        “Action”: “ACCEPT”,

        “PolicyDescription”: “Allow SSH from admin IP only”

      }

    ]

  }’ \

  –Region “ap-hongkong”

SSH 端口应限制来源 IP,不对 0.0.0.0/0 开放。将 22 端口对全网开放会让服务器立即暴露在来自全球的暴力破解扫描中,这是生产环境最常见的安全配置失误。

安全组的分层设计

生产环境建议按照服务器角色创建多个安全组,而不是所有实例共用一个宽泛的安全组:

Web 层安全组:允许 80、443 入站(来源 0.0.0.0/0),允许 22 入站(仅限管理员 IP)。

应用层安全组:只允许来自 Web 层子网(10.10.1.0/24 和 10.10.2.0/24)的特定端口入站,不允许公网直接访问应用层。

数据库层安全组:只允许来自应用层子网的数据库端口(MySQL 3306、Redis 6379 等)入站,完全禁止公网访问。

这种分层设计让每一层只接受来自上一层的流量,即使 Web 层服务器被攻破,攻击者也无法直接访问数据库,缩小了攻击的横向移动空间。

路由表配置

VPC 的默认路由表已经包含了保证内部互通的本地路由,大多数情况下不需要修改默认路由表。以下几类场景需要自定义路由规则:

私网子网的 CVM 访问公网:通过 NAT 网关路由出去(见下文 NAT 网关部分)。

访问本地 IDC:通过 VPN 网关或专线网关路由到本地数据中心,需要在路由表中添加目标地址为 IDC 网段、下一跳为 VPN/专线网关的路由条目。

精细化流量控制:将特定子网的流量强制经过安全审计设备,通过自定义路由表实现。

# 为私网子网创建自定义路由表,流量通过 NAT 网关出公网

tccli vpc CreateRouteTable \

  –VpcId “vpc-xxxx” \

  –RouteTableName “private-rt” \

  –Region “ap-hongkong”

# 添加默认路由(0.0.0.0/0 -> NAT 网关)

tccli vpc CreateRoutes \

  –RouteTableId “rtb-xxxx” \

  –Routes ‘[{

    “DestinationCidrBlock”: “0.0.0.0/0”,

    “GatewayType”: “NAT”,

    “GatewayId”: “nat-xxxx”,

    “RouteDescription”: “Route to NAT Gateway”

  }]’ \

  –Region “ap-hongkong”

NAT 网关:私网 CVM 访问公网

部署在私有子网(无公网 IP)的 CVM 实例,需要通过 NAT 网关才能主动访问互联网(下载软件包更新、调用外部 API 等)。NAT 网关是全托管服务,不需要维护任何 NAT 实例。

NAT 网关有两种类型:标准型 NAT 网关(推荐)支持安全组绑定,可以对 NAT 网关的出站流量做更精细的控制;传统型 NAT 网关功能相对简单,不支持安全组。

创建 NAT 网关时需要绑定至少一个弹性公网 IP(EIP)。私网 CVM 的出站流量到达 NAT 网关后,源地址从 CVM 的私网 IP 替换为 NAT 网关绑定的 EIP,对端看到的请求来源是 EIP 地址。

配置步骤:先创建 NAT 网关并绑定 EIP,再在需要出公网的私有子网的路由表中添加一条默认路由(0.0.0.0/0 → NAT 网关),该子网内的 CVM 即可通过 NAT 网关访问公网,无需单独配置每台 CVM。

注意事项: 腾讯云 VPC 对等连接的对端资源不能使用本端 NAT 网关访问互联网。如果两个 VPC 建立了对等连接,VPC-B 的实例不能通过 VPC-A 的 NAT 网关出公网,需要在 VPC-B 内单独配置 NAT 网关。

VPC 互联:对等连接与云联网

对等连接

对等连接(Peering Connection)用于连接两个 VPC,建立后两个 VPC 内的实例可以通过私网 IP 互访,不经过公网。对等连接支持同地域和跨地域两种模式,但需要满足两个前提:两个 VPC 的 CIDR 不能重叠,且需要在两端的路由表中分别添加指向对方网段的路由条目。

对等连接是点对点的,不具备传递性——VPC-A 和 VPC-B 对等、VPC-B 和 VPC-C 对等,但 VPC-A 和 VPC-C 之间没有连通性,需要单独建立 A-C 的对等连接。

云联网

云联网(CCN,Cloud Connect Network)是腾讯云的多 VPC 互联产品,相当于 AWS Transit Gateway 的功能定位。多个 VPC 加入同一个云联网后,所有 VPC 之间自动互通,不需要为每对 VPC 单独建立对等连接,网络拓扑大幅简化。

云联网支持跨地域互联,香港 VPC 和新加坡 VPC 加入同一云联网后可以通过腾讯云内部骨干网互通,延迟低于公网传输。对于需要在多个亚太节点部署的全球化业务,云联网是实现统一内网互通的标准方案。

弹性公网 IP

弹性公网 IP(EIP)是独立于 CVM 实例存在的公网 IP 地址,可以绑定到 CVM 实例,也可以从实例解绑后保留或绑定到其他实例。普通公网 IP 与实例生命周期绑定,实例终止后 IP 释放;EIP 则由账号持有,可以反复使用。

EIP 在绑定实例时不产生持有费,解绑后处于闲置状态时按小时收费(约 ¥0.20/小时),因此不使用的 EIP 应及时释放,避免产生不必要的闲置费用。

在高可用架构中,EIP 的价值体现在故障转移场景:主实例宕机时,将 EIP 解绑并重新绑定到备用实例,整个切换过程对外部用户透明,公网 IP 地址不变,DNS 无需更新。

账号开通与代理充值

配置腾讯云 VPC 需要有效的腾讯云国际版账号,VPC 本身不收费,费用来自 VPC 内部署的 CVM、数据库、NAT 网关、EIP 等资源。通过 腾讯云账号出售 渠道获取的高权重账号,1 分钟交付,免实名免绑卡,可以直接用于生产环境的 VPC 和 CVM 配置。

对于月均腾讯云消耗在 $200 以上的团队,通过 腾讯云充值赠送账户 充值可以获得赠金返点($100 到账 $110,$500 到账 $600,$1000 到账 $1250),赠金适用于 CVM、NAT 网关、EIP 和所有关联资源费用,付款支持 USDT 和对公转账。

滚动至顶部