1 路由就是寻径,是指路由器在收到IP包后,去查找自已的路由信息进行转发的过程。
路由信息就是去往目的地的一条信息,它指明了去往目的地的方向,通常也把路由信息简称为路由。
要完成对数据包的传输,路由器必须知道并处理哪些信息:
1、目的地址
2、相邻路由器,并且能够从邻居处获得远程网络的信息
3、到远程网络的所有可能的路径
4、能计算出到达远程网络的最佳路径
5、要能够维护并验证路由信息,在路径发生改变时,要能很快的知道
2 一个路由条目至少包含3个要素:子网,子网掩码和下一跳地址(在有
些设备中使用的是下一跳设备),其主要含义如下:
子网:目标子网的网络号,默认路由的子网号为0.0.0.0。
子网掩码:目标子网的子网掩码,默认路由的子网掩码为0.0.0.0。
下一跳地址:目标子网数据包的转发地址。在有些路由器中可以使用下一跳设备,设备通常是本地接口。
3 Linux系统中的路由表
在计算机中通常不止一个路由条目,能正常通信的计算机至少有两个路由条目,而路由器中的路由条目可能会更多。这些路由条目存储于路由表中,如果要在Linux系统中查看路由表,可以使用route命令。
4静态路由和动态路由
路由的来源有三种,第一种是路由器和计算机根据自身的网络连接自动生成的直联路由,即与自身所在同一子网的路由,只要网络持续连接直联路由就会一直存在并生效;第二种是由管理员手动添加的静态路由,静态路由仅适合于网络运作简单的环境,Linux系统中添加的路由多为静态路由;最后一种是由动态路由协议生成的动态路由。
静态路由的缺点很明显,当路由器数量增加时,子网数量也增多,这时就需要在每个路由器上为每个子网添加路由,否则就会出现无法访问的问题。如果其中一台路由器出现问题,路由条目就会失效,也会造成无法访问的问题。为了解决静态路由的这些问题,动态路由协议应运而生,动态路由协议会根据网络状况调整各路由器的路由条目,最大程度上保持网络通畅。
常见的动态路由协议有RIP、OSPF、BGP、IGRP等。
(1)RIP(Routing Information Protocol,路由信息协议)是最简单的路由协议,RIP协议要求路由器以30秒为周期,向相邻的路由器交换信息,从而让每个路由器都建立路由表。RIP建立的路由表以距离为单位,通过一个路由器称为一跳,RIP总是希望数据包通过最少的跳数到达目的地。RIP最大的优点是配置简单,但仅适用于小型网络,如果跳数超过15,数据包将不可达。由于路由器每30秒向相邻路由器交换信息,因此RIP协议的收敛时间相对较长(收敛时间是指路由协议让每个路由器建立精确并稳定的路由表的时间长度,时间越长,网络发生变化后,路由表生成得越慢,网络稳定需要的时间也越长)。
(2)OSPF(Open Shortest Path First,开放最短路径优先)是一个相对比较复杂的动态路由协议。OSPF一般用于一个路由域内,称为自治系统(Autonomous System)。在这个自治系统内部,所有加入到OSPF的路由器都会通过路由协议相互交换信息,以维护自治系统的结构数据库,最后路由器会通过数据库计算出OSPF路由表。与RIP相比,OSPF协议根据链路状态计算路由表,更适合于大型网络,其收敛速度也更快。
(3)BGP(Border Gateway Protocol,边界网关协议)是一个用来处理自治系统之间的路由关系的路由协议,最适合处理像Internet这样十分巨大的网络。BGP即不完全是距离矢量协议,也不完全像OSPF那样使用链路状态,BGP使用的是通路向量路由协议。BGP使用TCP协议进行可靠的传输,同时还使用了路由汇聚、增量更新等功能,极大地增加了网络可靠性
和稳定性。
(4)IGRP(Interior Gateway Routing Protocol,内部网关路由协议)是由Cisco公司设计的专用于Cisco设备上的一种路由协议。IGRP是一种距离向量路由协议,其要求路由器以90秒为周期向其相邻的路由器发送路由表的全部或部分,由此区域内的所有路由器都可以计算出所有网络的距离。由于使用网络延迟、带宽、可靠性及负载等都被用作路由选择,因此IGRP
的稳定性相当不错。