IP 地址的分类:A、B、C、D、E 是怎么划出来的#
这一集只讲一件事:1981 年的人,怎么让路由器一眼看出"网络号到第几位为止"。答案是——把长度写进地址的开头。 视频讲解 https://www.bilibili.com/video/BV1Dkxv6DE59/
一、问题:路由器拿到一个地址,得马上判断网络号有多长#
IP 地址是 32 位。它被分成两部分:
- 网络号(哪张网)——像邮编里的地区码
- 主机号(网里的哪台机器)——像门牌号
问题来了:这 32 位里,前几位算网络号?
如果每个地址后面都附一份说明书,路由器每转发一个分组都要先读一遍,太慢。1981 年的办法是:把答案写进地址本身的开头几个比特。看开头是 0、是 10、还是 110,网络号多长,不用查表就知道。
这就是"分类的 IP 地址"。
二、五类地址怎么划的#
| 类别 | 开头 | 网络号位数 | 主机号位数 | 可用网络数 | 每个网可用主机数 | 用途 |
|---|---|---|---|---|---|---|
| A | 0 |
8 | 24 | 126 | 16 777 214 | 超大型网 |
| B | 10 |
16 | 16 | 16 384 | 65 534 | 中型网 |
| C | 110 |
24 | 8 | 2 097 152 | 254 | 小型网 |
| D | 1110 |
— | — | — | — | 多播 |
| E | 1111 |
— | — | — | — | 保留实验 |
注意"网络号位数"是含开头固定位的。 比如 A 类写"8 位",其中第 1 位固定是 0,实际可变的只有 7 位——所以 A 类的网络号是 0xxxxxxx 这个形态,能取值 0~127。
规律一句话:开头连续的一越多 → 网络号越长 → 每个网越小 → 网的数量越多。
各类的地址范围#
| 类别 | 第一段的取值范围 | 说明 |
|---|---|---|
| A | 1 ~ 126 | 0 和 127 另有用途,不能用 |
| B | 128 ~ 191 | 第一段二进制是 10 开头 |
| C | 192 ~ 223 | 第一段二进制是 110 开头 |
| D | 224 ~ 239 | 多播 |
| E | 240 ~ 255 | 保留 |
做题时最快的方法:只看第一段。172 落在 128~191,就是 B 类;192 落在 192~223,就是 C 类。
三、网络地址和主机号里的两条红线#
一个网络里,主机号有两个值永远不能分给主机:
| 主机号 | 含义 | 举例(C 类网 192.168.1.0) |
|---|---|---|
全 0 |
网络地址,代表"整个网"这个整体 | 192.168.1.0 |
全 1 |
广播地址,发给网里所有主机 | 192.168.1.255 |
所以一个网真能用的主机数是:
$$ 2^{主机号位数} - 2 $$
- A 类:2²⁴ − 2 = 16 777 214
- B 类:2¹⁶ − 2 = 65 534
- C 类:2⁸ − 2 = 254
那两个减掉的"2",减的就是全 0 和全 1 这两个地址。
四、哪些地址不能分给主机(这一节最容易考)#
| 地址 | 含义 | 能给主机吗 |
|---|---|---|
| 网络号为 0 | 表示"本网络" | 不能 |
| 网络号 127(127.0.0.0/8) | 环回地址,127.0.0.1 就是"找自己" |
不能 |
| 主机号全 0 | 网络地址,代表整个网 | 不能 |
| 主机号全 1 | 广播地址 | 不能 |
0.0.0.0 |
作源地址:我还不知道自己是谁;作路由出口:默认路由 | 不能 |
255.255.255.255 |
受限广播,只在本网传,路由器不转发 | 不能 |
10.0.0.0/8 |
私有地址 | 内网可以,公网不行 |
172.16.0.0/12 |
私有地址(实际是 172.16 ~ 172.31) | 内网可以,公网不行 |
192.168.0.0/16 |
私有地址(家里路由器最常见) | 内网可以,公网不行 |
169.254.0.0/16 |
链路本地地址,拿不到 DHCP 时自动配 | 不能手工填 |
| D 类、E 类 | 不是单播地址 | 不能 |
三段私有地址是重点,很多同学只记得 192.168.x.x,把 10.x.x.x 和 172.16~31.x.x 漏掉。
五、现场算一个:172.16.5.200#
| 步骤 | 做什么 | 结果 |
|---|---|---|
| 1 | 看第一段 172,落在 128 ~ 191 之间 | B 类 |
| 2 | B 类网络号 16 位,就是前两个字节 | 网络地址 172.16.0.0 |
| 3 | 剩下的主机号是 5.200,不是 0.0 也不是 255.255 | 可以分配给主机 |
三步走完,一道题就做完了。先看第一段定类别,再按类别切网络号,最后看主机号有没有踩红线。
六、分类法为什么撑不下去#
| 问题 | 具体表现 |
|---|---|
| A 类太浪费 | 一个网 1677 万个地址,哪个单位也用不完 |
| B 类被抢光 | 中等规模最好用,所以最先分完(1994 年就发出警告) |
| C 类又太小 | 一个网只有 254 台,稍大的单位就不够 |
根源在于:地址是按"整块"分的,要就要一整类,多出来的没法退。 一个只有 300 台机器的单位,只能申请 B 类(6.5 万个地址),用掉 300 个,浪费 99.5%。
这就是下一集要讲的子网划分要解决的问题。