子网掩码的作用【整理】
子网掩码(subnet mask):分辨一个IP地址的网络ID和主机ID。
子网掩码的作用:子网掩码是一个32位地址,是与IP地址结合使用的一种技术。它的主要作用有两个,一是用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上;二是用于将一个大的IP网络划分为若干小的子网络。
子网掩码的作用
参考:https://blog.csdn.net/lwk2011/article/details/5887141
子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
子网掩码的设定必须遵循一定的规则。与IP地址相同,子网掩码的长度也是32位,左边是网络位,用二进制数字“1”表示;右边是主机位,用二进制数字“0”表示。其中,“1”有24个,代表与此相对应的IP地址左边24位是网络号;“0”有8个,代表与此相对应的IP地址右边8位是主机号。这样,子网掩码就确定了一个IP地址的32位二进制数字中哪些是网络号、哪些是主机号。这对于采用TCP/IP协议的网络来说非常重要,只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使网络正常工作。
常用的子网掩码 子网掩码有数百种,这里只介绍最常用的两种子网掩码,它们分别是“255.255.255.0”和“255.255.0.0”。
1.子网掩码是“255.255.255.0”的网络:最后面一个数字可以在0~255范围内任意变化,因此可以提供256个IP地址。但是实际可用的IP地址数量是256-2,即254个,因为主机号不能全是“0”或全是“1”。
2.子网掩码是“255.255.0.0”的网络:后面两个数字可以在0~255范围内任意变化(注意与第一种情况的不同),可以提供2552个IP地址。但是实际可用的IP地址数量是2552-2,即65023个。 IP地址的子网掩码设置不是任意的。如果将子网掩码设置过大,也就是说子网范围扩大,那么,根据子网寻径规则,很可能发往和本地机不在同一子网内的目的机的数据,会因为错误的判断而认为目的机是在同一子网内,那么,数据包将在本子网内循环,直到超时并抛弃,使数据不能正确到达目的机,导致网络传输错误;如果将子网掩码设置得过小,那么就会将本来属于同一子网内的机器之间的通信当做是跨子网传输,数据包都交给缺省网关处理,这样势必增加缺省网关的负担,造成网络效率下降。因此,子网掩码应该根据网络的规模进行设置。 如果一个网络的规模不超过254台电脑,采用“255.255.255.0”作为子网掩码就可以了,现在大多数局域网都不会超过这个数字,因此“255.255.255.0”是最常用的IP地址子网掩码。
默认子网掩码在Windows操作系统中,如果给一个网卡指定IP地址,系统会自动填入一个默认的子网掩码。这是Windows为了节省用户输入时间自动产生的子网掩码。比如,局域网最常使用的IP地址“192.168.x.x”默认的子网掩码是“255.255.255.0”。一般情况下,IP地址使用默认子网掩码就可以了。
子网掩码的作用?
1.指明一个IP地址哪些部分是网络ID,哪些部分是主机ID?
原则:子网掩码和IP地址是一一对应的,将子网掩码和IP地址都化成二进制,则子网掩码中的每一个二进制位都唯一地对应着IP地址的一个二进制位。子网掩码中值为“1”的二进制位对应的IP地址部分即为网络ID,子网掩码中值为“0”的二进制位对应的IP地址部分即为主机ID。即:子网掩码可以指明一个IP地址的哪些部分是网络部分,哪些部分是主机部分。
192.168.0.119/24
11000000 10101000 00000000 01110111
11111111 11111111 11111111 00000000
2.子网掩码在数据传输中的作用
当主机A要把数据传送给主机B,主机A先通过自己主机的子网掩码计算出来主机A的网络ID;然后,再利用主机B的IP地址和自己的子网掩码,计算出来主机B的网络ID。如果自己和主机B的网络ID相同,说明在一个网段,则直接传送,否则,说明在不同网段,要通过路由器传送。
3.划分子网的意义
一个A类、B类、C类网段能够包含的主机数量比较多,这样,会给网络带来比较重的负担,影响网络的使用效率。
一个网段中的所有主机,位于一个冲突域中,如果主机数量过多,会频繁发生冲突,严重影响网络传输。
解决这个问题,就要减少每一个冲突域中主机的数量。如此,就要将一个网段再行划分为若干子网,以减少每个网段的主机数量,增加冲突域的数量。
4.使用子网掩码划分网段
将一个C类IP的最后一节的前几个二进制位指定为子网ID,则可以将这个C类网段再划分为几个子网,而主机ID位数的减少,意味着每个冲突域的主机数量减少了。
5.划分子网可能的子网掩码
例如:对192.168.71.0/24再行划分子网
(1)从八个主机ID二进制位中拿出一个二进制位来表示子网,那么子网掩码就是
192.168.71.0/25
192.168.71.0/255.255.255.128
如此,我们可以将这个C类网段划分为两个子网
第一个子网的IP地址:192.168.71.0 0000001------
192.168.71.0 1111110
第二个子网的IP地址:192.168.71.1 0000001------
192.168.71.1 1111110
第一个子网的网络地址:192.168.71.00000000/255.255.255.128
第一个子网的广播地址:192.168.71.01111111/255.255.255.128
第二个子网的网络地址:192.168.71.10000000 / 255.255.255.128
第二个子网的广播地址:192.168.71.1111111/255.255.255.128
(2)从这个c类子网的八个主机id中拿出来二个做子网id,则子网掩码是什么?
255.255.255.11000000 255.255.255.192
这样一个掩码,可以将这个C类网络划分为几个子网?四个
这四个子网的ID? 00 01 10 11
第一个子网的IP地址
192.168.71.00 000001 --- 192.168.71. 00 111110
192.168.71.1 --- 192.168.71.62
第一个子网的网络ID
192.168.71.00 000000/26
192.168.71.0 /255.255.255.192
第一个子网的广播地址
192.168.71.00 111111 /26
192.168.71.63 /255.255.255.192 第二个子网的IP地址
192.168.71.01 000001 --- 192.168.71.01 111110
192.168.71.65 --- 192.168.71.126
第二个子网的子网ID
192.168.71.01000000/26
192.168.71.64/255.255.255.192
第二个子网的广播地址
192.168.71.01 111111 /26
192.168.71.127 /255.255.255.192
6.练习
(1)192.168.71.0是一个C类网段,用掩码255.255.255.248可以将其分成几个子网?
248 ---- 11111000 掩码中有5个1,则可以划分成2^5个子网,即32个子网。
子网掩码中1在前,0在后,并且1要相邻,0也要相邻,则可能的子网掩码有:
10000000 ---- 128 可以划分一个C类网段为2个子网
11000000 ----- 192 分成4个子网
11100000 ----- 224 分成8个子网
11110000 ----- 240 分成16个子网
11111000 ---- 248 分成32个子网
11111100 ---- 252 分成64个子网
(2)已经分得一个C类网段192.168.76.0/24,现欲将其分成多个子网,每个子网中至多有100台主机,则子网掩码?
则子网掩码应该为255.255.255.192,可以划分为4个子网,每个子网有62台主机。
如果某个掩码化成二进制之后,有n个1,m个0,则此掩码可以将此网段划分为2^n个子网,每个网段拥有2^m-2个主机
(3)172.16.0.0网段,子网掩码为255.255.240.0,则可以划分为几个子网,每个网段多少台主机?
将子网掩码的后两节化成二进制:1111 0000 0000 0000
则可以将此B类网段划分成2^4个子网,而每个子网有2^12-2台主机,即4094台主机
第二个子网的IP地址范围
172.16.00010000 00000001 --- 172.16.00011111 11111110
(4)192.168.71.77/255.255.255.224所在网段的网络ID,广播地址和ip地址范围?
77 --- 01001101
224 --- 11100000
由此可知,网络id是192.168.71.010 00000,即为192.168.71.64
广播id是192.168.71.010 11111,即为192.168.71.95
Ip地址的范围:192.168.71.65 --- 192.168.71.94
(5)给出一个网段192.168.7.0/24,现欲将其分成不少于30个子网,则子网掩码是?第四个子网的ip地址范围?网络id?广播id?
子网掩码应该是255.255.255.248,可以将其分为32个子网,每个子网6台主机
第四个子网的网络id?192.168.7.00011 000 即为192.168.7.24
第四个子网的广播ID? 192.168.7.00011 111 即为192.168.7.31
Ip地址:192.168.7.25 -- 192.168.7.30
__EOF__
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!