什么是子网掩码?用子网掩码划分IP网段

子网掩码:Subnet mask,或Netmask

子网是决定一个IP网段大小的工具,它负责将一个IP网段的网络部分和主机部分隔开。

 

子网掩码格式

子网掩码格式1:二进制

子网掩码跟IP地址一样,也是32bit,也分成4节,每节8bit。

子网掩码换算成二进制有一个固定的规律:从左到右,必须是连续的1和连续的0,不允许出现10101110这样的格式。

下面给出几个子网掩码的示例:

11111111.11111111.11111111.11000000(正确)
11111111.11111111.11111100.00000000(正确)
11111111.11111110.00000000.00000000(正确)
11111000.00000000.00000000.00000000(正确)
10000000.00000000.00000000.00000000(正确)
11111111.11111111.11111111.00111000(不正确)
00000000.11111111.11111111.11111111(不正确)
01111111.11111111.11111111.11111111(不正确)
11101011.11000000.00011100.00001100(不正确)

 

子网掩码格式2:十进制

子网掩码一般不会用二进制表示,而是换算成十进制来表示,比如上面示例前5个正确的子网掩码换算成十进制如下:

11111111.11111111.11111111.11000000(十进制:255.255.255.192)
11111111.11111111.11111100.00000000(十进制:255.255.252.0)
11111111.11111110.00000000.00000000(十进制:255.254.0.0)
11111000.00000000.00000000.00000000(十进制:248.0.0.0)
10000000.00000000.00000000.00000000(十进制:128.0.0.0)

推荐阅读:十进制与二进制的转换

 

子网掩码格式3:/n

子网掩码还有另一种格式,不用按照点分十进制的格式,可以直接用“/n”的格式来表示,其中“n”就是有多少个连续的“1”。

比如上述例子中:

11111111.11111111.11111111.11000000(可以表示为/26,有连续的26个1)
11111111.11111111.11111100.00000000(可以表示为/22,有连续的22个1)
11111111.11111110.00000000.00000000(可以表示为/15,有连续的15个1)
11111000.00000000.00000000.00000000(可以表示为/5,有连续的5个1)
10000000.00000000.00000000.00000000(可以表示为/1,有连续的1个1)

 

默认的子网掩码

在ABCDE这五类IP地址中,ABC类是给用户使用的,这3类IP地址各有一个默认的子网掩码。

扩展阅读:IP地址分类

如下:

A类默认子网掩码:255.0.0.0(二进制11111111.00000000.00000000.00000000,或/8)

B类默认子网掩码:255.255.0.0(二进制11111111.11111111.00000000.00000000,或/16)

C类默认子网掩码:255.255.255.0(二进制11111111.11111111.11111111.00000000,或/24)

 

子网掩码如何使用

IP地址跟子网掩码是配套使用的,比如我们使用一个A类IP地址116.50.25.7,如果不特殊标注,那它就会使用默认的子网掩码255.0.0.0,这个IP地址就可以写成116.50.25.7/8。

再比如我们使用一个C类IP地址195.24.177.60,那默认子网掩码就是255.255.255.0,这个IP地址就应该写成195.24.177.60/24。

 

子网掩码的作用

那搞清楚了子网掩码的格式,我们再来看看子网掩码的作用。

子网掩码最主要的作用,就是“划分IP网段”。

 

所以我们要先搞清楚一个IP网段里的两个部分:

1、网络部分

网络部分是网络的范围,也可以叫做网络前缀,如果两个IP地址的网络前缀是一样的,那它们就在同一个网段里。

而决定一个IP地址网络前缀范围的,就是这个IP地址对应子网掩码中连续1的部分。

2、主机部分

主机部分是被子网掩码中二进制0覆盖的部分。

 

计算例一

如下图,计算步骤如下:

(1)先算出网络部分和主机部分的范围

1、列出IP地址和子网掩码:172.23.10.1,255.255.0.0

2、将IP地址和子网掩码换算成二进制,如上图

3、将子网掩码中连续的1和连续的0隔开

4、IP地址对应被隔开的地方,左边16bit就是网络部分,右边16bit就是主机部分

这样,我们就将一个IP网段计算出来了。

 

(2)再算出这个网段的网络地址

其实很简单,将IP地址被子网掩码1和0隔开的地方,将主机部分的二进制全部改为1,得到的就是这个网段的网络地址,这个网络地址就代表当前所处的网段。

如下图:

这个网段的网络地址就是172.23.0.0/16

 

计算例二

我们再来算一个,如下图:

(1)先算出网络部分和主机部分的范围

1、列出IP地址和子网掩码:152.161.174.243,255.255.192.0

2、将IP地址和子网掩码换算成二进制,如上图

3、将子网掩码中连续的1和连续的0隔开

4、IP地址对应被隔开的地方,左边18bit就是网络部分,右边14bit就是主机部分

 

(2)再算出这个网段的网络地址

如下图:

将右边14bit的主机位置为0,加上左边18bit的网络部分,得到这个网段的网络地址152.161.128.0/18

 

总结

综上所述就是子网掩码的的作用,主要要注意如下几点:

1、子网掩码必须是连续的1和连续的0,而且1只能从最左边一个开始
2、IP地址中被子网掩码的1覆盖的部分是网络部分,被0覆盖的部分是主机部分
3、网络部分就是网段信息,主机部分就是这个网段里可以分配给网络设备的IP地址,这些IP地址处于同一个网段。

未经允许不得转载:CTO十万个为什么 » 什么是子网掩码?用子网掩码划分IP网段

赞 (1)