1969年仅有四节点的ARPA网在美国实验成功,有谁能想到由此演化的互联网会成为世界最大的数据网呢。随着计算机的普及,上网人数的不断增加,越来越多的企业把目光投向互联网。支撑Internet运转的关键是IP技术,在此详细讲解其基本概念及IP的寻址过程。
MAC地址(位于数据链路层)
介质访问控制(Media Access Control)地址一般位于网卡中,用于标识网络设备,控制对网络介质的访问。例如,网络设备要访问传输电缆(网线,位于物理层),必须具备一个MAC地址,发送的数据要到达目的地,必须知道目的地的MAC地址。因为一个网卡具有唯一的MAC地址,所以又叫做物理地址。
网络地址(位于网络层)
因为一个网络地址可以根据逻辑分配给任意一个网络设备,所以又叫逻辑地址。网络地址通常可分成网络号和主机号两部分,用于标识网络和该网络中的设备。采用不同网络层协议,网络地址的描述是不同的,如IPX,以PAD.0134.02d3.es50为例,PAD为网络号,而0134.02d3.es50是标识该网络中设备的主机号。IP协议则用32位二进制来表示网络地址,一般就叫做IP地址。MAC地址用于网络通信,网络地址是用于确定网络设备位置的逻辑地址。
IP地址
为了适应不同大小的网络需求,所有的IP地址被分为不同的类别―Class A、B、C,这就是有类IP地址。可用IP地址的前三位做区分。在计算网络支持的主机数时要减2,是因为全0的主机号用于标识该网络,全1的主机号是该网络的广播地址。广播地址用于标识网络的所有主机,数据发向广播地址就相当于向全网络主机广播。
或者以网络掩码(netmask)作区分。网络掩码和IP一样也是32位二进制数,把网络掩码和IP地址逻辑与得出的结果就是主机号。
有类IP地址(Class IP)的局限
网络的发展出乎设计者的想象。32位的IPv4(IP的第四版本)虽有232个IP地址,但是将IP地址分类的方法,理想化地把网络分为千万级、万级、百级,僵化的选择导致了大量的浪费。而随着网上站点的增加,用于维持网络间通信的路由器路由信息的不断增长,最终将导致路由器无法负荷,只能将部分站点的路由信息丢弃,造成不能访问。
保留地址
在Internet中有部分IP地址是保留作内部网络使用的。采用保留地址,每个局域网都可以为内部网络的众多主机分配一个IP地址。通过NAT地址转换,在访问外部网络时将保留地址转为真实地址,能够满足内部网络采用TCP/IP协议的同时,也保持了Internet上的地址唯一性。
如果内部网络不连入Internet的话,实际上是可以使用任何一类地址。否则必须保证连通网络的地址唯一性。
子网化(Subnetting)
把一个网络再细分成数个小网,就叫子网化。假设一家公司有一个B类地址130.5.0.0,可是需要为各地的分公司分别建立网络。130.5是其网络号,把主机号(16位)分成子网号(8位)和子网主机号(8位)两部分,共有子网28-2个,这样就可以为每个分公司分配一个子网。
子网化是一种解决IP地址紧张的方案。此外,子网化还可以防止路由信息的无限制增长。由于同一网络不同子网的网络号是一致的,所以Internet路由器到各个子网的路由是一致的。
子网化的另一个好处就是无论该网络的拓扑如何改变都不会影响到Internet的路由,Internet路由器也就不用花费大量的资源去计算更新路由信息。
如前所述IP是用于寻址的,所以子网在此就相当于分级寻址。先由Internet路由器根据网络号定位到目的网络,再由内部的路由器根据扩展网络号进一步定位到目的网络中的子网络。
路由器与路由协议
路由协议分为内部网关协议IGP和外部网关协议EGP两种,各用于自治系统内部和自治系统之间,其中IGP又分为距离向量和链路向量。距离向量是定期向相邻的路由器交流整个路由表的信息,如RIPv1、IGRP。而链路向量只在链路状态发生改变时向所有的路由器交流链路状态信息,如OSPF。而象EIGRP则同时具有两种协议的特点。
可变长度子网掩码(VLSM)
在使用有类别路由协议时,因为不能跨主网络交流掩码,所以必须连续寻址且要求同一个主网络只能用一个网络掩码。对于大小不同的子网,只能按最大子网的要求设置子网掩码,造成了浪费。尤其是连接路由器的网络,明明只需要两个IP地址,分配的地址却和最大的子网一样。
无类别路由协议的提出为VLSM的实施提供了可能。对同一个主网络采用不同的子网掩码,能节省大量的地址空间,允许非连续寻址则使网络的规划更灵活。
路由汇总(Route Summarization)
随着企业上网工程的深入,路由器的增多不但让路由表变大,增加查找的时间,而且加大了数据处理转发的过程。
路由汇总要求地址连续(是通配符掩码的要求,只有通配符掩码才能用一条路由标识多个网络,实现路由汇总),减少了路由表的条目;在地址连续下,路由器可以根据IP地址的前几位决定将数据发向目的地,以加快路由转发的处理过程。
路由器工作原理与第三层交换
第三层交换是在第二层交换机上插入一个路由模块,利用交换机的高速背板路由模块和其它的交换模块高速交换数据。在这种情况下,当A主机要向B主机发送数据时,A将B的IP地址和自己的相比较。如果确认B与A是同一个子网,A将发送一个广播ARP,B返回其MAC地址;于是A用MAC封装数据后,发向交换机,交换机通过查找MAC与端口对应表将数据发向B主机的端口。如果A与B不在同一子网,A向预先设置的缺省网关(就是路由模块)发送ARP请求。路由模块查找是否在以往的交换中已保存有B主机的MAC地址,有则返回给A主机,否则对B所在子网广播ARP,将获得的MAC保存再发回给A。以后A要再发送数据给B,就不用通过路由模块,直接的MAC封装,使子网间的数据交换速度和同一子网的相差无几。
为了解决IP地址日愈紧张的情况,IPv6新一代的IP地址规范已经推出,通过将IPv4的32位二进码升级到IPv6的128位,地址紧张的情况将一去不复返。