1.4 为什么掩码被限制到255,改成别的可以吗?
这是一个非常棒的思考!很多人配置网络时只是机械地输入 255.255.255.0,却很少去想“为什么”。
答案其实藏在二进制里。
1. 为什么是 255?
在 IPv4 中,子网掩码(Subnet Mask)和 IP 地址一样,都是 32位 的二进制数,被分为 4 组(每组 8 位)。
数字 255 在二进制中表示为: 11111111
这就是 8 位二进制能表示的最大值。 所以,当你看到 255.255.255.0,在机器眼里其实是: 11111111.11111111.11111111.00000000
2. 核心规则:连续的 "1"
子网掩码有一个铁律(尤其在现代 CIDR 标准下):所有的 "1" 必须连续出现在左边,所有的 "0" 必须连续出现在右边。
- "1" 代表网络位(Network Bit):你要找的人住哪个小区。
- "0" 代表主机位(Host Bit):你要找的人住几号楼。
因为掩码的作用就是从左到右划清界限,告诉设备“从这里切一刀,左边是网络号,右边是主机号”。你不能说“第一位是网络,第二位是主机,第三位又是网络”,这样路由器会疯掉。
💡 图示:掩码如何切割 IP (以 /24 为例)
🔍 点击查看更多切割示例 (/8, /16, /27)
示例 2:/16 掩码 (大型网络)
示例 3:/27 掩码 (子网划分 - 最难理解的部分)
*注:/27 意味着借用了第4个字节的3位作为网络位,导致这把“剪刀”切在了字节的内部。
3. 极速心算技巧:“跨度法” (Magic Number)
在考场或现场排障时,我们没时间画二进制图。这里教你一招**“秒算子网”**的绝技(笔记中的精华)。
核心公式: $$ \text{跨度 (Span)} = 2^{(32 - \text{CIDR})} $$ (或者:256 - 最后一个非0的掩码值)
举个栗子:/26
- 算跨度:$32 - 26 = 6$。$2^6 = \mathbf{64}$。
- 所以,每个子网的大小(跨度)是 64。
- 列子网:从 0 开始加 64。
- 子网 1: .0
- 子网 2: .64
- 子网 3: .128
- 子网 4: .192
- (.256 超过了,结束)
举个栗子:/27
- 算跨度:$32 - 27 = 5$。$2^5 = \mathbf{32}$。
- 列子网:0, 32, 64, 96, 128, 160...
这就完了? 对!算出网络号后:
- 广播地址 = 下一个网络号 - 1
- 可用 IP = 网络号+1 ~ 广播地址-1
比如 /26 的第一个子网:
- 网络号:.0
- 下一个是 .64,所以广播是 .63
- 可用 IP:.1 ~ .62
4. 改成别的可以吗?
可以,但必须符合“连续的 1”的规则。
由于每组只有 8 位,符合规则的十进制数只有以下 9 种:
| 十进制 | 二进制 | 备注 |
|---|---|---|
| 255 | 11111111 | 这一段全是网络位 |
| 254 | 11111110 | 对应 /31 掩码 |
| 252 | 11111100 | 对应 /30 掩码 |
| 248 | 11111000 | 对应 /29 掩码 |
| 240 | 11110000 | |
| 224 | 11100000 | |
| 192 | 11000000 | |
| 128 | 10000000 | |
| 0 | 00000000 | 这一段全是主机位 |
如果我强行填一个 "253" 会怎样?
253 的二进制是 11111101。 中间断了一个 "0",这违反了“连续性”规则。在 Windows 或 Linux 上配置 IP 时,如果你输入 255.255.253.0,系统会直接报错:“输入的子网掩码无效”。
总结
掩码被限制到 255,是因为 255 代表了二进制的“满格”。 改成别的数字是可以的,前提是这个数字转换成二进制后,必须能和前面的位连成一串连续的 "1"。
附录:所有合法的子网掩码速查表
🔍 点击展开查看完整掩码列表 (CIDR /32 ~ /0)
| CIDR | 子网掩码 (Decimal) | 主机数 (IP总数 - 2) | 常见用途 |
|---|---|---|---|
| /32 | 255.255.255.255 | 1 (Host) | 特定主机路由 |
| /31 | 255.255.255.254 | 2 (P2P) | 点对点链路 (无需广播) |
| /30 | 255.255.255.252 | 2 | 传统点对点链路 |
| /29 | 255.255.255.248 | 6 | 小型互联 IP 段 |
| /28 | 255.255.255.240 | 14 | 部门级子网 |
| /27 | 255.255.255.224 | 30 | |
| /26 | 255.255.255.192 | 62 | |
| /25 | 255.255.255.128 | 126 | |
| /24 | 255.255.255.0 | 254 | 最常见的局域网掩码 |
| /23 | 255.255.254.0 | 510 | 两个 /24 聚合 |
| /22 | 255.255.252.0 | 1,022 | |
| /21 | 255.255.248.0 | 2,046 | |
| /20 | 255.255.240.0 | 4,094 | |
| /19 | 255.255.224.0 | 8,190 | |
| /18 | 255.255.192.0 | 16,382 | |
| /17 | 255.255.128.0 | 32,766 | |
| /16 | 255.255.0.0 | 65,534 | 大型园区网标准 |
| /15 | 255.254.0.0 | 131,070 | |
| /14 | 255.252.0.0 | 262,142 | |
| /13 | 255.248.0.0 | 524,286 | |
| /12 | 255.240.0.0 | 1,048,574 | |
| /11 | 255.224.0.0 | 2,097,150 | |
| /10 | 255.192.0.0 | 4,194,302 | 运营商级 NAT (100.64.0.0/10) |
| /9 | 255.128.0.0 | 8,388,606 | |
| /8 | 255.0.0.0 | 16,777,214 | 传统 A 类网络 |
| /7 | 254.0.0.0 | 33,554,430 | |
| /6 | 252.0.0.0 | 67,108,862 | |
| /5 | 248.0.0.0 | 134,217,726 | |
| /4 | 240.0.0.0 | 268,435,454 | 组播 (224.0.0.0/4) |
| /3 | 224.0.0.0 | 536,870,910 | |
| /2 | 192.0.0.0 | 1,073,741,822 | |
| /1 | 128.0.0.0 | 2,147,483,646 | |
| /0 | 0.0.0.0 | 4,294,967,294 | 默认路由 (0.0.0.0/0) |
🔍 点击展开:以 192.168.31.0 为例,不同掩码下的网络范围
假设我们的 IP 地址固定为 192.168.31.0,当我们修改子网掩码长度时,它所属的实际网络范围会发生如下变化:
| CIDR | 实际网络地址 | 可用 IP 范围 (Start - End) | 广播地址 | 说明 |
|---|---|---|---|---|
| /32 | 192.168.31.0 | 仅 192.168.31.0 (单机) | - | 仅指这一台设备 |
| /30 | 192.168.31.0 | 192.168.31.1 - 192.168.31.2 | 192.168.31.3 | 只有2个可用 |
| /29 | 192.168.31.0 | 192.168.31.1 - 192.168.31.6 | 192.168.31.7 | |
| /28 | 192.168.31.0 | 192.168.31.1 - 192.168.31.14 | 192.168.31.15 | |
| /27 | 192.168.31.0 | 192.168.31.1 - 192.168.31.30 | 192.168.31.31 | |
| /26 | 192.168.31.0 | 192.168.31.1 - 192.168.31.62 | 192.168.31.63 | |
| /25 | 192.168.31.0 | 192.168.31.1 - 192.168.31.126 | 192.168.31.127 | |
| /24 | 192.168.31.0 | 192.168.31.1 - 192.168.31.254 | 192.168.31.255 | 标准家庭/小米路由默认 |
| /23 | 192.168.30.0 | 192.168.30.1 - 192.168.31.254 | 192.168.31.255 | 此时 31.0 位于后半段 |
| /22 | 192.168.28.0 | 192.168.28.1 - 192.168.31.254 | 192.168.31.255 | 涵盖 28, 29, 30, 31 |
| /21 | 192.168.24.0 | 192.168.24.1 - 192.168.31.254 | 192.168.31.255 | 涵盖 24 ~ 31 |
| /20 | 192.168.16.0 | 192.168.16.1 - 192.168.31.254 | 192.168.31.255 | 涵盖 16 ~ 31 |
| /19 | 192.168.0.0 | 192.168.0.1 - 192.168.31.254 | 192.168.31.255 | 涵盖 0 ~ 31 |
| /18 | 192.168.0.0 | 192.168.0.1 - 192.168.63.254 | 192.168.63.255 | 涵盖 0 ~ 63 |
| /16 | 192.168.0.0 | 192.168.0.1 - 192.168.255.254 | 192.168.255.255 | 完整的 192.168.x.x |
注意:当掩码小于 /24 (例如 /23, /22...) 时,
192.168.31.0这个 IP 本身可能就不再是“网络地址”了,它只是大网段中间的一个普通 IP 地址(甚至是可用地址)。例如在 /23 中,网络地址是30.0,而31.0是该网段中第 257 个可用的 IP。