Network Planning

公司网络规划指南 #

本文介绍如何为公司规划网络地址,涵盖 RFC 1918 私有地址(A/B/C 类网段)的划分原则,以及在阿里云 VPC 上的网段分配实践。


RFC 1918 私有地址空间 #

RFC 1918 定义了三段可在内部网络自由使用、不会在公网上路由的 IPv4 地址,对应传统的 A/B/C 类私有网段:

类别CIDR 表示地址范围可用主机数典型用途
A 类10.0.0.0/810.0.0.0 ~ 10.255.255.255~1677 万大型企业内网、数据中心、云 VPC
B 类172.16.0.0/12172.16.0.0 ~ 172.31.255.255~104 万中型企业、分支机构
C 类192.168.0.0/16192.168.0.0 ~ 192.168.255.255~6.5 万小型办公、家庭网络、测试环境

注意100.64.0.0/10 为运营商级 NAT(CGNAT)地址段,阿里云等云平台保留使用,不可用于 VPC 网段


公司网络规划原则 #

1. 分层分区域 #

功能 / 安全等级划分独立子网,便于 ACL 管控和故障隔离:

公司整体网络
├── 办公网(员工终端、Wi-Fi、打印机)
├── 生产网(服务器、数据库、中间件)
├── DMZ(对外服务:Web、API、邮件)
├── 管理网(堡垒机、监控、日志)
├── NAT 中转网(跨网互通、SNAT/DNAT 网关)
└── 云上网(阿里云 VPC 资源)

2. 预留扩展空间 #

  • 每个区域只分配当前需求的 2~4 倍 地址空间
  • 不同区域之间保留未分配的空白网段,方便未来插入新区域
  • 子网掩码统一使用 /24(254 台主机)作为最小分配单元,便于管理

3. 避免地址冲突 #

  • 与上下游合作伙伴、收购公司的网段提前对齐
  • VPN / 专线互联前务必确认双方 CIDR 无重叠
  • 建立公司级 IP 地址管理表(IPAM)

示例:中型公司网络地址规划 #

以下以一家拥有 总部 + 2 个分支机构 + 阿里云 的公司为例:

总体分配(使用 A 类 10.0.0.0/8) #

区域CIDR说明
总部办公网10.1.0.0/16员工终端、Wi-Fi、IP 电话
分支机构 A10.2.0.0/16分支 A 办公 + 本地服务
分支机构 B10.3.0.0/16分支 B 办公 + 本地服务
生产数据中心10.10.0.0/16自建 IDC 服务器
DMZ10.20.0.0/16对外暴露的服务
管理网10.30.0.0/16堡垒机、监控、日志平台
NAT 中转网10.50.0.0/16跨网互通网关、SNAT/DNAT(见下方详述)
阿里云 VPC10.96.0.0/12云上所有资源(含多 VPC,见下方细化)
预留扩展10.4.0.0/16 ~ 10.9.0.0/16未来新分支或业务线
预留扩展10.11.0.0/16 ~ 10.19.0.0/16未来自建 IDC 扩容
预留扩展10.31.0.0/16 ~ 10.49.0.0/16管理网 / NAT 网段扩容
预留扩展10.112.0.0/16 ~ 10.127.0.0/16云上 VPC 后续扩容(紧邻 10.96.0.0/12)

阿里云 VPC 内部细化(10.96.0.0/12) #

阿里云建议使用 RFC 1918 私有地址作为 VPC 主 IPv4 网段,掩码推荐 /16 ~ /2810.96.0.0/12 覆盖 10.96.0.0 ~ 10.111.255.255,共 16 个 /16 块,可在其下规划多个独立 VPC:

多 VPC 分配 #

VPC 名称CIDR地域用途
prod-vpc10.100.0.0/16华东 1(杭州)生产环境
staging-vpc10.101.0.0/16华东 1(杭州)预发布环境
dev-vpc10.102.0.0/16华东 2(上海)开发环境
test-vpc10.103.0.0/16华东 2(上海)测试环境
dr-vpc10.111.0.0/16华北 2(北京)灾备环境
预留扩展10.96.0.0/16 ~ 10.99.0.0/16未来新增 VPC(4 块)
预留扩展10.104.0.0/16 ~ 10.110.0.0/16未来新增 VPC(7 块)

prod-vpc 内部 VSwitch 细化(10.100.0.0/16) #

