一、背景介绍

IPv4 地址采用 32 位二进制结构,通过点分十进制表示,核心由网络部分与主机部分组成。早期分类编址(A/B/C 类)因固定前缀划分导致资源分配失衡(大网闲置、小网不足)和广播域过大等问题。子网划分技术通过子网掩码解构主机号,形成(网络部分-子网部分-主机部分)三层架构,实现三大价值:​

精准分配:利用 VLSM 按需划分子网,提升地址利用率至接近 100%;​

性能优化:缩小广播域,降低网络负载,典型场景广播包占比可降至 5% 以下;​

精细管理:支持按业务 / 安全需求隔离子网,配合访问控制提升运维效率。该技术推动 IP 地址管理从粗放分配转向精细化运营,后续将深入解析计算实操与通信原理。

二、IPv4地址组成部分

2.1 网络部分

定义:

标识设备所在的逻辑网络(子网或网段),同一网络内的设备共享相同的网络部分。

作用:

路由器通过网络部分判断数据报应转发到哪个目标网络。

网络部分长度决定了网络规模(长度越长,网络数量越多,每个网络的主机数越少)。

分类编址下的默认划分(传统A/B/C类网络):

A 类地址:前8位为网络部分(默认掩码255.0.0.0,即/8)。

B 类地址:前16位为网络部分(默认掩码255.255.0.0,即/16)。

C 类地址:前24位为网络部分(默认掩码255.255.255.0,即/24)。

无类编址(CIDR):网络部分长度可自定义(如192.168.1.0/27表示前27位为网络部分)。

2.2 主机部分

定义:

标识网络内的具体设备(如主机、路由器接口等),同一网络内的主机部分必须唯一。

作用:

在局域网内,主机部分用于区分不同设备,确保数据准确到达目标主机。

限制:

主机部分全为0时,代表网络地址(如192.168.1.0/24是网络地址,不分配给主机)。

主机部分全为1时,代表广播地址(如192.168.1.255/24,用于向网络内所有主机发送广播包)。

可用主机数计算:

公式:2^n-2(n为主机部分位数,减2是排除网络地址和广播地址)。

例:主机部分8位时,可用主机数为2⁸-2=254。

2.3 网络掩码(子网掩码)

定义:

32位二进制数,用1标识地址中的网络部分,0标识主机部分,格式与IPv4地址一致(点分十进制)。

作用:

明确划分IP地址的网络部分和主机部分,是子网划分的核心依据。

设备通过掩码与 IP 地址进行按位与运算,得到目标网络地址(如 IP地址 AND 掩码 = 网络地址)。

表示方法:

点分十进制:如255.255.255.0(对应C类默认掩码,前24位为1,后8位为0)。

CIDR 前缀:如/24(表示前 24 位为网络部分,等价于255.255.255.0)。

2.4 地址换算示例

以192.168.1.100/24为例:

二进制表示:11000000.10101000.00000001.01100100(前24位为网络部分,后8位为主机部分)。

网络掩码:255.255.255.0(或/24)。

网络部分:192.168.1(前24位,标识该设备属于192.168.1.0/24网络)。

主机部分:100(后8位,二进制01100100,标识该网络内的地址为100的主机)。

三、IPv4地址分类

A类地址

地址范围:1.0.0.0 ~ 126.255.255.255(十进制)。

私有地址段:10.0.0.0/8(10.0.0.0 ~ 10.255.255.255),用于内部网络。

B类地址

地址范围:128.0.0.0 ~ 191.255.255.255。

私有地址段:172.16.0.0/12(172.16.0.0 ~ 172.31.255.255)。

C类地址

地址范围:192.0.0.0 ~ 223.255.255.255。

私有地址段:192.168.0.0/16(192.168.0.0 ~ 192.168.255.255)。

D类地址(用于组播)

地址范围:224.0.0.0 ~ 239.255.255.255。

E类地址(保留为实验或科研用途)

地址范围:240.0.0.0 ~ 255.255.255.255(其中 255.255.255.255 为受限广播地址)。

四、换算示例一(192.168.1.0/24)

明确子网掩码与地址结构

前缀 /24:表示子网掩码的前24位为网络部分,后8位为主机部分。

子网掩码二进制:11111111 11111111 11111111 00000000(点分十进制:255.255.255.0)。

IP地址二进制:192.168.1.0 转换为二进制为: 
11000000 10101000 00000001 00000000  (前24位:网络部分,后8位:主机部分)

二进制转十进制方法

 0   0   0   0   0   0   0   0  (这个8位二进制对应的十进制数值,每8位都可以对应,如二进制0变为1则选择下方的十进制数值)
128  64  32  16  8   4   2   1
 
 0   0   0   0   0   0   0   0  (如二进制00000000转换十进制为0)
128  64  32  16  8   4   2   1

 0   0   1   0   1   0   0   0  (如二进制00101000转换十进制为40)
128  64  32  16  8   4   2   1

计算网络地址

规则:网络地址是将IP地址的主机部分全部置为0(即IP地址与子网掩码按位与运算)。

二进制计算:

IP地址:    11000000 10101000 00000001 00000000  

子网掩码:  11111111 11111111 11111111 00000000  

按位与结果:11000000 10101000 00000001 00000000  (主机部分全0)  

十进制结果:192.168.1.0(与原地址相同,因为原地址已是网络地址)。

计算广播地址

规则:广播地址是将IP地址的主机部分全部置为 1(网络部分不变,主机部分全 1)。

二进制计算:

网络部分:   11000000 10101000 00000001  (前24位)  

主机部分全1:11111111  (后8位)  

组合后:     11000000 10101000 00000001 11111111  

