CISCO实验教程之四RIP动态路由协议配置文档格式.docx
《CISCO实验教程之四RIP动态路由协议配置文档格式.docx》由会员分享,可在线阅读,更多相关《CISCO实验教程之四RIP动态路由协议配置文档格式.docx(6页珍藏版)》请在冰豆网上搜索。
由于Internet上执行BGP协议的路由器通常拥有数十万条路由表项,所以该项目也是路由器能力的重要体现。
路由表项如下:
首先,路由表的每个项的目的字段含有目的网络前缀。
其次,每个项还有一个附加字段,还有用于指定网络前缀位数的子网掩码(addressmask).第三,当下一跳字段代表路由器时,下一跳字段的值使用路由的IP地址。
理解网际网络中可用的网络地址(或网络ID)有助于路由决定。
这些知识是从称为路由表的数据库中获得的。
路由表是一系列称为路由的项,其中包含有关网际网络的网络ID位置信息。
路由表不是对路由器专用的。
主机(非路由器)也可能有用来决定优化路由的路由表。
路由表项的类型
路由表中的每一项都被看作是一个路由,并且属于下列任意类型:
网络路由
网络路由提供到网际网络中特定网络ID的路由。
主路由
主路由提供到网际网络地址(网络ID和节点ID)的路由。
主路由通常用于将自定义路由创建到特定主机以控制或优化网络通信。
默认路由
如果在路由表中没有找到其他路由,则使用默认路由。
例如,如果路由器或主机不能找到目标的网络路由或主路由,则使用默认路由。
默认路由简化了主机的配置。
使用单个默认的路由来转发带有在路由表中未找到的目标网络或网际网络地址的所有数据包,而不是为网际网络中所有的网络ID配置带有路由的主机。
路由表结构
路由表中的每项都由以下信息字段组成:
网络ID
主路由的网络ID或网际网络地址。
在IP路由器上,有从目标IP地址决定IP网络ID的其他子网掩码字段。
转发地址
数据包转发的地址。
转发地址是硬件地址或网际网络地址。
对于主机或路由器直接连接的网络,转发地址字段可能是连接到网络的接口地址。
接口
当将数据包转发到网络ID时所使用的网络接口。
这是一个端口号或其他类型的逻辑标识符。
跃点数
路由首选项的度量。
通常,最小的跃点数是首选路由。
如果多个路由存在于给定的目标网络,则使用最低跃点数的路由。
某些路由选择算法只将到任意网络ID的单个路由存储在路由表中,即使存在多个路由。
在此情况下,路由器使用跃点数来决定存储在路由表中的路由。
注意
前面的列表是路由器所使用的路由表中字段的典型列表。
不同的可路由协议路由表中的实际字段可能会改变。
二、RIP动态路由协议介绍
RIP(RoutingInformationProtocols,路由信息协议)是使用最广泛的距离向量协议,它是由施乐(Xerox)在70年代开发的。
当时,RIP是XNS(XeroxNetworkService,施乐网络服务)协议簇的一部分。
TCP/IP版本的RIP是施乐协议的改进版。
RIP最大的特点是,无论实现原理还是配置方法,都非常简单。
度量方法
RIP的度量是基于跳数(hopscount)的,每经过一台路由器,路径的跳数加一。
如此一来,跳数越多,路径就越长,RIP算法会优先选择跳数少的路径。
RIP支持的最大跳数是15,跳数为16的网络被认为不可达。
路由更新
RIP中路由的更新是通过定时广播实现的。
缺省情况下,路由器每隔30秒向与它相连的网络广播自己的路由表,接到广播的路由器将收到的信息添加至自身的路由表中。
每个路由器都如此广播,最终网络上所有的路由器都会得知全部的路由信息。
正常情况下,每30秒路由器就可以收到一次路由信息确认,如果经过180秒,即6个更新周期,一个路由项都没有得到确认,路由器就认为它已失效了。
如果经过240秒,即8个更新周期,路由项仍没有得到确认,它就被从路由表中删除。
上面的30秒,180秒和240秒的延时都是由计时器控制的,它们分别是更新计时器(UpdateTimer)、无效计时器(InvalidTimer)和刷新计时器(FlushTimer)。
路由循环
距离向量类的算法容易产生路由循环,RIP是距离向量算法的一种,所以它也不例外。
如果网络上有路由循环,信息就会循环传递,永远不能到达目的地。
为了避免这个问题,RIP等距离向量算法实现了下面4个机制。
水平分割(splithorizon)。
水平分割保证路由器记住每一条路由信息的来源,并且不在收到这条信息的端口上再次发送它。
这是保证不产生路由循环的最基本措施。
毒性逆转(poisonreverse)。
当一条路径信息变为无效之后,路由器并不立即将它从路由表中删除,而是用16,即不可达的度量值将它广播出去。
这样虽然增加了路由表的大小,
但对消除路由循环很有帮助,它可以立即清除相邻路由器之间的任何环路。
触发更新(triggerupdate)。
当路由表发生变化时,更新报文立即广播给相邻的所有路由器,而不是等待30秒的更新周期。
同样,当一个路由器刚启动RIP时,它广播请求报文。
收到此广播的相邻路由器立即应答一个更新报文,而不必等到下一个更新周期。
这样,网络拓扑的变化会最快地在网络上传播开,减少了路由循环产生的可能性。
抑制计时(holddowntimer)。
一条路由信息无效之后,一段时间内这条路由都处于抑制状态,即在一定时间内不再接收关于同一目的地址的路由更新。
如果,路由器从一个网段上得知一条路径失效,然后,立即在另一个网段上得知这个路由有效。
这个有效的信息往往是不正确的,抑制计时避免了这个问题,而且,当一条链路频繁起停时,抑制计时减少了路由的浮动,增加了网络的稳定性。
即便采用了上面的4种方法,路由循环的问题也不能完全解决,只是得到了最大程度的减少。
一旦路由循环真的出现,路由项的度量值就会出现计数到无穷大(CounttoInfinity)的情况。
这是因为路由信息被循环传递,每传过一个路由器,度量值就加1,一直加到16,路径就成为不可达的了。
RIP选择16作为不可达的度量值是很巧妙的,它既足够的大,保证了多数网络能够正常运行,又足够小,使得计数到无穷大所花费的时间最短。
邻居
有些网络是NBMA(Non-BroadcastMultiAccess,非广播多路访问)的,即网络上不允许广播传送数据。
对于这种网络,RIP就不能依赖广播传递路由表了。
解决方法有很多,最简单的是指定邻居(neighbor),即指定将路由表发送给某一台特定的路由器。
RIP的缺陷
RIP虽然简单易行,并且久经考验,但是也存在着一些很重要的缺陷,主要有以下几点:
1、过于简单,以跳数为依据计算度量值,经常得出非最优路由;
2、度量值以16为限,不适合大的网络;
3、安全性差,接受来自任何设备的路由更新;
4、不支持无类IP地址和VLSM(VariableLengthSubnetMask,变长子网掩码);
5、收敛缓慢,时间经常大于5分钟;
6、消耗带宽很大。
三、RIP动态路由协议的配置命令(以下图为例)
1、在下面的网络里,有三台路由器,所有的路由器都运行RIP协议,仅要实现三台路由器互通
配置:
Joe(config)#routerrip
Joe(config-router-rip)#network192.168.0.0/24
Joe(config-router-rip)#network192.168.1.0/24
Hamer(config)#routerrip
Hamer(config-router-rip)#network192.168.1.0/24
Hamer(config-router-rip)#network133.81.1.0/24
Tom(config)#routerrip
Tom(config-router-rip)#network192.168.1.0/24
Tom(config-router-rip)#network133.81.2.0/24
2、在下面的网络里,有三台路由器,所有的路由器都运行RIP协议,要实现:
(1)Ros的E0端口接收Hata和Bito发来的路由更新报文。
(2)Ros在E0发送的更新报文仅发送给Bito。
Ros的配置如下:
Ros(config)#routerrip
Ros(config-router-rip)#network192.168.1.0/24
Ros(config-router-rip)#network10.8.11.0/24
Ros(config-router-rip)#passive-interfaceeth0/0
Ros(config-router-rip)#neighbor192.168.1.35
Bito的配置如下:
Bito(config)#routerrip
Bito(config-router-rip)#network192.168.1.0/24
Bito(config-router-rip)#network137.1.1.3/24
Hata的配置如下:
Hata(config)#routerrip
Hata(config-router-rip)#network192.168.1.0/24
3、如下图所示:
有三台路由器,Melu和Haha现在正常运行,现要添加一台名称为Toba的HOS路由器使Toba和Haha互相联通,并且不能破坏现在Melu和Haha的运行状态。
已知Melu和Haha运行的协议为:
(1)Haha上运行的是RIPv1,无认证配置。
(2)Melu上运行的是RIPv2,无认证配置。
分析:
HOS默认值是,RIP发送版本1,接收版本1和版本2的update报文。
这样我们只要在Toba上运行起RIP,并且指定192.168.0.1/24为RIP活动网络范围,Toba就可以和Haha建立联通了。
由于Melu运行的版本为RIPv2,只要让Toba发送RIPv2报文就可以了。
因而,Toba可以配置为:
Toba(config)#routerrip
Toba(config-router-rip)#network192.168.0.0/24
Toba(config-router-rip)#network10.8.11.0/24
Toba(config-router-rip)#exit
Toba(config)#interfaceeth0/0
Toba(config-if-eth0/0)#ipripsendversion2
4、如下图所示:
有两台HOS路由器,现在要求实现Wed和Hax联通并且要有MD5认证。
有认证的情况下实现两台路由器的互联,这两台路由器必须配置相同的认证方式和密钥才能进行双方的路由的交换,值得注意的是双方必须发送版本2
Hax(config)#keychainwan
Hax(config-keychain)#key1
Hax(config-keychain-key)#keystringwan
Hax(config-keychain-key)#exit
Hax(config-keychain)#exit
Hax(config)#interfaceeth0/0
Hax(config-if-eth0/0)#ipripauthenticationkeychainwan
Hax(config-if-eth0/0)#ipripauthenticationmodemd5
Hax(config-if-eth0/0)#ipripsendversion2
Hax(config-if-eth0/0)#ipripreceiveversion2
5、监视和维护RIP
说明:
上面的列表显示了RIP路由表的详细信息。
第一列显示的是每条路由来自哪种方式。
如:
RIP表示是本路由从其它路由器学习到的路由,Connect表示该路由是直连路由。
第二列的Network指定了该路由目标地址范围。
第三列NextHop是本路由的下一条地址。
第四列Metric是本路由的度量值。
第五列From标明本路由来自何处。
第六列Time用来显示当前定时器的已经定时时间长度,当路由没有过期的时候,显示的是无效定时时间长度,当路由过期时,显示的是删除定时器的时间长度。
继续阅读