可用区 / 用途VSwitch CIDRIP 数量说明
K8s Pod 网络10.100.0.0/1732,768ACK 集群 Pod CIDR(4,096 × 8)
K8s Service 网络10.100.128.0/204,096ACK 集群 Service CIDR
可用区 A - 应用层10.100.144.0/204,096ECS / 容器 Pod
可用区 A - 数据库层10.100.160.0/204,096RDS / Redis / MongoDB
可用区 B - 应用层10.100.176.0/204,096多可用区容灾
可用区 B - 数据库层10.100.192.0/204,096多可用区容灾
NAT 网关专用10.100.208.0/204,096增强型 NAT 网关 VSwitch
预留扩展10.100.224.0/20 ~ 10.100.240.0/204,096 × 2未来新增 VSwitch

提示:阿里云 ACK(容器服务 Kubernetes 版)的 Pod CIDR 和 Service CIDR 需要与 VPC 网段不冲突,规划时务必预留足够空间。


NAT 中转网段规划(跨网互通) #

当公司存在多个独立网络(总部、分支、IDC、云上 VPC)时,各网段之间往往不能直接路由(地址可能重叠、安全策略要求隔离)。此时需要规划一个专用的 NAT 中转网段,部署 SNAT/DNAT 网关来实现可控的跨网通信。

为什么需要 NAT 中转网段 #