十进制结果: 192.168.1.255

计算 IP 地址总数

主机部分位数:8位(由/24可知,32-24=8)。

总地址数:2^8 = 256 个(包括网络地址和广播地址)。

计算可用IP地址数量

排除特殊地址:网络地址(全0)和广播地址(全1)不可分配给主机。

可用IP数:256-2=254 个。

确定可用IP地址范围

第一个可用IP:网络地址的主机部分加 1(即 192.168.1.0 + 1 = 192.168.1.1)。

最后一个可用IP:广播地址的主机部分减 1(即 192.168.1.255 - 1 = 192.168.1.254)。

范围:192.168.1.1 ~ 192.168.1.254。

五、换算示例二(192.168.1.50/26)

明确子网掩码与地址结构

前缀 /26:表示子网掩码的前26位为网络部分,后6位为主机部分。

子网掩码二进制:11111111 11111111 11111111 11000000,点分十进制表示为 255.255.255.192。

IP 地址 192.168.1.50 二进制:
11000000 10101000 00000001 00110010

 二进制转十进制方法

 0   0   0   0   0   0   0   0  (这个8位二进制对应的十进制数值,每8位都可以对应,如二进制0变为1则选择下方的十进制数值)
128  64  32  16  8   4   2   1
 
 0   0   0   0   0   0   0   0  (如二进制00000000转换十进制为0)
128  64  32  16  8   4   2   1

 1   1   0   0   0   0   0   0  (如二进制00101000转换十进制为192)
128  64  32  16  8   4   2   1

 计算网络地址

规则:将 IP 地址的主机部分全部置为 0(即 IP 地址与子网掩码按位与运算)。

二进制计算:

IP 地址:   11000000 10101000 00000001 00110010

子网掩码:  11111111 11111111 11111111 11000000

按位与结果:11000000 10101000 00000001 00000000

十进制结果:192.168.1.0

计算广播地址

规则:将IP地址的主机部分全部置为1(网络部分不变,主机部分全 1)。

二进制计算:

 网络部分:    11000000 10101000 00000001 00  (前26位)

主机部分全 1: 111111  (后6位)

组合后:       11000000 10101000 00000001 00111111

十进制结果:   192.168.1.63

计算 IP 地址总数

主机部分位数:6位(由 /26 可知,32-26 = 6)。

总地址数:2^6=64个(包括网络地址和广播地址)。

计算可用IP地址数量

排除特殊地址:网络地址(全 0)和广播地址(全 1)不可分配给主机。

可用 IP 数:64-2=62 个。

确定可用IP地址范围

第一个可用IP:网络地址的主机部分加1(即 192.168.1.0+1 = 192.168.1.1)。

最后一个可用IP:广播地址的主机部分减1(即 192.168.1.63-1 = 192.168.1.62)。

范围:192.168.1.1 ~ 192.168.1.62

六、换算示例三(172.16.1.20/22)

明确子网掩码与地址结构

前缀 /22:表示子网掩码的前22位为网络部分,后10位为主机部分。

子网掩码二进制:11111111 11111111 11111100 00000000,点分十进制表示为 255.255.252.0。

 IP 地址 172.16.1.20 二进制:
10101100 00010000 00000001 00010100

 二进制转十进制方法

 0   0   0   0   0   0   0   0  (这个8位二进制对应的十进制数值,每8位都可以对应,如二进制0变为1则选择下方的十进制数值)
128  64  32  16  8   4   2   1
 
 0   0   0   0   0   0   0   0  (如二进制00000000转换十进制为0)
128  64  32  16  8   4   2   1

 1   1   1   1   1   1   0   0  (如二进制00101000转换十进制为252)
128  64  32  16  8   4   2   1

计算网络地址

规则:将IP地址的主机部分全部置为0(即IP地址与子网掩码按位与运算)。

二进制计算:

IP 地址:    10101100 00010000 00000001 00010100

子网掩码:   11111111 11111111 11111100 00000000

按位与结果: 10101100 00010000 00000000 00000000

十进制结果: 172.16.0.0

计算广播地址

规则:将 IP 地址的主机部分全部置为1(网络部分不变,主机部分全1)。

二进制计算:

网络部分:    10101100 00010000 000000  (前22位)

主机部分全 1:11 11111111  (后10位)

组合后:      10101100 00010000 00000011 11111111

十进制结果:  172.16.3.255

计算IP地址总数

主机部分位数:10位(由 /22 可知,32-22=10)。

总地址数:2^10=1024 个(包括网络地址和广播地址)。

计算可用IP地址数量

排除特殊地址:网络地址(全 0)和广播地址(全 1)不可分配给主机。

可用IP数:1024-2=1022 个。

确定可用IP地址范围

第一个可用IP:网络地址的主机部分加1(即 172.16.0.0+1 = 172.16.0.1)。

最后一个可用IP:广播地址的主机部分减1(即 172.16.3.255-1 = 172.16.3.254)。

范围:172.16.0.1 ~ 172.16.3.254

七、计算IP地址总数汇总表

前缀长度(/n)

主机位数(32-n)

IP 地址总数

子网掩码

/32

0

1

255.255.255.255

/31

1

2

255.255.255.254

/30

2

4

255.255.255.252

/29

3

8

255.255.255.248

/28

4

16

255.255.255.240

/27

5

32

255.255.255.224

/26

6

64

255.255.255.192

/25

7

128

255.255.255.128

/24

8

256

255.255.255.0

/23

9

512

255.255.254.0

/22

10

1024

255.255.252.0

/21

11

2048

255.255.248.0

以此类推(前缀每减少1位,主机位增加1位,IP地址总数翻倍(如/24是256,/23是512,/22是1024))