小白子网掩码使用实战
有ip地址:122.222.137.5
子网掩码:255.255.255.252
试着计算出可以和该ip地址通讯的同网段地址
首先我们知道 每一段ip地址由八位组成
新手可以通过凑的方式熟练凑出ip地址的展开形式
例如:122=64+32+16+8+2
然后将所有八位列出来,根据算式如下记录,每凑出一位写“1” 其余写“0”
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
0 | 1 | 1 | 1 | 1 | 0 | 1 | 0 |
所以122=01111010
同理我们可以算出每一组的展开形式,再举一例
222=128+64+16+8+4+2
方法如上
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 |
所以222=11011110
看出点窍门没有,当然大佬肯定都能心算了(笑)
接下来我们计算子网掩码
我们能正着将掩码拆开,自然可以反着将掩码装回去
距离252=128+64+32+16+8+4
表格我不画了,大伙可以自己算算展开以后是什么形式
当然我们可以反过来想255是全1 那252照255差3呗 拆开就是2+1
也就是说255的展开是11111111,那252就是11111100
随后
将算完的122.222.137.5和255.255.255.252全部拆开得
01111010.11011110.10010011.00000101
11111111.11111111.11111111.11111100
然后将这两组进行与运算,也就是“&”
这里简单介绍一下与运算的规则
两位同时为“1”,结果才为“1”,否则为“0”
这里不涉及负数,就不用细谈了就按着标红的记就好了
将如上两组进行与运算的结果是
01111010.11011110.10010011.00000100
所有与子网掩码运算过以后能得到与上面结果相同的就是可以通讯的地址
也就是说什么能与掩码与出如上这一串呢 答案是
01111010.11011110.10010011.00000111 = 122.222.137.7
01111010.11011110.10010011.00000110 = 122.222.137.6
01111010.11011110.10010011.00000100 = 122.222.137.4
请注意 我们算出每一个网段以后要“掐头去尾”
具体原因感兴趣的同学可以去搜索一下
所以唯一可以和122.222.137.5 255.255.255.252通讯的地址是122.222.137.6
问题解决了,另外再简单提一嘴另一种掩码的表示方法
122.222.137.5/30
这个/30其实就是代表着255.255.255.252
具体转换方法也是将其展开11111111.11111111.11111111.11111100
因为11111111.11111111.11111111.11111111是/32
所以上边那一串是/30
至此简单的子网掩码问题已经可以得到解决了