问题NAT 中转如何解决
两个网络 CIDR 重叠(如分支与收购公司都用 192.168.1.0/24通过 DNAT 做地址映射,双方无需改网
安全策略要求网络隔离(办公网不能直连生产网)NAT 网关做流量代理 + ACL 精细控制可访问的端口
分支/IDC 需要访问阿里云 VPC 但不想暴露真实网段SNAT 将源地址统一转换为 NAT 网段地址
多个 VPC 之间部分网段冲突无法走 CEN 直连NAT 网关做双向地址转换,绕过路由冲突

网段分配 #

在总体分配中已预留 10.50.0.0/16 作为 NAT 中转网段,内部按用途细分为多个 /24

子网CIDR用途
nat-office10.50.1.0/24办公网 → 云 / IDC 的 SNAT 出口
nat-branch-a10.50.2.0/24分支 A 跨网访问的 SNAT 出口
nat-branch-b10.50.3.0/24分支 B 跨网访问的 SNAT 出口
nat-idc10.50.4.0/24生产 IDC → 云 VPC 的 SNAT 出口
nat-cloud10.50.5.0/24云 VPC → IDC / 分支的 SNAT 出口
nat-dnat10.50.10.0/24DNAT 映射地址池(对外暴露内部服务)
预留扩展10.50.6.0/24 ~ 10.50.9.0/24未来新增来源网络的 NAT 出口
预留扩展10.50.11.0/24 ~ 10.50.255.0/24大规模扩容

网络拓扑示意 #

                    ┌──────────────────────────┐
                    │    NAT 中转网段           │
                    │    10.50.0.0/16          │
                    │                          │
                    │  ┌──────────────────┐    │
  办公网            │  │   NAT 网关集群    │    │          阿里云 VPC
  10.1.0.0/16 ───SNAT──▶  (HA 主备)     ◀──SNAT─── 10.96.0.0/12
                    │  │                  │    │
  分支 A            │  │  SNAT: 源地址转换 │    │          生产 IDC
  10.2.0.0/16 ───SNAT──▶  DNAT: 目的转换 ◀──SNAT─── 10.10.0.0/16
                    │  │                  │    │
  分支 B            │  │  ACL: 端口级管控  │    │          DMZ
  10.3.0.0/16 ───SNAT──▶  日志: 全量审计 ◀──SNAT─── 10.20.0.0/16
                    │  └──────────────────┘    │
                    └──────────────────────────┘

NAT 类型与用途 #

NAT 类型方向场景示例
SNAT(源地址转换)内 → 外内部网络主动访问云上资源或 IDC办公网 10.1.x.x 访问 VPC 10.96.x.x 时,源 IP 转换为 10.50.1.x
DNAT(目的地址转换)外 → 内云上或分支访问内部特定服务分支访问 10.50.10.100:3306 → 映射到 IDC 内 10.10.5.20:3306

阿里云上的 NAT 网关配置 #

在阿里云 VPC 中使用 NAT 网关实现与 NAT 中转网段的对接:

配置项说明
NAT 网关类型推荐增强型 NAT 网关(支持更大并发和弹性)
所属 VSwitch在 VPC 内创建专用 VSwitch 10.100.208.0/20 用于 NAT 网关
EIP 绑定如需出公网,绑定 EIP;仅跨网互通无需 EIP
SNAT 规则源网段填写对端 CIDR(如 10.1.0.0/16),目标为 VPC 内资源
DNAT 规则外部访问入口,映射到 VPC 内 ECS/RDS 的私网 IP
路由添加回程路由,目标为 NAT 中转网段 10.50.0.0/16,下一跳为专线/VPN 网关

iptables NAT 示例(自建网关) #

如果在 Linux 服务器上自建 NAT 网关,核心规则如下:

# 开启内核转发
echo 1 > /proc/sys/net/ipv4/ip_forward

# SNAT:办公网 (10.1.0.0/16) 访问阿里云 VPC (10.96.0.0/12)
# 出站时将源地址转换为 NAT 网段地址
iptables -t nat -A POSTROUTING -s 10.1.0.0/16 -d 10.96.0.0/12 \
  -j SNAT --to-source 10.50.1.1

# DNAT:将 NAT 地址的 3306 端口映射到 IDC 内部数据库
iptables -t nat -A PREROUTING -d 10.50.10.100 -p tcp --dport 3306 \
  -j DNAT --to-destination 10.10.5.20:3306

# 允许转发流量
iptables -A FORWARD -s 10.1.0.0/16 -d 10.96.0.0/12 -j ACCEPT
iptables -A FORWARD -d 10.10.5.20 -p tcp --dport 3306 -j ACCEPT

NAT 中转网段规划要点 #

  1. 独立网段:NAT 中转网段必须与所有业务网段不重叠,避免路由歧义
  2. 高可用:NAT 网关至少部署主备两台,或使用阿里云 NAT 网关(自带 HA)
  3. ACL 精细管控:只开放必要的端口和协议,禁止全放通
  4. 全量日志:所有 NAT 会话记录应接入日志平台,便于审计和排障
  5. 固定映射:DNAT 映射关系应固定并文档化,避免动态分配导致混乱
  6. 回程路由:确保目标网络有回到 NAT 网段的回程路由,否则回包无法到达

B 类 / C 类网段的适用场景 #

并非所有场景都适合 A 类大段,以下为 B/C 类的典型使用场景:

B 类(172.16.0.0/12) #

场景示例 CIDR说明
中型公司主网172.16.0.0/16总部 + 少量分支,地址需求适中
阿里云 VPC172.16.0.0/16与本地 10.x 不冲突,适合专线互联
Docker bridge172.17.0.0/16Docker 默认 bridge 网络

C 类(192.168.0.0/16) #

场景示例 CIDR说明
小型办公室192.168.1.0/24最常见的小型局域网
家庭 / SOHO192.168.0.0/24路由器默认网段
开发测试环境192.168.100.0/24本地开发、CI/CD Runner

建议:公司网络优先使用 10.0.0.0/8,地址空间充裕且易于划分子网;192.168.x.x 留给小型办公或测试环境。


阿里云 VPC 网段注意事项 #

  1. 三个可选标准网段10.0.0.0/8172.16.0.0/12192.168.0.0/16 及其子网
  2. 禁用的网段100.64.0.0/10(阿里云内部保留)、224.0.0.0/4(组播)
  3. VPC 互联:多个 VPC 通过 CEN(云企业网)或对等连接互通时,各 VPC 的 CIDR 不能重叠
  4. 混合云专线:本地 IDC 与阿里云 VPC 通过专线连接时,两端 CIDR 必须不同
  5. VPC 网段一旦创建不可修改,请在规划阶段慎重选择
  6. VSwitch 掩码:推荐 /24(254 IP),最小 /28(14 IP),最大不超过 VPC 掩码

多 VPC 规划示例 #

已在上方「阿里云 VPC 内部细化」中统一规划,各 VPC 均位于 10.96.0.0/12 内:

VPC 名称CIDR地域用途
prod-vpc10.96.0.0/16华东 1(杭州)生产环境
staging-vpc10.97.0.0/16华东 1(杭州)预发布环境
dev-vpc10.98.0.0/16华东 2(上海)开发环境
test-vpc10.99.0.0/16华东 2(上海)测试环境
dr-vpc10.111.0.0/16华北 2(北京)灾备环境

网络规划 Checklist #

  • 确定公司整体地址空间(A/B/C 类选择)
  • 按功能区域划分子网,列出 CIDR 分配表
  • 为每个区域预留 2~4 倍扩展空间
  • 确认与本地 IDC、合作伙伴、云 VPC 之间无地址冲突
  • 建立 IPAM(IP 地址管理)文档或系统
  • 阿里云 VPC 创建前确认网段(创建后不可修改)
  • 规划 NAT 中转网段,部署跨网互通网关
  • 确认所有跨网路径的回程路由正确
  • ACK 集群额外预留 Pod CIDR 和 Service CIDR
  • 记录所有分配并定期审计

Reference #

RFC 1918 - Address Allocation for Private Internets

阿里云 VPC 网络规划

阿里云 ACK 网络规划

RFC 6598 - Shared Address Space (100.64.0.0/10)

阿里云 NAT 网关