子网划分的原因
我们知道IP地址分类中可以用于主机的有A、B、C三类。其中A类地址有126个网络,每个网络中包含2的24次方-2个可用主机。这样如果将一个A类地址分配给一个企业或者学校,将会导致大量的IP地址浪费。所以为了更好的利用现有的IP地址资源,减少浪费,我们要进行子网划分。那么子网划分具体是怎么回事呢?
子网划分的原理
子网划分实际上就是一个借位的过程,将掩码中的主机位借给网络位来用。例如我们要把192.168.1.0/24这个大网段划分成四个小网段,这时就需要将主机位划两位到网络位。
192.168.1.0 11000000.10101000.00000001.00|000000
255.255.255.0 11111111.11111111.11111111.00|000000
这时上面的00就有了4中变化了(00、01、10、11),所以他们的范围就是
11000000.10101000.00000001.00|000000 192.168.1.0
11000000.10101000.00000001.01|000000 192.168.1.64
11000000.10101000.00000001.10|000000 192.168.1.128
11000000.10101000.00000001.11|000000 192.168.1.192
我们以192.168.1.0为例
11000000.10101000.00000001.00|000000=192.168.1.0
11000000.10101000.00000001.00|000001=192.168.1.1
11000000.10101000.00000001.00|000010=192.168.1.2
11000000.10101000.00000001.00|000011=192.168.1.3
------------------------------------------------
11000000.10101000.00000001.00|111110=192.168.1.62
11000000.10101000.00000001.00|111111=192.168.1.63
但是全0的地址是网络地址,全1的地址是广播地址(在子网部分也不例外,子网部分,就是你借位的那几位,上面是红色字体的那两位)
所以他的范围应该是192.168.1.1-192.168.1.62
网络地址是192.168.1.0
广播地址是192.168.1.63
那么上面4个子网的地址范围分别是:
192.168.1.1-192.168.1.62
192.168.1.65-192.168.1.126
192.168.1.129-192.168.1.190
192.168.1.193-192.168.1.254
这里要注意了,第一个子网的网络地址和最后一个子网的广播地址与整个C类地址的网络地址,广播地址冲突了,具有二意性,所以这里实际可用的子网只有两个。
也就是
192.168.1.65-192.168.1.126
192.168.1.129-192.168.1.190
快速划分子网
看了上面的例子,我想大家对子网划分应该理解的差不多了吧,那么有没有更简单的方法呢。大家可以看下面的公式,套用就行了。
子网数=2的N次方-2。(N=子网部分位数)
主机数=2的M次方-2。(M=主机部分位数)
有效子网=256-十进制的子网掩码。
每个子网的广播地址=下一个子网号-1.
有效主机范围=子网地址+1----广播地址-1
我们以192.168.1.0/26为例
子网数:2的2次方-2=2
主机数:2的6次方-2=62
有效子网:256-192=64(0、64、128、192),可用的64和128【这里的256是规定的,没什么好解释,而这里的192,实际上就是你借给网络位的两位主机位的子网掩码,你借了两位就是192,借了三位就是224...】
广播地址:64的广播地址是128-1=127,即192.168.1.127
128的广播地址是192-1=191,即192.168.1.191
有效主机范围:64的范围是192.168.1.65--192.168.1.126
128的范围是192.168.1.129---192.168.1.190
判断是否是有效IP地址案例
在实际案例中会有这样的情况,让你判断那几个IP地址是可用的,遇到这样的情况,一般先算出他的子网地址和广播地址,然后子网地址+1,广播地址-1,就算出了他的范围,这样,你看这个IP地址在不在这个范围内,就可以了。
例如这里有两个IP地址158.66.10.255/23和100.50.36.240/29
158.66.10.255/23
10011110.10000010.0000101|0.11111111
11111111.11111111.1111111|0.00000000
网络地址:158.66.10.0
广播地址:158.66.11.255
范围:158.66.10.1--158.66.11.254
正好158.66.10.255是在这个范围内,所以是有效的。
100.50.36.240/29
01100100.00110010.00100100.11110|000
11111111.11111111.11111111.11111|000
网络地址:100.50.36.240
广播地址:100.50.36.247
地址范围:100.50.36.241---100.50.36.246
很明显,100.50.36.240是这个子网的网络地址,不在地址范围内,所以是无效的。
补充一下,当一个A类地址借了8位的时候,实际上就成了一个B类地址,一个B类地址借了8位的时候,实际上就成了一个C类地址,所以当遇到如10.2.2.1/22这样的地址的时候,我们要用B类地址来算,也就是实际上他是从B类地址借了6位。
本文出自 “Gochna” 博客