🎯 课程摘要:本节课介绍 IPv4 地址的分类编址方法,将 32 比特的 IPv4 地址划分为网络号(net-id)和主机号(host-id)两部分,并按固定长度分为 A、B、C、D、E 共五类地址。重点掌握各类地址的范围、网络数、主机数、默认掩码,以及特殊 IPv4 地址的使用规则。
- 概念定义:分类编址方法将 32 比特的 IPv4 地址分为**网络号(net-id)和主机号(host-id)**两部分。
- 网络号(net-id):标志主机或路由器的接口所连接到的网络。
- 主机号(host-id):标志该主机或路由器的接口本身。
- 原理解析:
- 同一网络中,不同主机/路由器接口的 IPv4 地址的网络号必须相同(表明属于同一网络)。
- 同一网络中,不同主机/路由器接口的 IPv4 地址的主机号必须各不相同(用于区分自身)。
- 不同网络的网络号必须不同。
- ⚠️ 重点/考点:仅凭地址本身无法判断网络号与主机号的分界,必须先确定地址类别。
| 地址类别 | 网络号位数 | 主机号位数 | 固定前缀 | 用途 |
|---|
| A 类 | 8 bit | 24 bit | 0 | 单播地址 |
| B 类 | 16 bit | 16 bit | 10 | 单播地址 |
| C 类 | 24 bit | 8 bit | 110 | 单播地址 |
| D 类 | — | — | 1110 | 多播地址 |
| E 类 | — | — | 1111 | 保留地址 |
各类地址在 IPv4 地址空间中的占比:
| 类别 | 占比 |
|---|
| A 类 | $2^{32-1} / 2^{32}$ |
| B 类 | $2^{32-2} / 2^{32}$ |
| C 类 | $2^{32-3} / 2^{32}$ |
| D 类 | $2^{32-4} / 2^{32}$ |
| E 类 | $2^{32-4} / 2^{32}$ |
- A、B、C 类地址都是单播地址,只有单播地址可分配给主机或路由器的各接口。
- 主机号为全 0 的地址 → 网络地址,不能分配给主机/路由器接口。
- 主机号为全 1 的地址 → 广播地址,不能分配给主机/路由器接口。
- 网络号 8 bit,最高位固定为
0。 - 最小网络号 0:保留,不指派。
- 最小可指派网络号 1 → 网络地址
1.0.0.0。 - 最大网络号 127:用于本地软件环回测试,不指派。
- 最小环回地址:
127.0.0.1 - 最大环回地址:
127.255.255.254 - 环回地址用于本主机内进程之间的通信,数据报不会被发送到任何网络。
- 最大可指派网络号 126 → 网络地址
126.0.0.0。
| 项目 | 数值 |
|---|
| 可指派 A 类网络数量 | $2^{8-1} - 2 = 126$ |
| 每个 A 类网络可分配地址数 | $2^{24} - 2 = 16{,}777{,}214$ |
减 2 的原因:网络号去掉 0 和 127;主机号去掉全 0(网络地址)和全 1(广播地址)。
- 网络号 16 bit,最高两位固定为
10。 - 最小可指派网络号:
128.0 → 网络地址 128.0.0.0。 - 最大可指派网络号:
191.255 → 网络地址 191.255.0.0。
| 项目 | 数值 |
|---|
| 可指派 B 类网络数量 | $2^{16-2} = 16{,}384$ |
| 每个 B 类网络可分配地址数 | $2^{16} - 2 = 65{,}534$ |
- 网络号 24 bit,最高三位固定为
110。 - 最小可指派网络号:
192.0.0 → 网络地址 192.0.0.0。 - 最大可指派网络号:
223.255.255 → 网络地址 223.255.255.0。
| 项目 | 数值 |
|---|
| 可指派 C 类网络数量 | $2^{24-3} = 2{,}097{,}152$ |
| 每个 C 类网络可分配地址数 | $2^{8} - 2 = 254$ |
| 类别 | 第一字节范围 | 网络号范围 | 可指派网络数 | 每网可分配地址数 | 默认掩码 |
|---|
| A 类 | 1 ~ 126 | 1.0 ~ 126.0 | 126 | $2^{24}-2$ | 255.0.0.0 |
| B 类 | 128 ~ 191 | 128.0 ~ 191.255 | $2^{14}$ | $2^{16}-2$ | 255.255.0.0 |
| C 类 | 192 ~ 223 | 192.0.0 ~ 223.255.255 | $2^{21}$ | $2^{8}-2$ | 255.255.255.0 |
| D 类 | 224 ~ 239 | — | — | — | — |
| E 类 | 240 ~ 255 | — | — | — | — |
根据地址左起第一个十进制数的值判断类别:
- < 128 → A 类
- 128 ~ 191 → B 类
- 192 ~ 223 → C 类
不能分配给主机/路由器接口的三种情况:
- A 类网络号 0 和 127;
- 主机号为全 0 的地址(网络地址);
- 主机号为全 1 的地址(广播地址)。
| 地址 | 用途 |
|---|
0.0.0.0 | 本网络本主机(源地址) |
255.255.255.255 | 全网广播 |
127.x.x.x | 本地软件环回测试 |
| 主机号全 0 | 网络地址 |
| 主机号全 1 | 直接广播地址 |
| 私有地址 | 内部网络使用 |
- 容易造成 IPv4 地址的大量浪费。例如某网络需要 255 个地址,一个 C 类网(254 个)不够,只能分配一个 B 类网(65,534 个),造成大量浪费。
- 为解决该问题,IETF 提出了划分子网的编址方法(下节课介绍)。
- IPv4 分类地址 = 网络号(net-id) + 主机号(host-id),按固定前缀分 A/B/C/D/E 五类。
- A/B/C 类为单播地址,可分配给接口;D 类为多播,E 类保留。
- 主机号全 0 = 网络地址,全 1 = 广播地址,二者均不可分配。
- 网络号 0、127 不可指派(127 用于环回测试)。
- 各类可指派网络数 = $2^{\text{网络号位数}-\text{固定前缀位数}}$(A 类再减 2)。
- 每网可分配地址数 = $2^{\text{主机号位数}} - 2$。
- 分类编址灵活性差、浪费严重,催生了划分子网与无分类编址方法。
- 408 真题:下列哪个 IPv4 地址可作为源地址也可作为目的地址?(答案:普通 A 类地址,非特殊地址)
- 给定 IP 地址,如何快速判断其类别、网络号与主机号部分?
- 某网络有 65,534 台主机加 1 个路由器接口,应分配哪类网络号?为什么 C 类不够?(答:需 A 类,B 类仅 65,534 不够)
- 路由器之间的点对点链路也算一个网络吗?为什么?(答:算,需为两端接口各分配 IP 地址)
- 列举三种不能分配给主机/路由器接口的地址,并说明原因。