IP地址和子网掩码的基础知识IP地址的概念1.IP地址组成IP地址源于Internet,是一种层次结构的地址,适合于众多的互联网。Internet中每一台主机至少有一个IP地址,且这个IP地址必须是全网唯一的。一个IP地址标识一个网络和与此网络相连的一台主机。IP地址由4个字节32位二进制数组成,使用点分十进制数表示。4个字节的IP地址分为两个层次部分:网络号(NetworkID)和主机号(HostID),如202.93.120.44。在网络寻址时只需要网络号,从网络中经过多个网络(网关)最终到达目的网络,用网络号即能判断是否到达目的网络,与主机号无关,主机号用于在目的网络中区分某台主机。一个基本的地址分配原则:要为同一网络的所有主机分配相同的网络标识号,同一网络内不同主机必须分配不同的主机标识号(主机号)以区分主机。不同网络内的每台主机必须有不同的网络标识号。要使自己的主机加入Internet,为了避免IP地址与其他网络相冲突,必须向InternetNIC(网络信息中心)获得IP地址和域名。2.IP地址的类别因特网标准定义了五种类型的IP地址。三种基本种类是A类、B类和C类。如表1-1所示:种类IP地址网络ID主机IDAW.X.Y.ZWX.Y.ZBW.X.Y.ZW.XY.ZCW.X.Y.ZW.X.YZ表1-1IP地址的八位组图1-1显示了根据地址种类划分网络ID和主机ID的情况。A类网络地址为主机ID分配了24位,为网络设备提供了更多可用的主机ID;B类网络地址提供的网络ID数与每个网络ID的主机ID数目是一样的,使管理员能够配置大量的网络,但每个网络允许拥有较少的主机数;C类网络地址提供的网络ID较多,但允许每个网络ID拥有的主机数目很少。(1)A类地址:一个字节的网络地址,最高位为0,允许有126个网络,每个网络中用3个字节表示主机地址,能够容纳多达16777214个主机ID。其格式如表1-2所示。使用A类地址时可分配的网络ID范围是:1.X.Y.Z~126.X.Y.Z。A类地址适合大型网络。网络ID主机ID008162432表1-2A类地址格式(2)B类地址:两个字节网络地址,最高两位为10,接下来的14位为网络地址,允许16384个网络,每个网络允许65534台主机,其格式如表1-3所示。使用B类地址时可分配的网络ID范围是:128.0.Y.Z~191.255.Y.Z。B类地址适合于中型网络。网络ID主机ID1008162432表1-3B类地址格式(3)C类地址:最高3位为110,接下来的21位为网络地址,允许有2097152个网络,每个网络主机数为254,其格式如表1-4所示。使用C类地址时可分配的网络ID范围是:192.0.0.Z~223.255.255.Z。C类地址适合小型网络。网络ID主机ID11008162432表1-4C类地址格式(4)D类地址:多地址,实现一点对多点的传送,常用于X.25、帧中继(FR)和ATM等使用点对点协议的网络。这类地址不支持全网广播,需要配置D类地址实现一点对多点的传送。D类地址的前4位为1110,即地址从224.0.0.0到239.255.255.255。,其格式如表1-5所示。多播地址111008162432表1-5D类地址格式(5)E类地址:用于将来扩展,同时也用于实验目的。它们不能分配给主机。E类地址前五位为11110。其格式如表1-6所示。1111008162432表1-6E类地址格式(6)赋予主机IP地址:表1-7总结了A类、B类、C类网络编址。如表所示,一个IP地址的种类可以从最高三位来判断,用两位就足以区分三个主要类型(A类、B类、C类)。定义网络ID位网络ID范围可定义网络的数目用于主机ID的范围互联网上定义的主机数目A类71~1261262416777214B类14128~191163841665534C类21192~23320971528254表1-7因特网地址的类型起始范围终止范围A类1.0.0.1126.255.255.254B类128.0.0.1191.255.255.254C类192.0.0.1223.255.255.254表1-8主机ID的有效范围(7)私有地址:IP地址按用途分为私有地址和公有地址两种。所谓私有地址就是在A、B、C三类IP地址中保留下来为组织机构内部分配地址时所使用的IP地址。私有地址主要用于在局域网中进行分配,在Internet上是无效的。这样可以很好的隔离局域网和Internet。私有地址在公网上是不能被识别的,必须通过NAT将内部IP地址转换成公网上可用的IP地址,从而实现内部IP地址与外部公网的通信。公有地址是在广域网上使用的地址,但在局域网中同样也可以使用。RFC1918定义了3类私有地址段:私有地址范围A类10.0.0.1~10.255.255.254B类172.16.0.1~172.31.255.254C类192.168.0.1~192.168.255.254表1-9RFC1918定义的3类私有地址段3.特殊用途IP地址(1)网络地址:主机号全0。(2)广播地址:主机号全1,含这类IP地址的IP分组被广播到网络上的每一个节点。(3)回送地址:127.0.0.0或127.0.0.1,本地回环(Loopback)测试地址。(4)全0地址:0.0.0.0常用于表示默认网络,在路由表中构造默认路径。4.子网的划分出于管理、性能和安全方面的考虑,许多单位把单一的网络划分为多个物理网络,并使用路由器把它们连接起来。子网划分(Subnetting)技术能够使单个网络地址横跨几个物理网络,如图1-1所示。互联网中的每个物理网络都被称为子网。图1-1大型网络可被分成多个子网来创建一个互联网络互联网络(internetwork)这个词通常简化为互联网(internet),指由路由器连接的一个或多个网络,它通常是指单位的内部网络。而因特网(Internet,I为大写)这个词,则指连接着世界上数百万台计算机的网络。进行子网划分的原因有很多。其中一个原因是A类网或B类网的地址空间太大,以至于单一的未使用路由的网络中无法使用全部地址。为了有效地使用地址空间,有必要把可用的地址分配给更多较小的网络。随着网络的增长,容纳了更多的主机,因而网络通信变得更为繁忙。就像高峰期的快车道,由于交通过于繁忙而出现堵塞。繁忙的网络通信信号导致冲突、丢失数据包以及重传,因而降低了主机之间的通信效率。路由器像一堵墙把子网隔离开来,这样本地通信就不会转发的其他子网,同一子网中主机之间的广播和通信,只能在它们所属的子网中进行。图1-2路由器作为子网之间的桥,降低广播通信量对于需要相互通信的不同子网上的主机,可以配置路由器筛选通信,以使需要传送到其他子网上的信息被转发,如图1-3所示。图1-3路由器使要发送到远程子网主机上的信息被转发出于安全的考虑,单位也可以创建隔离网络的子网。一个部门也许会把信息放在存有敏感信息的网络服务器上,可以配置子网,以阻止来自互联网内部其他子网的通信,如图1-4所示。图1-4出于安全原因可以隔离子网1)子网编址理解子网编址最容易的方法是,假设一个网站,其用于分配给它的单个IP网络地址,但这个网站包含两个以上的物理网络,每个物理网络使用可用主机ID的一部分。当一个网络被正确划分为子网时,只有路由器知道有多个物理网络存在,并且知道如何路由它们之间的通信。(1)划分IP地址。IP地址的主机部分则由管理员进一步划分,以标识主机所在的某个子网,如图1-5所示。这就产生了一个层次型的编址方案,它支持互联网中子网间的路由,而且在更高一层,它支持互联网与因特网之间的路由。在互联网中,三部分分为网络ID(NetworkID)、子网ID(SubnetID)及主机ID(HostID)。网络ID主机ID网络ID子网ID主机ID图1-5IP地址可以进一步划分,以支持子网的划分把IP地址的主机部分划成两部分,就能够建立另外的子网地址。然后,使用IP地址的一部分把子网标识为互联网中唯一的网络。这就是子网划分。网络管理员必须通过给子网中的每台主机指定子网掩码,来确定如何来进行这种划分。子网中的所有主机必须配置相同的子网掩码。子网编址涉及IP地址的认真管理以及正确地定义子网掩码。如何划分主机地址(为子网部分保留的位数),取决于具体需要。如图1-6所示,为子网部分保留的位数越多,可分配的主机的位数就越少,这就意味着在一个子网中可容纳的主机就越少。需要较少的子网且拥有大量主机的网站,应定义使用较少位数划分子网的子网掩码;而需要较多子网且拥有主机较少的网站,应定义使用较多位数划分子网的子网掩码。B类地址网络ID子网ID1~254主机ID1~2541008162432图1-6可以指定用于子网划分的位数(2)子网掩码。子网掩码是一个32位的二进制数,它告诉TCP/IP主机,IP地址的那些位对应于网络地址,哪些位对应于主机地址。TCP/IP协议使用子网掩码判断目标主机地址是位于本网段,还是位于远程子网。屏蔽(Masking)网络地址即可以实现以上判断,屏蔽只是简单地指定网络ID和主机ID的分界点。子网掩码中对应于网络地址的所有位都被设为1,而对应于主机地址的所有位都被设为0。如:A类地址默认子网掩码:255.0.0.0B类地址默认子网掩码:255.255.0.0C类地址默认子网掩码:255.255.255.0TCP/IP比较子网掩码和IP地址时,所进行的运算是“逻辑位与(LogicalBitwiseAND)”。下面的例子说明了这种运算是如何进行的。假定一台主机的配置如下(使用二进制数来说明其内部工作原理):例1172251651IP地址10101100000110010001000000110011子网掩码11111111111111110000000000000000网络ID1010110000011001主机ID0001000000110011请注意,子网掩码是如何在第三个八位组之前划分IP地址的。把子网掩码的前面两个八位组的位全部设为1,即可以做到这一点。这个子网掩码导致IP按如下方式理解IP地址:IP地址172.25.16.51子网掩码255.255.0.0网络ID172.25主机ID16.51若子网掩码是255.255.0.0,则这个B类地址完全属于单个网络。然而,如果这个网络连接到因特网上,则在单个网络上使用宝贵的B类地址太浪费了(主机数:65535台)。当然,可以把这个地址进行子网划分,使其能用于路由器连接的互联网。现在看看一些实例,以了解如何划分B类地址。例2172251651IP地址10101100000110010001000000110011子网掩码11111111111111111111111100000000网络ID101011000001100100010000主机ID00110011对于B类地址,第三个八位组通常是主机ID的一部分,但由于有了子网掩码,第三个八位组现在也成了网络ID的一部分,IP地址仍然不变(172.25.16.51)。但是由于子网掩码不同,IP协议“看到”的IP地址是不同的。子网掩码导致IP协议按下列方式解释IP地址:IP地址172.25.16.51子网掩码255.255.255.0网络ID172.25.16主机ID51子网掩码255.255.255.0能够使B类的网络ID被分配给253个子网(为什么不是255个接下来就有一些规则和解释)。这就使得单一的B类网络地址能够支持包含253个子网的一个大范围互联网。子网划分后,可用的网络从172.25.1.0到172.25.254.0。每个子网可容纳254台主机。下述例子没有在八位组边界上准确地划分子网:例3172251651IP地址10101100000110010001000000110011子网掩码11111111111111111110000000000000网络ID1010110000011001000主机ID1000000110011在此例中,第三个八位组被细分,前三位