【转载】如何用子网掩码得到网络/主机地址
原文:如何用子网掩码得到网络/主机地址
作者:erline
既然子网掩码这么重要,那么它是如何分离出ip地址中的网络地址和主机地址的呢?
过程如下:
1.将ip地址与子网掩码转换成二进制;
2.将二进制形式的ip地址与子网掩码做'与'运算,将答案化为十进制便得到网络地址;
3.将二进制形式的子网掩码取'反';
4.将取'反'后的子网掩码与ip地址做'与'运算,将答案化为十进制便得到主机地址。
下面我们用一个例子给大家演示:
假设有一个I P 地址:192.168.0.1
子网掩码为:255.255.255.0
化为二进制为:I P 地址11000000.10101000.00000000.00000001
子网掩码11111111.11111111.11111111.00000000
将两者做'与'运算得:11000000.10101000.00000000.00000000
将其化为十进制得:192.168.0.0
这便是上面ip的网络地址,主机地址以此类推。
小技巧:由于观察到上面的子网掩码为C类地址的默认子网掩码(即未划分子网),便可直接看出网络地址为ip地址的前三部分,即前三个字节。
解惑:
什么?你还是不懂?问我为什么要做'与'运算而不是别的?其实你仔细观察一下上面的例子就应该能明白。
'1'在做'与'运算时,不影响结果,'0'在做'与'运算时,将得到0,利用'与'的这个特性,当管理员设置子网掩码时,即将子网掩码上与网络地址所对应的位都设为'1',其他位都设为'0',那么当作'与'时,ip地址中的网络号将被保留到结果中,而主机号将被置0,这样就解析出了网络号,解析主机号也一样,只需先把子网掩码取'反',在做'与'。
To improve is to change, to be perfect is to change often.