通信人家园

标题: 子网掩码的一种快捷算法  [查看完整版帖子] [打印本页]

时间:  2016-4-5 12:29
作者: huyisong     标题: 子网掩码的一种快捷算法

经常看到很多朋友在论坛或者群里问关于子网掩码的问题,今天稍微有些空余时间给大家一个快速计算子网掩码的办法。其实跟一般教科书上2的N次方-2这个是一个道理,只不过用了一种大家更能理解的办法而已

图片内容为通过计算工具对同一例子进行计算的结果,大家可进行比对

一、已知子网掩码,计算子网块大小和可用IP地址数
       以255.255.255.224为例
       块大小=256-224=32
       可用IP地址数=块大小-2=30
   
       255.255.192.0
       块大小=256*(256-192)=16384
       可用IP地址数=块大小-2=16382

       计算公式就是
       块大小=256的n-1次方*(256-最后一组不为0的10进制掩码数值)  n=从后往前数最后一组不为0的10进制掩码在第几组

例如:
       255.255.255.224    最后一组不为0的是224  从后往前数它是第1组  n=1  所以算式是256(1-1)*(256-224)=32       粉红色为乘方次数
       255.255.192.0        最后一组不为0的是192  从后往前数它是第2组  n=2  所以算式是256 (2-1)*(256-192)=16384   粉红色为乘方次数


二、根据需要的块大小或者IP地址数求子网掩码


     本帖隐藏的内容首先需要记住几个把C类地址用不同的掩码划分子网时可能产生的块大小数: 2 4 8 16 32 64 128  256(2比较特殊,如果块大小为2那么实际的可用主机数为2-2=0)
       先讲C类划分子网的计算的办法:
       根据需求的IP地址数目加2,再匹配上面几个数字,找到大于或等于且最靠近他的数。用256减去他就是子网掩码的最后一组数值。


       例1:需求的最小可用地址数为33
              在以上数字中大于等于且最靠近(33+2)的一个数为64,子网掩码最后一组=256-64=192    子网掩码为255.255.255.192


       例2:需求的最小可用地址数为178
              在以上数字中大于等于且最靠近(178+2)的一个数为64,子网掩码最后一组=256-256=0    子网掩码为255.255.255.0


        那么如果大于256的数值,怎么办?   首先用它除以256,直到余数小于256。被除了几次,后面就有几组为0。然后余数再用之前的办法进行匹配


        例3:需求的最小可用地址数为68446
                68446/256=267.367...   这个数大于256,所以最后一组为0  再用267.367/256=1.04...  匹配他的数值为2  所有最后一组不为0的掩码为256-                 2=254    这个过程一共被除了2个最后有2组0,最终的子网掩码=255.254.0.0


时间:  2016-4-5 13:35
作者: wlanwwiiffii

学习了,楼主提供了一个好方法
时间:  2016-4-5 14:19
作者: dengjinjia

不错
时间:  2016-8-11 11:43
作者: 万念随心

谢谢楼主了,第二点的例2貌似有点小错:最靠近(178+2)的一个数为256
时间:  2016-8-11 13:25
作者: 通信士兵009


时间:  2016-8-11 13:26
作者: 通信士兵009






通信人家园 (https://www.txrjy.com/) Powered by C114