打印本文 打印本文  关闭窗口 关闭窗口  
IP地址知识 子网掩码与子网划分
作者:陈鹏  文章来源:eNet  点击数  更新时间:2009/9/9 21:26:39  文章录入:陈鹏  责任编辑:陈鹏

一、摘要

  学这篇教程需要一定的基础(高手当然除外),建议读过前面的关于ip的教程后,再读本教程。准备好了吗?我们开始吧!!

  二、子网掩码的概念及作用

  子网掩码是一个应用于TCP/IP网络的32位二进制值,它可以屏蔽掉ip地址中的一部分,从而分离出ip地址中的网络部分与主机部分,基于子网掩码,管理员可以将网络进一步划分为若干子网。

  三、为什么需要使用子网掩码

  虽然我们说子网掩码可以分离出ip地址中的网络部分与主机部分,可大家还是会有疑问,比如为什么要区分网络地址与主机地址?区分以后又怎样呢?那么好,让我们再详细的讲一下吧!

  在使用TCP/IP协议的两台计算机之间进行通信时,我们通过将本机的子网掩码与接受方主机的ip地址进行'与'运算,即可得到目标主机所在的网络号,又由于每台主机在配置TCP/IP协议时都设置了一个本机ip地址与子网掩码,所以可以知道本机所在的网络号。

  通过比较这两个网络号,就可以知道接受方主机是否在本网络上。如果网络号相同,表明接受方在本网络上,那么可以通过相关的协议把数据包直接发送到目标主机;如果网络号不同,表明目标主机在远程网络上,那么数据包将会发送给本网络上的路由器,由路由器将数据包发送到其他网络,直至到达目的地。在这个过程中你可以看到,子网掩码是不可或缺的!

  四、如何用子网掩码得到网络/主机地址

  既然子网掩码这么重要,那么它是如何分离出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,这样就解析出了网络号,解析主机号也一样,只需先把子网掩码取'反',在做'与'。

 
打印本文 打印本文  关闭窗口 关闭窗口