16 个 /16 的中段
172.16.0.0/12 覆盖 172.16.0.0 到 172.31.255.255,共 16 个连续的 /16、约 105 万个地址,可用 1048574 个。它是 RFC 1918 三段私网里居中的一段:比 10/8 小得多,又比 192.168/16 大 16 倍,适合中型网络与需要多段但不必上 10/8 的场景。
现实中的占用情况
这一段被大量工具与平台默认使用:Docker 默认网桥常取 172.17.0.0/16,部分云厂商的默认 VPC 示例段用 172.31.0.0/16,容器编排与沙箱工具也常在此挑段。企业规划时若决定用 172.16/12,最好先把 172.17、172.31 等已知默认段划出来避开,能省掉后续大量冲突排查。
基本信息
| 地址段 | 172.16.0.0/12 |
|---|---|
| 范围 | 172.16.0.0 – 172.31.255.255 |
| 总量 | 16 个 /16 = 1048576 个地址 |
| 可用地址 | 1048574 |
| 常见占位 | Docker 172.17.0.0/16、部分云默认 VPC 172.31.0.0/16 |
| 规范依据 | RFC 1918 |
典型使用场景
- 中型企业内网:按 /16 分区域、按 /24 分 VLAN,容量与可读性兼顾
- 研发与测试环境:与生产办公网分开编址,避免误连与广播干扰
- 容器与虚拟化平台:在避开默认段后规划 Pod 与节点网段
- 多站点互联:给每个分支一个 /16,站点间按需汇总
- 作为 10/8 的补充:某些历史资产已占用 10.x 时用 172.16/12 兜住新增
查看 Docker 默认网桥段
查看 Docker 默认网桥段
docker network inspect bridge --format '{{range .IPAM.Config}}{{.Subnet}}{{end}}'
# 172.17.0.0/16
ip route | grep 172.17 # 宿主机上通常已存在该路由
# 规划内网时避开此段,可避免容器与内网互访异常16 个 /16 的分布
| 第 2 段 | 对应 /16 | 常见用途 |
|---|---|---|
| 172.16 | 172.16.0.0/16 | 私网起始段,常作核心或预留 |
| 172.17 | 172.17.0.0/16 | Docker 默认网桥,建议避开 |
| 172.18–172.30 | 各一个 /16 | 业务、分支、测试等可自由规划 |
| 172.31 | 172.31.0.0/16 | 部分云平台默认 VPC 段 |
判断一个地址是否在私网范围内的快速方法:第二段在 16 到 31 之间(含)且前缀是 /12 才是本段;第二段是 15 或 32 就已经越界,与 172.16/12 无关。
与 10/8 的取舍
172.16/12 的优势是「不像 192.168 那么大众、又不像 10/8 那样容易被大企业或云平台整段占用」;劣势是总量只有 16 个 /16,站点多、容器大规模部署时可能吃紧。判断口径很简单:站点数量加容器网段需求超过十几个 /16 时,直接选 10/8;只做三五个区域的中型网络,172.16/12 更省心。
Docker 网桥段与办公网或 VPN 对端同段时,容器内访问该内网地址会被本地 172.17 路由截走,表现为「容器里能连上但连错设备」,这类问题排查成本很高,规划期避开最划算。