例题如下:
确定以下IP地址的网络地址和广播地址。
190.100.159.140/20
80.130.30.50/14
195.240.240.240/27
首先明确,ip地址32位二进制数,为了好记,用四段十进制加点来表示,每段8位,每段0-255间。
掩码表示32位二进制数中,网络位的位数,如12,18,26等,就是和ip一样,32位,网络位为1,主机位为0,掩码还有一张ip地址的表示方法,如255.255.255.224,和位数的表示法的关系就是,
设掩码位数为y,ip地址位数为x,掩码值=256-2^(x-y),x取值为32,24,16,8,如第四段为非255,非0,为224,可以算出掩码位数为27.
其实子网划分就是讲确实abc类地址,ip地址的四段的8位,要么全是网络地址网络,要么全是主机地址位,通过向右或者向左移动改掩码大小,变成ip地址四段中有一段既有网络地址,又有广播地址。该段决定子网个数和主机位数。
求网络地址和广播地址分三步:
1.确定ip地址四段那一段是既有网络位,又有主机位,根据掩码值来确定,在第一段,掩码小于8,第二段大于8,小于16,第三段大于16小于24,第四段大于24,小于32。根据掩码值确定在ip地址的第几段。掩码是ip地址格式的,确定非255,非0的数字在那一段,这一段就是既有网络地址,又有主机地址的段。如255.255.224.0,显然ip地址第三段是符合要求的段。
2.确定第一步中确定的段的主机位数n,对于掩码是数字格式的,第几段总位数-掩码位数,第一段总位数位8,第二段为16,第三段总位数24,第四段总位数32,确定的每个网络地址,主机位ip地址最大变化数,如第一步中确定的主机位数位n,最大变化数就是2^n。掩码是ip格式的,该段主机位数最大变化数就是256-该段掩码值。如掩码是255.255.224.0,所以第三段主机最大变化值就是256-224=32。
就相当把256张麻将牌,标上0-255,按照从小到大的次序排成一列,分成偶数的等分(注意这里就像一根短绳,中间一拎一分为2,再中间一拎循环就是4,8,16,32,64,128这样,没有6,10,12,14这样的),这里就是确定每份的多少?每份的开头数字就是网络地址的一部分,结束就是广播地址的一部分。如分成四份,每份64个。就是0-63,64-127,128-191,192-255。
块大小就是该段主机位的最大可变数就是分256牌里,每份的牌的个数。
3.用第一步中确定的ip地址在第几段的数字去除2^n,得数取整为k,k*2^n位网络地址在该段的值,k*2^(n+1)-1就是广播地址。网络地址,ip地址四段中,全是主机位的该段网络地址为0,广播地址全主机位为1,整个段为十六进制FF,十进制的255。
原理就是把网络位看着一个整体,在8位二进制中,主机位数位n,看做一个整体,主机位权值为1,网络位的权值就是2^n,网络位的值为k,所以网络地址就是k*2^n,因为主机位是全0,0*1=0。
广播地址就是主机位全1,加1,主机位变成全0,网络位+1,就是变成了下一个网络地址,所以广播地址就是下一个网络地址减1,(k+1)*2^n-1。
假如90.100.159.140/20在第三段,该段主机位是4,网络位是4,掩码的十进制ip格式就是255.255.240.0,
ip第三段就是159 1001 1111
掩码第三段 240 1111 0000
相与的结果 144 1001 0000
无论ip第三段的后四位如何取值,和240与的结果都是144
144 1001 0000 1001就是十进制的9,这在8位二进制的第五位,权值是2^4,所以值就是9*16=144
广播地址就是主机位全是1,给他加1就是下一个网络地址,所以广播地址就是下一个网络地址减1
如广播地址159 1001 1111
+1 1 0000 0001
160 1010 0000 前四位是10,权值是16,所以10x16=160
广播地址主机位全1,加1后,主机位变成全0,网络位+1,变成下一个子网的网络地址了。
所以,广播地址就是下一个网络地址-1
我们知道,一个掩码8位二进制数的各位权值如下:1000 0000 128
8 7 6 5 4 3 2 1 位数
1 0 0 0 0 0 0 0 二进制
128 64 32 16 8 4 2 1 权值 权值和位数n的关系2^(n-1)
把前四位看做一个整体,前四位权值是16,后四位看做一个整体,权值是1,整个二进制的值就是前四位值kx16+后四位,后四位为0000,所以值就是kx16+0=kx16
所以就是把网络位看做一个整体,主机位数为n,权值为2^n,网络地址就是主机位的2^n乘网络位的十进制值,广播地址就是下一个网络地址-1
90.100.159.140/20 : 掩码为20,大于16,小于24,确定网络地址在ip地址第三段变化,第三段主机位数是24-20=4,最大ip变化数2^4=16,159/16取整9.所以网络地址该段是9*16=144,广播地址该段是10*16-1=159,网络地址90.100.144.0,广播地址90.100.159.255
80.130.30.50/14:掩码14,大于8,小于16在第二段既有网络位,又有主机位,n=16-14=2,最大主机变化数为2^2=4,130/4取整32,32*4=128,广播地址33*4-1=131,所以网络地址80.128.0.0,广播地址80.131.255.255
195.240.240.240/27: 掩码27,大于24,小于32,确定ip地址在第四段既有网络地址,又有主机地址,主机位32-27=5,最大变化数2^5=32,240/32取整为7,7*32=224,8*32-1=255,所以网络地址195.240.240.224,广播地址195.240.240.255