动态路由(一) [修改3]

上次我们在“ CISCO设备的基本配置”的 日志中说了静态路由的一些基本 知识,这次我们把动态路由拿出来单独说,因为这部分内容是比较重要的,下面我们先来说说RIP和IGRP,后面再补充EIGRP和OSPF的工作原理。 我是网管博客Qzu�c_�g
(注:在静态路由和动态路由这两种方式之间,还有默认路由,稍后会补充在 CISCO设备的基本配置 中)
使用协议来查找并更新路由表的配置,就叫动态路由,在开始之前,我们必须了解一些关于路由选择协议的基础知识。
路由选择协议基础:
管理距离:管理距离(AD=Administrator Distance)是用来衡量接收来自相邻路由器上路由选择信息的可信度的,其范围是0-255的整数值。如果一个路由器接收到两个对同一远程 网络的 更新内容,路由器首先检查AD值,具有较低AD值的路由信息会被放置到路由表中。但如果两个通告的路由信息拥有同样的AD值,则路由协议的度量值(如跳计 数或链路的带宽值)将被用做寻找到达远程网络最佳路径的依据,如果度量值也相同,那么路由协议将会对这一远程网络使用负载均衡(即它发送的数据包会平分到 每个链路上)。下图是各个路由协议的默认AD值:
路由选择协议
有三类路由选择协议,分别是:
A:距离矢量距离矢量协议通过判断距离查找到达远程网络的最佳路径。数据包每通过一个路由器,称为一跳,使用最少跳数到达网络的路由被认为是最佳路由,矢量表明指向远程网络的方向,RIP和IGRP都是距离矢量路由选择协议,他们发送整个路由表到直接相邻的路由器
B:链路状态链路状态协议 也称为最短路径优先协议,使用该协议的路由器分别创建三个独立的表。其中一个表用来跟踪直接相连的邻居,一个用来判断整个 互联网络的拓扑,而另一个被用于路由选择表。链路状态路由器要比任何使用距离矢量路由选择协议的路由器知道更多关于互联网的情况。OSPF完全是一个链路状态的IP路由选择协议。
C:混合型混合型协议是指将距离矢量和链路状态两种协议结合起来的产物,例如EIGRP
没有一个固定的配置路由选择协议的方式可以适用于每一种应用,然而理解了不同的路由选择协议是如何工作的,那么我们就可以给出更好、更可靠的选择,以满足任何应用中的不同需要。下面我们就这三种路由选择协议来详细解说。
距离矢量路由选择协议:
相 邻的路由器会将接收到的路由表项与自己原有的路由表进行组合,以完善路由表。RIP使用跳计数来决定到达某个互联网络的最佳路径,如果RIP发现对于同一 个远程网络存在有不止一条链路,并且又都具有相同的跳计数,则路由器将会自动执行循环负载均衡,RIP可以对多达6个相同开销的链路实现负载均衡(默认是 4个)。但是当两条链路具有不同的带宽时,使用这类路由选择协议将带来“针孔拥塞”的问题。
路由表中包含有网络号(即目的网段)、输出接口和可达网络的跳计数。从路由器运行路由选择协议开始,到最后完全创建整个网络的路由表,这个过程称为会聚。会聚时间越短的协议越好,但RIP的会聚时间比较缓慢。
下面我们插讲一些非常重要的内容:
路由环路
距 离矢量路由协议会通过定期的广播包含整个路由表的路由更新到所有激活的接口,来跟踪互联网中的任何变化。但是如果某个网络出现瘫痪,实质性的问题就会产 生,特别是,距离矢量路由选择协议的慢会聚会造成矛盾的路由表和路由环路。路由环路的发生是由于每台路由器不能同时或接近同时完成路由表的更新。下面我们 来通过一个实力讲解路由环路以及解决路由环路的方法:
如 上图所示,假设网络5出现故障,路由器E会先告诉C,但是ABD并不知道发生了故障,它们仍继续发送包含网络5可达的路由信息,C发送网络5故障的路由更 新到B,但是AD并不知道出故障,继续发送网络5可达的信息,A就会通告大家说自己知道网络5怎么去(当然D也会这么做),然后B知道了,C也知道了,就 连E也知道了,这时所有到达网络5的数据包都被发送到A(也可能是D),然后A知道的是什么?它知道到网络5必须经过路由器B,而B呢?就更傻了,它接到 A的通知,就把A发过来的数据再发回给A,这就形成了路由环路。
好了,既然路由环路产生了,那我们就要去想办法解决它,且以下几种方式:
最大跳计数:RIP 允许跳计数最大可以达到15,任何经过16跳以上到达的网络都是被认为不可达的。在本例中,在到达15跳的循环后,网络5将被认为不可达。在每个数据包的 头中都包含有跳计数,每经过一个路由器,跳计数自动加1,当到达15以后,下一个接收该数据包的路由器将丢弃该包。这虽然是一个可用的解决方案,但它并没 有删除路由环路,数据包仍然会进入环路。
水平分割:水平分割的具体做法是限制路由器不能将信息发送回接收信息的方向。在本例中使用水平分割可以阻止路由器A发送从有关路由器B处接收的更新信息返回到B。
路由中毒:在上图中,当网络5出现问题,E通过输入网络5的跳计数为16的表项发送给C,来引发一个路由中毒。由于到网络5的路由中毒,C将不再容易接收有关网络5的错误更新,并且C会发送一个毒性反转的更新,告诉其他的路由器。
保持关闭:在 串行链路上连接的丢失然后又恢复都是经常发生的,保持关闭可以阻止定期的更新消息去恢复一个不段开闭(称为翻动)的路由。其工作原理是,当路由器接收到一 个来自相邻路由器的更新,说一个原来可以访问的网络现在不能正常工作时,保持关闭定时器将被启动。如果从相邻路由器接收到一个新的比原来网络度量值更好的 路由更新时,定时器将被取消,这个更新数据被放行。但是如果收到一个等于或者不如以前网络度量的信息,这个更新信息将被忽略,定时器继续工作。
路由信息协议(RIP=Routing Information Protocol)
RIP是一个真正的距离矢量路由选择协议,它每隔30秒发送一次完整的路由表到所有相邻路由器激活的接口,它使用跳计数来决定到达远程网络的最佳方式,并且默认时允许最大跳计数为15,RIP适用于小型网络。
RIPv1是有类路由协议,即在该网络中所有设备必须使用相同的subnet mask,这是因为RIPv1不发送带有子网掩码信息的更新数据,而RIPv2属于无类路由(classless)。
RIP定时器:RIP使用四个不同类型的定时器来管理它的性能。
路由更新定时器:用于设置定时路由更新的时间间隔,默认为30秒,即路由每30秒发送一次自己的完整的路由表到相邻的路由器的激活的接口。
路由失效定时器:即在路由器认定一个路由失效之前所需要等待的时间,默认180秒,在这个时间到期之前,如果路由器没有收到任何有关该路由的更新消息,则指定该路由失效,并且路由器会通告这一情况。
保持失效定时器:当认定某个路由失效以后,路由器将会进入保持失效状态,默认为180秒,这个状态将会一直持续到一个带有更好度量的更新数据包被接收到或者这个定时器到期。
路由刷新定时器:当 认定某个路由失效以后,路由刷新定时器启动,它的间隔是240秒,在保持失效定时器到期之间,该路由仍不可用,则保持失效定时器到期后路由器开始通告该路 由的死亡,并且在路由刷新定时器到期后删除该路由。路由刷新定时器的值必须大于失效定时器,以便有足够的时间来通告路由的死亡。
RIP的配置:(前面已经写过了,直接COPY过来)需要注意的就是RIP的AD值为120,如果有静态路由(1)或者其他的(OSPF110)比RIP更好AD值的,需要先删除以前的配置。
r2(config)#route rip
5i_)j+L{@\0r2(config-router)#network 10.0.0.0                                   //10.0.0.0是直连网段的IP 我是网管博客I(XDv9Z J5V
r2(config-router)#passive-interface s0/0                          //抑制RIP信息从S0/0口发送,但可以接收RIP信息
aQ�?2w2|H0|4Gg0r2(config)#show ip router                                                    //验证配置
]!xD.V+B i{!P0 我是网管博客T/pN5{_(Ho
RIPv2:与RIPv1不同的是,RIPv2是一个无类路由选择协议,它支持VLSM,支持不连续的网络划分,在定时器和最大跳数等其他方面则和RIPv1相同。其配置也相当简单,
r2(config)#route rip
&C{#L�X {S ~a0r2(config-router)#network 10.0.0.0  我是网管博客xAVo5T0L(B"PI
r2(config-router)#version 2                                                  //仅增加这一句即可
内部网关路由协议(IGRP=Interior Gateway Routing Protocol)
IGRP的配置和RIP差不多,但是比RIP多了一个AS(自治 系统号),所有在自治系统中的路由器都必须使用相同的AS,否则将不能交换路由信息。AS的范围是1~65535,一个路由器可以是多个自治系统的成员 (具体配置有待查找)。
IGRP使用带宽来决定如何实现负载均衡,最大可对6条线路实现,其配置如下:
r2(config)#route igrp 10                                                     //同一网络中的路由必须使用相同的AS
)|'b`/v&Qu8C0r2(config-router)#network 192.168.10.0
IGRP(EIGRP)可以在默认的4条(最大6条)不相等代价链路上实现负载均衡,而RIP在默认时能实现4条(最大6条)相同跳数的路由实现负载均衡。IGRP的最大跳计数是255,默认为100,它解决了RIP网络中最大跳计数的问题。
IGRP使用和RIP不同的度量,默认时,IGRP采用带宽和线路延迟作为合成度量判断到达远程网络的最佳路径,可靠性、负载和MTU也都可以作为度量,但默认时没有启用它们。
IGRP定时器:为了控制性能,IGRP在默认的设置中包含有下列定时器。
更新定时器:用于指定应该发送的路由更新消息间隔,默认值为90秒。
失效定时器:用于指定路由器如果在没有接收到某个路由明确的更新信息,而要宣布此路由为无效路由时需要等待的时间。默认时,这个值是三倍于更新时间间隔的,270秒。
保持关闭定时器:用于指定保持关闭时间间隔,默认时为更新时间间隔的三倍并加上10秒,即280秒。
刷新定时器:用于指定某个路由在被删除之前应该在路由表中保持的时间长度,默认时是七倍于更新时间间隔,即630秒。
任何协议都可实现等价的负载均衡(或者它认为是等价的),而IGRP和EIGRP则可以在不等价链路上实现负载均衡,默认为4条链路的负载均衡,最大可达到6条线路(对任何协议都有效)。
下图为RIP和IGRP的对比:
在完成了对路由器的设置之后,验证配置是一见非常重要的事情,我们可以通过如下命令来验证:
show ip route                           
show protocols                         显示所有的被动路由协议和接口上有哪些协议被设置的情况
show ip protocols                    显示被配置在路由器上的路由选择协议
debug ip rip                               命令当路由器发送路由更新时,发送这些更新信息到控制台会话,如果是远程登陆到路由器的话,需要使用terminal monitor命令来接收这个debug产生的输出
debug ip igrp events
debug ip igrp transactions

你可能感兴趣的:(网络,职场,路由,休闲,动态路由)