比如说一个192.168.33.50/29的IP 我们平常会用单独一个网络地址做设备的管理地址,比如说1.1.1.1/32 它的子网为255.255.255.255
我们来看下面一个情况32-29=32的3次方=8因此上述网络地址拥有8个网络地址,首尾去掉,可用数为6个那么 如何判定此地址在哪个范围内呢?
同样的方法,我们来看最后一位50,29的网段拥有8个地址,那么我们来计算下8乘以几离50最近,得到8*6=48,因此他的子网就是192.168.33.48/29网络地址从192.168.33.48-192.168.33.55 首尾去掉,刚好6个地址50位于可用地址的第二个。子网号怎么算呢,我们只用看第四位就OK了,2的3次方为8,256-8=248,结果子网掩码为255.255.255.248……原理是每个网络位有256个地址,刚好为2的8次方。如果是/28的子网就是256-2*4=240,子网为255.255.255.240。
这个算法目前我用的特别顺,几乎不会出错,没什么技巧可言。可以再举个例子给大家
192.168.50.44/22 ,这个算起来会慢点,但一般情况下足够各种应用。32-22=10 2的10次方为1024,也就是说有1022个地址可用,如果还用上述方法计算太慢,我们这样直接算第三个网络位,我们知道第三个网络位一般为24,那么24-22=2 , 2的2次方为4 , 4*12=48离50最近(可以用50除以4算),注意所以算法都要比给的地址小,大了就算错了。所以可用地址就出来了 192.168.48.0-192.168.51.255,去除首尾,结果就出来了。子网同上,看第三个网络位2的2次方为4,256-4=252,子网255.255.252.0……