我们平常所说的IP地址都是指类似于 192.168.0.37 这样的一串数字,但实际上这一串数字只是IP地址主体而已。
IP地址主体 一串32比特的数字,按照8比特(1个字节)为一组分成4组,每组都用十进制值表示,最后以英文句点隔开。

但这里却有一个问题,仅凭IP地址主体这一串数字,我们无法区分哪部分是网络号,那部分是主机号。

因为在组建网络时,我们可以自定义网络号和主机号之间的分配关系,所以我们还需要额外的信息来表示IP地址的内部结构。这一额外的信息就是所谓的子网掩码。
子网掩码 一串32比特数字,其左边部分都是1,右边部分都是0。其中,子网掩码为1的部分表示网络号,子网掩码为0的部分表示主机号。

对于子网掩码,我们有两种表示方法:

* 按照和IP地址一样的方式以每8比特为一组分成4组,每组都用十进制值表示,最后以英文句点隔开。
* 仅考虑子网掩码中左边都是1的部分,将这一部分的比特数用十进制值表示。
<>包含子网掩码的IP地址表示方法

一、采用与IP地址主体相同的格式表示子网掩码:
192.168.0.37/255.255.255.0
上面IP地址的组成:

* 192.168.0.37:IP地址主体
* 255.255.255.0:子网掩码
二、采用网络号比特数来表示子网掩码:
192.168.0.37/24
上面IP地址的组成:

* 192.168.0.37:IP地址主体
* 24:子网掩码
<>案例解读

我们以 192.168.0.37/24 为例,可以很轻松地完成以下换算过程:
十进制表示 将十进制转换成比特(二进制) ------------ ----------------------------------- ㈠ IP地址
192.168.0.37 11000000.10101000.00000000.00100101 ㈡ 子网掩码 24
11111111.11111111.11111111.00000000 ╲ 网络号 ╱ ╲主机号╱ ↓ ↓ ↓ 网络号 192.168.0.
11000000.10101000.00000000 主机号 37 00100101
子网掩码表示网络号与主机号之间的边界。在本例中,这个边界与字节的边界正好吻合,即正好划分在句点的位置上,实际上也可以划分在字节的中间位置。

从上面的求解步骤中,我们可以很明显地知道该网络最多可以为254(28-2)个主机分配有效的IP地址。

可分配的IP地址范围是 192.168.0.1 ~ 192.168.0.254
。其中主机号的比特全部为0或者全部为1时,代表了两种特殊含义,因此不能将它们分配给单独一台计算机。

IP地址的主机号:

* 全0(192.168.0.0):表示整个子网。
* 全1(192.168.0.255):表示向子网上所有设备发送包,即“广播”。

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信