利用Excel进制转换函数计算IP以及掩码
百度网盘
密码: 9vpx
计算方法内容转自:涛声508: ip 子网数目 网络号 主机号 广播地址 可用IP地址范围
1、算子网数目
首先将/18换成为我们习惯的表示法:
11111111.11111111.11000000.000000
转为十进制就是255.255.192.0
可以看到这个掩码的左边两节和B类 默认掩码是一致的,所以这个掩码是在B类默认掩码的范围内,意味着我们将对B类大网进行子网划分。B类掩码默类是用16位(16个0)来表示可分配的IP 地址,本题中的掩码在B类默认掩码的基础上多出了两个表示网络号的1,这就是说是将B类大网划分为(11)2进制个子网,将(11)2进制转换为十进制就 是4,所以本题中是将B类大网划分为4个子网。
2、算网络号
将IP地址的二进制和子网掩码的二进制进行“与”(and)运算,得到的结果就是网络号。“与运算”的规则是1和1得1,0和1得0,1和0得0。
172.31.128.255转为二进制是
10101100.00011111.10000000.11111111
掩码是:
11111111.11111111.11000000.00000000
所以:
10101100.00011111.10000000.11111111
11111111.11111111.11000000.00000000
10101100.00011111.10000000.00000000
将
10101100.00011111.10000000.00000000
转换为十进制就是172.31.128.0
所以网络号是172.31.128.0
3、算主机号
用IP地址的二进制和(子网掩码的二进制的反码)进行“与”运算,得到的结果就是主机号。反码就是将原本是0的变为1,原本是1的变为0。
由于掩码是
11111111.11111111.11000000.00000000
所以其反码表示为
00000000.00000000.00111111.11111111
再将IP地址的二进制和掩码的反码表示法进行“与”运算:
10101100.00011111.10000000.11111111
00000000.00000000.00111111.11111111
00000000.00000000.00000000.11111111
将
00000000.00000000.00000000.11111111
转换为十进制是0.0.0.255,我们将左边的0去掉,只留右边的数字,所以我们说这个IP的主机号是255。主机号是表示网络号再加上255就是这个IP地址了。
4、算广播地址
在得到网络号的基础上,将网络号右边的表示IP地址的主机部分的二进制位全部填上1,再将得到的二进制数转换为十进制数就可以得到广播地址。因为本题中
子网掩码是
11111111.11111111.11000000.00000000
网络号占了18位,所以本题中表示IP地址的主机部分的二进制位是14位,我们将网络号172.31.128.0
转换为二进制是
10101100.00011111.10000000.00000000
然后从右边数起,将14个0全部替换为1, 即:
10101100.00011111.10111111.11111111
这就是这个子网的广播地址的二进制表示法。将这个二进制广播地址转换为十进制就是172.31.191.255
5、算可用IP地址范围
因为网络号是172.31.128.0,广播地址是172.31.191.255,所以子网中可用的IP地址范围就是从网络号+1 到广播地址-1,所以子网中的可用IP地址范围就是从172.31.128.1-172.31.191.254。
相关介绍
首先,不要管这个IP是A类还是B类还是C类,IP是哪一类对于解题是没有任何意义的,因为在很多题中B类掩码和A类或是C类网络一起出现,不要把这认为是一个错误,很多时候都是这样出题的。
其次,应该掌握以下一些知识:
- 明确“子网”的函义:
这个小网就叫做这个大网的子网。大网可以是A类大网(A类网络),也可以是B类大网,还可能是C类大网。- 二进制数转为十进制
比方说在不牵涉到IP地址的计算时,将二进制的111转换为十进制,采用的方法是(2的2次方+2的1次方+2的0次方,即4+2+1),得到的结果 是十进制的7。但是在计算IP地址时的的二进制到十进制的转换就不能采用这种方式了,二进制的111转换为十进制时,看到有几个“1”,就表示为2的几次 方,这里有三个“1”,就是2的3次方,即在计算IP地址时,二进制的111转换为十进制就是2的3次方,2的3次方的结果是8。) - 网络的总个数和可用个数
A类网络的个数有2的7次方个,即128个。根据网络规范的规定,应该再去除128个中的第一个和最后一个,那么可用的A类网络的个数是126个。
B类网络的个数有2的14次方个,即16384个。根据网络规范的规定,应该再去除16384个中的第一个和最后一个,那么可用的B类网络的个数是16382个。
C类网络的个数有2的21次方个,即2097152个。根据网络规范的规定,应该再去除16384个中的第一个和最后一个,那么可用的C类网络的个数是2097150个。 - 网络的总IP数和可用IP地址数
每个A类大网(A类网络)中容纳2的24次方个IP地址,即16777216个IP地址;每个B类大网中容纳着2的16次方个IP地址,即65536 个IP地址;每个C类大网中容纳着2的8次方个IP地址,即256个IP地址。可用的IP地址数是在总IP地址数的基础上减2得到。
如果把一个B类大网划分为32个小网,那么每个小网的IP地址数目就是65536/32=2048;如果把C类大网划分为32个小网,那么每个小网的IP地址数目就是256/32=8。
- 二进制数转为十进制
- 明确“掩码”的函义:
掩码的作用就是用来告诉电脑把“大网”划分为多少个“小网”! 好多书上说,掩码是用来确定IP地址所在的网络号,用来判断另一个IP是不是与当前IP在同一个子网中。这也对,但是对于我们做题来说,意义不大。我们要明确:掩码的作用就是用来告诉电脑把“大网”划分为多少个“小网”! 掩码是用来确定子网数目的依据! - 明确十进制数与8位二进制数的转换
做这类题要能够在心中将255以内的十进制数转换为对应的二进制数。可以参考这个公式表(第一行是二进制,第二行是十进制):
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
---|---|---|---|---|---|---|---|
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
可以看到:
第一行左起第一个二进制1对应十进制的128
第一行左起第二个1对应十进制的64......依次类推。
上面这些关系要牢记,这是进制转换的基础!
比方说将十进制的133转为二进制,可以这样想:因为133和128比较近,又由于公式表中左起第一个二进制1表示128,所以可以马上将待转换成8 位二进制的最左边的一位确定下来,定为1。再接下来,看到133和128只相差5,而5是4与1的和,而4与1分别对应公式表中的左起第6和第8位,所以 十进制的133转换为8位二进制表示就是10000101,对应如下:
1 0 0 0 0 1 0 1 (二进制表示的133)
128 0 0 0 0 4 0 1 (十进制表示的133)
其它255以内的十进制数转换为8位二进制数的方法依此类推。
- 牢记各类网络的默认掩码
A类网络的默认掩码是255.0.0.0,换算成二进制就是 11111111.00000000.00000000.00000000;默认掩码意味着没有将A类大网(A类网络)再划分为若干个小网。掩码中的1表 示网络号,24个0表示在网络号确定的情况下(用二进制表示的IP地址的左边8位固定不变),用24位二进制数来表示IP地址的主机号部分。(IP地址是 由网络号+主机号两部分构成)
B类网络的默认掩码是255.255.0.0,换算成二进制就是 11111111.11111111.00000000.00000000;默认掩码意味着没有将B类大网再划分为若干个小网。16个0表示在网络号确定 的情况下(用二进制表示的IP地址的左边16位固定不变)可以用16位二进制数来表示IP地址的主机号部分。(可以把B类默认掩码理解为是将A类大网(A 类网络)划分为2的8次方(即256)个小网)
C类网络的默认掩码是255.255.255.0,换算成二进制就是 11111111.11111111.11111111.00000000;默认掩码意味着没有将C类大网再划分为若干个小网。这里的8个0表示在网络号 确定的情况下(用二进制表示的IP地址的左边24位固定不变),可以用8位二进制数来表示IP地址的主机部分。(可以把C类默认掩码理解为是将A类大网 (A类网络)划分为2的16次方(即65536)个小网,是将B类大网划分为2的8次方(即256)个小网) - 关于正确有效的掩码:
正确有效的掩码应该满足一定的条件,即把十进制掩码换算成二进制后,掩码的左边部分一定要是全为1且中间不能有0出现。比方说将255.255.248.0转为二进制是 11111111.11111111.11111000.00000000,可以看到左边都是1,在1的中间没有0出现(0都在1的右边),这样就是一个有效的掩码。我们再来看254.255.248.0,转成二进制是 11111110.11111111.11111000.00000000,这不是一个正确有效的掩码,因为在1中间有一个0的存在。 - 关于子网掩码的另类表示法:
有些题目中不是出现如255.255.248.0这样的子网掩码,而是出现 IP地址/数字这样的形式,这里的/数字就是子网掩码的另类表示法。我们将255.255.248.0转为二进制的形式是 11111111.11111111.11111000.00000000,可以看到左边是有21个1,所以我们可以将255.255.248.0这个掩码表示为/21。 - 网络中有两个IP地址不可用:
不管是A类还是B类还是C类网络,在不划分子网的情况下,有两个IP地址不可用:网络号和广播地址。比如在一个没有划分子网的C类大网中用 202.203.34.0来表示网络号,用202.203.34.255来表示广播地址,因为C类大网的IP地址有256个,现在减去这两个IP地址,那 么可用的IP地址就只剩下256-2=254个了。如果题目问:把一个C类大网划分为4个子网,会增加多少个不可用的IP地址?可以这样想:在C类大网不 划分子网时,有两个IP地址不可用;现在将C类大网划分为4个子网,那么每个子网中都有2个IP地址不可用,所以4个子网中就有8个IP地址不可用,用8 个IP地址减去没划分子网时的那两个不可用的IP地址,得到结果为6个。所以在将C类大网划分为4个子网后,将会多出6个不可用的IP地址。 - 根据掩码来确定子网的数目
首先看题中给出的掩码是属于哪个默认掩码的“范围”内,这样我们就可以知道是对A类还是B类还是C类大网来划分子网。比方说 202.117.12.36/30,我们先把/30这种另类的掩码表示法转换为我们习惯的表示法: 11111111.11111111.11111111.11111100,转为十进制是255.255.255.252。我们可以看到,这个掩码的左边 三节与C类默认掩码相同,只有第四节与C类默认掩码不同,所以我们认为255.255.255.252这个掩码是在C类默认掩码的范围之内的,意味着我们 将对C类网络进行子网划分。因为C类网络的默认掩码是255.255.255.0,将C类默认掩码转换为二进制是 11111111.11111111.11111111.00000000,这里的8个0表示可以用8位二进制数来表示IP地址,也就是说C类大网中可有 2的8次方个IP地址,也就是256个IP地址。这道题中的掩码的最后一节是252,转换为二进制是11111100,因为1表示网络号,所以 111111就表示将C类大网划分为(111111)2进制个子网。将111111转换为十进制是64,所以就表示将C类大网划分为64个子网,每个子网 的IP地址数目是256/64=4,去除子网中的第一个表示子网号的IP地址和最后一个表示广播地址的IP地址,子网中的可分配的IP地址数目就是子网中 的总的IP地址数目再减去2,也就是4-2=2个。