从需求反选掩码
选掩码的入口是需求侧的主机数:找最小的 k,使 2^k - 2 ≥ 需求,则掩码为 /32-k。需要 50 台时 2^6-2=62 满足,掩码是 /26;需要 130 台时 62 不够、126 不够,得选 /24 的 254。注意别用 2^k ≥ 需求 直接判断,64 台必须用 /25 而不是 /26。
工程上的再加一档
纯算数只保证装得下,工程上还要留余量:终端数会增长,随设备一起增加的还有打印机、AP 管理地址、临时测试机、故障切换占用的地址。常见做法是在算出的档位基础上再放大一档,例如当前 50 台选 /25(126)而不是 /26(62),代价是地址浪费,收益是后期不用重新编址。
基本信息
| 反选公式 | k 最小且 2^k - 2 ≥ 需求,掩码 = 32 - k |
|---|---|
| 点对点 | ≤2 时优先 /31(RFC 3021),兼容性不足退回 /30 |
| 余量口径 | 按需求再放大一档,或按可用数乘 0.8 反推 |
| 对齐要求 | 大块优先、起点按块大小对齐 |
主机数 → 掩码(含建议)
| 可用主机需求 | 最小掩码 | 可用数 | 建议 |
|---|---|---|---|
| ≤2(点对点) | /30 或 /31 | 2 | 路由器互联优先 /31,省一半地址 |
| ≤6 | /29 | 6 | 小型设备段 |
| ≤14 | /28 | 14 | 打印机、管理段 |
| ≤30 | /27 | 30 | 小型团队 |
| ≤62 | /26 | 62 | 科室或小部门 |
| ≤126 | /25 | 126 | 小型办公室 |
| ≤254 | /24 | 254 | 标准部门网 / 单 VLAN |
| ≤510 | /23 | 510 | 中型部门、成对 /24 |
| ≤1022 | /22 | 1022 | 小型园区 |
| ≤4094 | /20 | 4094 | 中型园区 |
典型使用场景
- 新部门上线时按终端数快速定网段与掩码
- 给服务器区预留段:按未来三年规模一次选定,避免二次搬迁
- 点对点链路选 /30 或 /31,评估平台兼容性
- 为访客 Wi-Fi 单独选段并可与内网区分开
- 考试题中判断某需求给出的掩码是否够用
反推函数与校验
反推函数与校验
def mask_for(need):
k = 2
while 2 ** k - 2 < need:
k += 1
return 32 - k, 2 ** k - 2
print(mask_for(50)) # (26, 62)
print(mask_for(64)) # (25, 126) 注意不是 /26
print(mask_for(130)) # (24, 254)选完掩码还要检查起点对齐:/26 的起点必须是 64 的倍数,/23 的第三段必须是偶数。在已有大网段里切块时,从低地址开始按降序(大需求在前)分配,能留下最大的连续空闲块。
只按「当前在线设备数」选档位是最常见的规划失误:一台 /26 装 62 台设备,实际可用往往要扣除网关、管理地址与保留,加上半年内的增长,很容易在现场出现「地址不够用」。