CCNP路由实验之三 动态路由之RIP

全面掌握CCNP路由技术的2011年版学习指南 CCNP(Cisco Certified Network Professional)是网络领域内的重要认证之一,是Cisco官方推出的认证体系中的中级认证。通过CCNP认证,表示专业人员具备了设计、实施和维护复杂网络的能力,能够处理网络安全、语音、无线和视频等多种高级技术。动态路由协议用于在网络设备之间自动交换路由信息。它们能够适应网络拓扑的变化,自动更新路由表。动态路由协议适用于大型或复杂的网络环境。 阅读详情


CCNP路由实验之三动态路由协议之RIP

 

 动态路由协议可以自动的发现远程网络,只要网络拓扑结构发生了变化,路由器就会相互交换路由信息,不仅能够自动获知新增加的网络,还可以在当前网络连接失败时找出备用路径。根据是否在一个自治域内部使用,动态路由协议分为内部网关协议(IGP)和外部网关协议(EGP)。这里的自治域指一个具有统一管理机构、统一路由策略的网络。自治域内部采用的路由选择协议称为内部网关协议,常用的有RIP、EIGRP、OSPF;外部网关协议主要用于多个自治域之间的路由选择,常用的是BGP和BGP-4。在一个路由器中,可同时配置静态路由和一种或多种动态路由。它们各自维护的路由表都提供给转发程序,但这些路由表的表项间可能会发生冲突。这种冲突可通过配置各路由表的优先级来解决。通常静态路由具有默认的最高优先级,当其它路由表表项与它矛盾时,均按静态路由转发。

RIP介绍:

RIP(Routing Information Protocols,路由信息协议)是使用最广泛的距离向量协议,它是由施乐(Xerox)在70年代开发的。当时,RIP是XNS(Xerox Network Service,施乐网络服务)协议簇的一部分。RIP的缺省管理距离是120,采用距离向量算法,即路由器根据距离选择路由,所以也称为距离向量协议。路由器收集所有可到达目的地的不同路径,并且保存有关到达每个目的地的最少站点数的路径信息,除到达目的地的最佳路径外,任何其它信息均予以丢弃。同时路由器也把所收集的路由信息用RIP协议通知相邻的其它路由器。这样,正确的路由信息逐渐扩散到了全网。RIP使用非常广泛,它简单、可靠,便于配置。但是RIP只适用于小型的同构网络,因为它允许的最大站点数为15,任何超过15个站点的目的地均被标记为不可达,而且RIP每隔30s广播一次路由信息会造成网络的广播风暴的重要原因之一。

RIP的度量方法是基于跳数(hops count)的,每经过一台路由器,路径的跳数加一。如此一来,跳数越多,路径就越长,RIP算法会优先选择跳数少的路径。RIP支持的最大跳数是15,跳数为16的网络被认为不可达。 

RIP中路由的更新是通过定时广播实现的。缺省情况下,路由器每隔30秒向与它相连的网络广播自己的路由表,接到广播的路由器将收到的信息添加至自身的路由表中。每个路由器都如此广播,最终网络上所有的路由器都会得知全部的路由信息。正常情况下,每30秒路由器就可以收到一次路由信息确认,如果经过180秒,即6个更新周期,一个路由项都没有得到确认,路由器就认为它已失效了。如果经过240秒,即8个更新周期,路由项仍没有得到确认,它就被从路由表中删除。上面的30秒,180秒和240秒的延时都是由计时器控制的,它们分别是更新计时器(Update Timer)、无效计时器(Invalid Timer)和刷新计时器(Flush Timer)。

距离向量类的算法容易产生路由循环,RIP是距离向量算法的一种,所以它也不例外。如果网络上有路由循环,信息就会循环传递,永远不能到达目的地。为了避免这个问题,RIP等距离向量算法实现了下面机制:

A、水平分割(split horizon)。水平分割保证路由器记住每一条路由信息的来源,并且不在收到这条信息的端口上再次发送它。这是保证不产生路由循环的最基本措施。 

B、毒性逆转(poison reverse)。当一条路径信息变为无效之后,路由器并不立即将它从路由表中删除,而是用16,即不可达的度量值将它广播出去。这样虽然增加了路由表的大小,但对消除路由循环很有帮助,它可以立即清除相邻路由器之间的任何环路。 

C、触发更新(trigger update)。当路由表发生变化时,更新报文立即广播给相邻的所有路由器,而不是等待30秒的更新周期。同样,当一个路由器刚启动RIP时,它广播请求报文。收到此广播的相邻路由器立即应答一个更新报文,而不必等到下一个更新周期。这样,网络拓扑的变化会最快地在网络上传播开,减少了路由循环产生的可能性。 

D、抑制计时(holddown timer)。一条路由信息无效之后,一段时间内这条路由都处于抑制状态,即在一定时间内不再接收关于同一目的地址的路由更新。如果,路由器从一个网段上得知一条路径失效,然后,立即在另一个网段上得知这个路由有效。这个有效的信息往往是不正确的,抑制计时避免了这个问题,而且,当一条链路频繁起停时,抑制计时减少了路由的浮动,增加了网络的稳定性。 

E、4)计数到无穷大  产生环路的终止办法,无穷大即为不可达,不会再传播下去。这个在RIP中应用较多,16跳即为不可达。

邻居关系,有些网络是NBMA(Non-Broadcast MultiAccess,非广播型多路访问)的,即网络上不允许广播传送数据。对于这种网络,RIP就不能依赖广播传递路由表了。解决方法有很多,最简单的是指定邻居(neighbor),即指定将路由表发送给某一台特定的路由器。 

计时器:Update Timer用于RIP路由器每30s周期性的发送自己所知道的路由(要通告的那一刻,路由表中有什么就说什么,Possible Down的除外);Invalid Timer用于自收到更新那刻起,6个更新周期,即180s之内都没有再次收到该条目的路由更新(计时器都是针对具体条目的),视为超时,进Holddown状态;Holddown Timer:Holddown状态在Invalid之后进入,本身计时器长为180s,Holddown状态下对于该条路由条目的态度是“不收也不发,等待状态”;Flush Timer: 与Invalid Timer同时开始计时,时间为240s,如果在该计时器超时前都没有收到路由更新,就会删除该条目,Holddown Timer由于在Invalid Timer超时后才开始计时,过60s之后Flush Timer超时该条目就没了,所以表现为Holddown Timer只有60s,而且基于Holddown状态下的特性,也就意味着,一个条目如果Invalid Timer超时,必然会被删除,因为随后的60s不收不发,对Flush Timer超时不会有任何阻碍,不知道思科是不是故意的

RIP最多可支持6条路径的等价负载均衡,默认为4条。

 

RIP的缺陷  

  1. 过于简单,以跳数为依据计算度量值,经常得出非最优路由; 

  2. 度量值以16为限,最多只能支持15台设备的网络,只适用于小型网络; 

  3. 安全性差,接受来自任何设备的路由更新; 

  4. 不支持无类IP地址和VLSM(Variable Length Subnet Mask,变长子网掩码)

  5. RIPv1支持FLSM,但是发送的路由更新不带子网掩码。如果没有强制性的自动汇总的机制,那么接收方将感到无所适从,比如收到一条去往158.16.0.0的路由,没有掩码,那么这究竟是/16的主类网络,还是/17的子网,还是...有很多可能,也就没法放进路由表进行正常转发,所以强制性的自动汇总就RIPv1而言是必要的。

  6. RIPv1在主类网络边界会强制性的自动汇总。不连续子网本身就是由被其他主网络分割开来的同一个主网络组成的。在这种情况下,自动汇总必然会发生,当汇总后的路由到达接收方那里的时候,接收方会发现自己已经从其他接口学到更为明细的子网信息,就会将这个汇总路由丢弃,从此不连续子网之间不能互通。

  7. 收敛缓慢,时间经常大于5分钟; 

  8. 消耗带宽很大。 

     

RIPv2较 RIPv1的改进

  1. RIPv2为无类路由协议,支持VLSM和CIDR,路由更新中携带子网掩码

  2. 支持手动汇总,可关闭自动汇总

  3. 使用组播地址(224.0.0.9)定期发送更新

  4. 支持明文认证和MD5地址,默认为明文认证

  5. 支持路由标记,可以用来控制路由重发布

  6. 增加了“下一跳”字段可以避免路由转发时不必要的跳步,即凭借自己的一步路由能力,来防止走冤枉路

 

 

 

 

 

 

拓扑图:

 

测试一:RIP路由协议基本配置(启动R1、R2、R3路由器)

配置R1:

Router>en     

Router#conf t

Router(config)#host R1

R1(config)#int e0/0

R1(config-if)#ip add 192.168.1.1 255.255.255.0

R1(conf1ig-if)#no sh

R1(config-if)#exit

R1(config)#route rip

R1(config)#version 1

R1(config)#no auto sum

R1(config)#network 192.168.1.0

 

 

配置R2

Router>en     

Router#conf t

Router(config)#host R2

R2(config)#int e0/0

R2(config-if)#ip add 192.168.1.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)# int e0/1

R2(config-if)#ip add 172.168.1.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#route rip

R2(config-route)#version 1

R2(config-route)#no auto sum

R2(config-route)#network 192.168.1.0

R2(config-route)#network 172.168.1.0

R2(config-route)#exit

 

配置R3

Router>en

Router#conf t

Router(config)#host R3

R3(c1onfig)#int e0/0

R3(config-if)#ip add 172.168.1.1 255.255.255.0

R3(config-if)#no sh

R3(config-if)#exit

R3(config)#route rip

R3(config-route)#version 1

R3(config-route)#no auto sum

R3(config-route)#network 172.168.1.0

R3(config-route)#exit

测试全网连通、查看路由,调试路由更新包

R2#debug ip rip

RIP protocol debugging is on

R2#

*Mar  100:15:48.947: RIP: sending v1 update to 255.255.255.255 via Ethernet0/0(192.168.1.2)

*Mar  100:15:48.947: RIP: build update entries

*Mar  100:15:48.947:  network 172.168.0.0metric 1

*Mar  100:15:50.527: RIP: sending v1 update to 255.255.255.255 via Ethernet0/1(172.168.1.2)

*Mar  100:15:50.527: RIP: build update entries

*Mar  100:15:50.527:  network 192.168.1.0metric 1

 

RIP协议没30s发送一次更新信息。水平分割保证路由器记住每一条路由信息的来源,并且不在收到这条信息的端口上再次发送它。这是保证不产生路由循环的最基本措施

 

测试二:RIP对无类网络的支持(启动R1、R2、R3路由器)

 

配置R1:

Router>en     

Router#conf t

Router(config)#host R1

R1(config)#int e0/0

R1(config-if)#ip add 172.168.10.1 255.255.255.0

R1(conf1ig-if)#no sh

R1(config)#int l0

R1(config-if)#ip add 192.168.1.1 255.255.255.0

R1(conf1ig-if)#no sh

 

R1(config-if)#exit

R1(config)#route rip

R1(config)#version 1

R1(config)#no auto sum

R1(config)#network 172.168.1.0

R1(config)#network 192.168.1.0

 

配置R2

Router>en     

Router#conf t

Router(config)#host R2

R2(config)#int e0/0

R2(config-if)#ip add 172.168.1.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)# int e0/1

R2(config-if)#ip add 172.168.2.65 255.255.255.192

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#route rip

R2(config-route)#version 1

R2(config-route)#no auto sum

R2(config-route)#network 172.168.1.0

R2(config-route)#network 172.168.2.64

R2(config-route)#exit

 

配置R3

Router>en

Router#conf t

Router(config)#host R3

R3(c1onfig)#int e0/0

R3(config-if)#ip add 172.168.2.66 255.255.255.192

R3(config-if)#no sh

R3(c1onfig)#int l0

R3(config-if)#ip add 4.4.4.4 255.255.255.0

R3(config-if)#no sh

R3(config-if)#exit

R3(config)#route rip

R3(config-route)#version 1

R3(config-route)#no auto sum

R3(config-route)#network 172.168.2.64

R3(config-route)#network 4.4.4.0

R3(config-route)#exit

查看sh iprou路由表,测试全网连通性,调试debbug ip rip路由更新信息:RIPv1不支持无类协议导致路由表不正确,全网不能联通,如果要解决这个问题必须在各个路由器上启用RIP v2 协议并禁止自动汇总,因为RIP V2 支持无类路由协议并在路由更新信息中发送子网掩码。

Router(config)#routerip

Router(config-route)#version2

Router(config-route)#noauto sum

 

测试三:RIP对不连续子网的支持(启动R1、R2、R3路由器)

配置R1:

Router>en     

Router#conf t

Router(config)#host R1

R1(config)#int e0/0

R1(config-if)#ip add 10.11.0.1 255.255.0.0

R1(conf1ig-if)#no sh

R1(config)#int l0

R1(config-if)#ip add 172.168.11.1 255.255.255.0

R1(conf1ig-if)#no sh

R1(config-if)#exit

R1(config)#route rip

R1(config)#version 1

R1(config)#no auto sum

R1(config)#network 172.168.11.0

R1(config)#network 10.11.0.0

 

配置R2

Router>en     

Router#conf t

Router(config)#host R2

R2(config)#int e0/0

R2(config-if)#ip add 10.11.0.2 255.255.0.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)# int e0/1

R2(config-if)#ip add 10.12.0.2.2 255.255.0.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#route rip

R2(config-route)#version 1

R2(config-route)#no auto sum

R2(config-route)#network 10.11.0.0

R2(config-route)#network 10.12.0.0

R2(config-route)#exit

 

配置R3

Router>en

Router#conf t

Router(config)#host R3

R3(c1onfig)#int e0/0

R3(config-if)#ip add 10.12.0.1 255.255.0.0

R3(config-if)#no sh

R3(c1onfig)#int l0

R3(config-if)#ip add 172.168.12.0 255.255.255.0

R3(config-if)#no sh

R3(config-if)#exit

R3(config)#route rip

R3(config-route)#version 1

R3(config-route)#no auto sum

R3(config-route)#network 172.168.12.0

R3(config-route)#network 10.12.0.0

R3(config-route)#exit

查看sh ip rou路由表,测试全网连通性,调试debbug ip rip路由更新信息:路由器R1和R3都向路由器R2通告可以到达网络172.16.0.0,到172.16.0.0网络的条目有两个并且形成了负载均衡,这样路由器R2可能作出不正确的转发。原因很简单。因为它认为去172.16.1 1.1 从e0/0口出去可以到达从e0/1口出去也可以到达。但是实际上是不可以的。路由协议的更新信息是不携带子网掩码的这个就是导致不连续子网的原因。

如果要解决这个问题必须在各个路由器上启用RIP v2协议并禁止自动汇总。

Router(config)#routerip

Router(config-route)#version2

Router(config-route)#noauto sum

 

测试四:RIP的被动接口和单播更新(启动R1、R2、R3路由器)

配置R1:

Router>en     

Router#conf t

Router(config)#host R1

R1(config)#int e0/0

R1(config-if)#ip add 192.168.1.1 255.255.255.0

R1(conf1ig-if)#no sh

R1(config)#int l0

R1(config-if)#ip add 1.1.1.1 255.255.255.0

R1(conf1ig-1if)#no sh

R1(config-if)#exit

R1(config)#route rip

R1(config)#version 2

R1(config)#no auto sum

R1(config)#network 1.1.1.0

R1(config)#network 192.168.1.0

 

配置R2

Router>en     

Router#conf t

Router(config)#host R2

R2(config)#int e0/0

R2(config-if)#ip add 192.168.1.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)# int e0/1

R2(config-if)#ip add 192.168.2.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#route rip

R2(config-route)#version 2

R2(config-route)#no auto sum

R2(config-route)#network 192.168.1.0

R2(config-route)#network 192.168.2.0

R2(config-route)#exit

 

配置R3

Router>en

Router#conf t

Router(config)#host R3

R3(c1onfig)#int e0/0

R3(config-if)#ip add 192.168.2.1 255.255.255.0

R3(config-if)#no sh

R3(c1onfig)#int l0

R3(config-if)#ip add 3.3.3.3 255.255.255.0

R3(config-if)#no sh

R3(config-if)#exit

R3(config)#route rip

R3(config-route)#version  2

R3(config-route)#no auto sum

R3(config-route)#network 3.3.3.0

R3(config-route)#network 192.168.2.0

R3(config-route)#exit

 

完成配置后,网络是全部连通的。所有路由的路由表信息是一致的。然后在R2上配置E0/1接口为被动接口.(然后再次查看全网连通性,和路由表,调试路由信息,发现R1不能与R3通信,而且R1收到了到达R3的路由更新,但是R3却没有收到R1路由的更新信息,只在发送路由信息。说明RIP的被动接口只能接受更新,不能发送更新)

R2(config)#routerip

R2(config-route)#passive-interfacee0/1

 

为了实现全网互通,我们可以采用在各个路由器上配置单播更新模式,指定更新邻居。然后再次查看全网连通性,和路由表,调试路由信息

R1(config)#route rip

R1(config-route)#neighbor 192.168.1.2

 

R2(config)#route rip

R2(config-route)#neighbor 192.168.1.2

R2(config-route)#neighbor 192.168.2.1

 

R3(config)#route rip

R3(config-route)#neighbor 192.168.2.2

 

 

测试五:RIP路由的自动汇总和手动汇总(启动R1、R2、R3路由器)

R1配置:

Router>en     

Router#conf t

Router(config)#host R1

R1(config)#int e0/0

R1(config-if)#ip address 12.12.12.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#int lo0

R1(config-if)#ip add 172.16.0.1255.255.255.0

R1(config-if)#int lo1

R1(config-if)#ip add 172.16.1.1 255.255.255.0

R1(config-if)#int lo2

R1(config-if)#ip add 172.16.2.1 255.255.255.0

R1(config-if)#int lo3

R1(config-if)#ip add 172.16.3.1 255.255.255.0

R1(config)#router rip

R1(config-router)#version 2

R1(config-router)#network 172.16.0.0

R1(config-router)#network 172.16.1.0

R1(config-router)#network 172.16.2.0

R1(config-router)#network 172.16.3.0

R1(config-router)#network 12.12.12.0

R1(config-router)#end

 

R2配置:

Router>en     

Router#conf t

Router(config)#host R2

R2(config)#int e0/0

R2(config-if)#ip address 12.12.12.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#int e0/1

R2(config-if)#ip add 23.23.23.2 255.255.255.0

R2(config-if)#no sh

R2(config)#router rip

R2(config-router)#version 2

R2(config-router)#network 23.23.23.0

R2(config-router)#network 12.12.12.0

R2(config-router)#exit

 

配置R3

Router>en     

Router#conf t

Router(config)#host R3

R3(config)#int e0/0

R3(config-if)#ip add 23.23.23.1 255.255.255.0

R3(config-if)#int lo0

R3(config-if)#ip add 192.168.0.1 255.255.255.0

R3(config-if)#int lo1

R3(config-if)#ip add 192.168.1.1 255.255.255.0

R3(config-if)#int lo2

R3(config-if)#ip add 192.168.2.1 255.255.255.0

R3(config-if)#int lo3

R3(config-if)#ip add 192.168.3.1 255.255.255.0

R3(config)#router rip

R3(config-router)#version 2

R3(config-router)#network 192.168.1.0

R3(config-router)#network 192.168.2.0

R3(config-router)#network 192.168.3.0

R3(config-router)#network 23.23.23.0

R3(config-router)#end

 

默认情况下自动汇总的配置完成,检查全网互通,并检查各个路由器中的路由表。注意自动汇总会自动汇总成主类网络但不支持CIDR,本例中的R3的192.168.0.0的网络就是如此,但是R1的172.168.0.0网络却自动汇总了。

 

关闭自动汇总路由,在R1和 R3上手工汇总,由于不支持 CIDR汇总,所以R3要使用静态引入的方法

R1(config)#router rip

R1(config-router)# no auto-summary

R1(config-router)# exit

R1(config)#int e0/0

R1(config-if)#ip summary-address rip 172.16.0.0255.255.252.0 //在R2上学习到的是汇总后的路由

 

R2(config)#router rip

R2(config-router)# no auto-summary

R2(config-router)# exit

 

R3(config)#router rip

R3(config-router)# no auto-summary

R3(config-router)# exit

R3(config)# int e0/0

R3(config-if)# ip summary-address rip 192.168.0.0255.255.252.0 //Summary mask must be greater or equal to major net即RIP不支持 CIDR 的汇总,使用下面方法解决

R3(config-if)#exit

R3(config)#ip route 192.168.0.0 255.255.252.0Null0

R3(config)#router rip

R3(config-router)#no network 192.168.0.0

R3(config-router)#no network 192.168.1.0

R3(config-router)#no network 192.168.2.0

R3(config-router)#no network 192.168.3.0

R3(config-router)#redistribute static //将静态重分发入 RIP中

查看各路由的路由表,并测试全网连通性。各个路由表此时也已经得到精简,路由R1和R3发送的都是汇总后的路由更新条目。并且全网互通

 

测试六:RIPv2路由协议的明文和密文认证(启动R1、R2、R3路由器)

R1配置:

Router>en     

Router#conf t

Router(config)#host R1

R1(config)#key chain test1 //创建密钥链test1

R1(config-keychain)#key 1 //在test1密钥链下定义一个ID为1的密钥号码

R1(config-keychain-key)#key-string 13579 //定义密钥号码为1的密码是13579

R1(config-keychain-key)#exit

R1(config-keychain)#key 2 //在test1密钥链下定义一个ID为2的密钥号码

R1(config-keychain-key)#key-string 02468 ////定义密钥号码为2的密码是02468

R1(config-keychain-key)#end

R1(config)#int e0/0

R1(config-if)#ip address 12.12.12.1 255.255.255.0

R1(config-if)#ip rip authentication mode text //在接口模式下配置RIP的验证方式是明文的

R1(config-if)#ip rip authentication key-chain test1 //在接口模式下,为RIP路由协议调用密钥链test1作为验证

R1(config-if)#no sh

R1(config-if)#int lo0

R1(config-if)#ip add 192.168.1.1 255.255.255.0

R1(config-if)#exit

R1(config)#router rip

R1(config-router)#version2

R1(config-router)#no auto-summary

R1(config-router)#network 192.168.1.0

R1(config-router)#network 12.12.12.0

R1(config-router)#end

 

配置R2

Router>en     

Router#conf t

Router(config)#host R2

R2(config)#key chain test1 //创建密钥链test2

R2(config-keychain)#key 1 //在test1密钥链下定义一个ID为1的密钥号码

R2(config-keychain-key)#key-string 02468 //定义ID号码为1的密码是02468

R2(config-keychain-key)#exit

R2(config-keychain)#key 2 //在test1密钥链下定义一个ID为2的密钥号码

R2(config-keychain-key)#key-string 13579 ////定义ID号码为2的密码是13579

R2(config-keychain-key)#end

R2(config)#key chain test2 //创建密钥链test2

R2(config-keychain)#key 1 //在test2密钥链下定义一个ID为1的密钥号码

R2(config-keychain-key)#key-string right1 //定义ID号码为1的密码是right1

R2(config-keychain-key)#exit

R2(config-keychain)#key 2 //在test2密钥链下定义一个ID为2的密钥号码

R2(config-keychain-key)#key-string right2 ////定义ID号码为2的密码是right2

R2(config-keychain-key)#end

R2(config)#int e0/0

R2(config-if)#ip address 12.12.12.2 255.255.255.0

R2(config-if)#ip rip authentication mode text //在接口e0/0模式下配置RIP的验证方式是明文的

R2(config-if)#ip rip authentication key-chain test1 //在接口e0/0模式下,为RIP路由协议调用密钥链test1作为验证

R2(config-if)#no sh

R2(config-if)#int e0/1

R2(config-if)#ip add 23.23.23.1 255.255.255.0

R2(config-if)#ip rip authentication mode md5 //在接口e0/1模式下配置RIP的验证方式是密文

R2(config-if)#ip rip authentication key-chain test2 //在接口e0/1模式下,为RIP路由协议调用密钥链test2作为验证

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#router rip

R2(config-router)#version 2

R2(config-router)#network 23.23.23.0

R2(config-router)#network 12.12.12.0

R2(config-router)#exit

 

配置R3

Router>en     

Router#conf t

Router(config)#host R3

R3(config)#key chain test3 //创建密钥链test3

R3(config-keychain)#key 1 //在test3密钥链下定义一个ID为1的密钥号码

R3(config-keychain-key)#key-string right2 //定义密钥号码为1的密码是right2

R3(config-keychain-key)exit

R3(config-keychain)#key 2 //在test3密钥链下定义一个ID为2的密钥号码

R3(config-keychain-key)#key-string right1 ////定义密钥号码为2的密码是right1

R3(config-keychain-key)#end

R3(config)#int e0/0

R3(config-if)#ip add 23.23.23.2 255.255.255.0

R3(config-if)#ip rip authentication mode md5 //在接口模式下配置RIP的验证方式是密文

R3(config-if)#ip rip authentication key-chain test3 //在接口模式下,为RIP路由协议调用密钥链test3作为验证

R3(config-if)#no sh

R3(config-if)#int lo0

R3(config-if)#ip add 192.168.0.1 255.255.255.0

R3(config-if)#no sh

R3(config-if)#exit

R3(config)#router rip

R3(config-router)#ver 2

R3(config-router)#no au

R3(config-router)#net 192.168.0.0

R3(config-router)#net 23.23.23.0

R3(config-router)#end

查看路由器的路由表是否正常,全网的互通性注意如果一个路由器连接两个路由器,其两个接口的密钥、密钥链等可以不一样,只要每一个端口相连的路由器对应即可。

明文认证:被认证方发送key chian时,发送最低ID值的key,并且不携带ID;认证方接收到key后,和自己key chain的全部key进行比较,只要有一个key匹配就通过对被认证方的认证。所以R1与R2彼此接受对方的路由更新信息。

密文认证:被认证方发送key时,发送最低ID值的key,并且携带了ID;认证方接收到key后,首先在自己key chain中查找是否具有相同ID的key,如果有相同ID的key并且key相同就通过认证,key值不同就不通过认证。如果没有相同ID的key,就查找该ID往后的最近ID的key;如果没有往后的ID,认证失败。即密文验证是先匹配KEY-ID,再匹配KEY-ID的内容。所以R2不会接受R3的认证,R3也不会接受R2的认证,双方路由更新信息是不会被信任的。如果需要全网互通此时R3的配置就要改变

Router(config)#host R3

R3(config)#key chain test3 //创建密钥链test3

R3(config-keychain)#key 1 //在test3密钥链下定义一个ID为1的密钥号码

R3(config-keychain-key)#no key-string right2 //去掉原定义密钥ID为1的密码

R3(config-keychain-key)#key-string right1 //重新定义密钥ID为1的密码是right1

R3(config-keychain)#key 2 //在test3密钥链下定义一个ID为2的密钥号码

R3(config-keychain-key)#no key-string right1 //去掉原定义密钥ID为2的密码

R3(config-keychain-key)# key-string right2 //重新定义密钥ID为2的密码是right2

 

测试七:RIP等价负载均衡(启动R1、R2、R3、R4路由器)

配置R1:

Router>en     

Router#conf t

Router(config)#host R1

R1(config)#int e0/0

R1(config-if)#ip add 172.168.1.1 255.255.255.0

R1(conf1ig-if)#no sh

R1(config)#int e0/1

R1(config-if)#ip add 192.168.1.1 255.255.255.0

R1(conf1ig-if)#no sh

R1(config)#int l0

R1(config-if)#ip add 1.1.1.1 255.255.255.0

R1(conf1ig-if)#no sh

R1(config-if)#exit

R1(config)#route rip

R1(config)#network 172.168.1.0

R1(config)#network 192.168.1.0

R1(config)#network 1.1.1.0

 

配置R2

Router>en     

Router#conf t

Router(config)#host R2

R2(config)#int e0/0

R2(config-if)#ip add 172.168.1.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)# int e0/1

R2(config-if)#ip add 172.168.2.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#route rip

R2(config-route)#network 172.168.1.0

R2(config-route)#network 172.168.2.0

R2(config-route)#exit

配置R3

Router>en

Router#conf t

Router(config)#host R3

R3(c1onfig)#int e0/0

R3(config-if)#ip add 172.168.2.1 255.255.255.0

R3(config-if)#no sh

R3(c1onfig)#int e0/1

R3(config-if)#ip add 192.168.2.1 255.255.255.0

R3(config-if)#no sh

R3(c1onfig)#int l0

R3(config-if)#ip add 3.3.3.3 255.255.255.0

R3(config-if)#exit

R3(config)#route rip

R3(config-route)#no auto

R3(config-route)#network 172.168.2.0

R3(config-route)#network 192.168.2.0

R3(config-route)#network 3.3.3.0

R3(config-route)#exit

 

配置R4

Router>en

Router#conf t

Router(config)#host R3

R4(c1onfig)#int e0/0

R4(config-if)#ip add 192.168.1.2 255.255.255.0

R4(config-if)#no sh

R4(c1onfig)#int e0/1

R4(config-if)#ip add 192.168.2.2 255.255.255.0

R4(config-if)#no sh

R4(config-if)#exit

R4(config)#route rip

R4(config-route)#network 192.168.1.0

R4(config-route)#network 192.168.2.0

R4(config-route)#exit

 

按照此时配置全网是互通的,而且我们查看R1与R3的路由表会发现,在各自的路由表中会有两条到达对方lookback口的路由条目,但是此时我们发现转发到目标的数据包只使用了其中一条路由路径,如果此时我们要实现等价开销负载均衡即同时调用两条链路转发数据,就要进行修改,分别在两个路由器中学习到等价路由的接口上关闭快速交换方式,即禁止路由器将查找到的第一个路由条目存于高速缓存中,避免之后的数据包都按照这条缓存信息进行转发。当接口上禁止了快速转发后,接口就会自动启用进程交换方式,强制路由器为每一个要进行转发的数据包都在路由表中查找目的网络的路由条目,这样在转发数据包时就会同时使用两条路由进行转发

 

 

R1配置:

R1(config)#int e0/0

R1(config-if)#no ip route-cache //e0/0接口关闭快熟交换方式,使用进程交换方式

R1(config)#int e0/1

R1(config-if)# no ip route-cache //e0/1接口关闭快熟交换方式,使用进程交换方式

R1(config-if)#exit

R1(config)#access-list 101 permit icmp any 3.3.3.3255.255.255.255 //定义一条允许任何ICMP流量到达3.3.3.3地址,用于测试负载均衡流量

R1(config)#end

R1#debug ip packet 101 //调试基于到达3.3.3.3地址的ICMP流量IP包,这样有利于我们观察负载均衡流量所走的路由

R1#ping 3.3.3.3 //测试Ping流量

 

R3配置:

R3(config)#int e0/0

R3(config-if)#no ip route-cache //e0/0接口关闭快熟交换方式,使用进程交换方式

R3(config)#int e0/1

R3(config-if)# no ip route-cache //e0/1接口关闭快熟交换方式,使用进程交换方式

R3(config-if)#exit

R3(config)#access-list 101 permit icmp any 1.1.1.1 255.255.255.0//定义一条允许任何ICMP流量到达1.1.1.1地址,用于测试负载均衡流量

R3(config)#debug ip packet 101 //调试基于到达1.1.1.1地址的ICMP流量IP包,这样有利于我们观察负载均衡流量所走的路由

R3(config)#ping 1.1.1.1 //测试Ping流量

 

实验使用的禁止快速交换功能测试负载均衡失败,应该是IOS在GNS3虚拟环境中的问题。但是我们使用traceroute命令依然能够清楚看到可以实现等价负载均衡。



实验过程视频分享: http://pan.baidu.com/share/link?shareid=2236427126&uk=1025659618


实验3 RIP路由配置 实验报告 一.实验目的: 掌握RIP路由配置。 二.实验要点: 1)根据拓扑图进行网络布线。 2)清除启动配置并将路由器重新加载为默认状态。 3)在路由器上执行基本配置任务。 4)解释 debug ip routing 的输出。 5)配置并激活串行接口和以太网接口。 6)测试连通性。 7)收集信息并据此找出设备之间无法连通的原因。 8)使用中间地址配置静态路由。 9)使用送出接口配置静态路由。 10)比较使用中间地址的静态路由和使用送出接口的静态路由。 11)配置默认静态路由。 12)配置总结静态路由。 13)记录网络实施方案。 三.实验设备: Cisco 2950交换机3台,Cisco2621xm路由器3台,带有网卡的工作站 PC 三台。 立即下载

相关推荐

从充电管理芯片里‘偷师’:拆解一个PMOS双向开关电路,搞定你的固态继电器需求

本文深入解析了PMOS双向开关电路在固态继电器应用中的设计要点,重点探讨了防电流倒灌和高侧双向开关的实现技巧。通过拆解充电管理芯片中的PMOS背靠背结构,工程师可以构建高效可靠的固态开关方案,适用于智能硬件和电池管理系统。文章还提供了关键参数选择、电路优化建议及实测数据对比,助力解决电源防反接等工程难题。

weixin_33698043的博客 485

用思科软件做实验时遇到的一些bug及其原因

思科 网路实验 路由器

m0_51260846的博客 2732

JavaSpringBoot + VUE 相关开发环境配置合集

1.Java环境-JDK安装 参照:Java基础1-环境篇:JDK安装与环境变量配置 Java基础1-环境篇:JDK安装与环境变量配置_第一段代码的博客-优快云博客_jdk 2.Web服务器-Tomcat安装 原创Java服务器Tomcat安装和配置 3.Maven(后面为了项目兼容性,使用了3.0.5版本) 原创Maven安装和配置(Maven3.0.5) 4.nginx 原创nginx轻量级Web服务器安装和配置 5 数据库mysql 原创数据库Mysql安装和配置 ...

第一段代码的博客 3164

计网实验3—路由协议RIP配置与分析

计算机网络的实验,希望能帮到你

weixin_59430424的博客 5742

ChatGPT and Claude国内使用站点

这篇博客介绍了不同的AI聊天平台和定价信息,主要对比了ChatGPT和Claude两款产品。文章列出了多个提供聊天服务的AI平台,包括RawChat、ChatGPTPlus、ChatOpens、Wildcard和2233.ai等,并提供了每个平台的网页链接和定价详情。特别关注了Claude平台,介绍了其普通账号与会员账号的不同,以及相关的定价信息。此外,还提到了一些虚拟卡定价和服务细节,为用户选择合适的AI服务提供了多种参考。

nisidjndn的博客 1万+

Python实战:用MNE-Python从脑电数据中提取P300成分(附完整代码)

本文提供了一份使用MNE-Python从脑电数据中提取P300成分的完整实战指南。通过详细的代码示例,系统讲解了从环境搭建、数据加载、预处理(滤波、分段、伪迹剔除)到P300波形提取、可视化与参数量化的全流程。重点介绍了如何利用零相位滤波和叠加平均技术,从EEG信号中精准分离出反映认知加工的P300事件相关电位,适用于脑机接口与认知神经科学研究。

weixin_29240343的博客 339

RIPng定时器

RIPng定时器 RIPng定时器来调整RIPng路由协议的性能。 RIP协议的四组定时器: Update(定期更新时间):30S RIPng启动之后每隔一定时间从启动RIPng协议的接口不断发出响应消息。 Timeout(失效时间定时器):180S 从每个路由条目被建立的时候RIPng就为它建立一个180S的计时器,如果在这个时间内没有收到更新则路由跳数自动变成16跳。 Suppress(抑制时间):120S 抑制时间是从失效时间结束之后开始计时的,在被抑制状态,只有来自同一邻居切度量值小于

weixin_40855251的博客 419

RandLA-Net 调通代码1:Windows 11 + Tensorflow 2.4 + S3DIS数据集【踩坑+填坑】

TF不上进啊,学学pytorch

累了就要打游戏 2484

路由器RIP协议常见故障及其排查方案思路

路由器RIP协议常见故障及其排查方案思路:在链路正常的情况下,无法接收邻居的RIP更新报文、无法向邻居发布RIP更新报文、RIP网络发生路由振荡,查看路由表时发现部分路由时有时无。

学习小使者 的专栏 2718

笔试题-2023-芯动-数字IC设计【纯净题目版】

笔试题-2023-芯动-数字IC设计【纯净题目版】

w0shishabi的博客 6397

基于matlab的CNN食物识别分类系统,matlab深度学习分类,训练+数据集+界面

饮食在人们的日常生活、营养与医疗建议以及运动员等专业人士的训练上起着越来越重要的作用。随着互联网的发展和医学的进步,人们普遍上传分享和记录的食物图像形成了非常多的数据库,为了改善饮食结构,塑造更健康的生活方式,分析食物的种类、热量和进食时间成为了营养学上非常重要的研究方法,本文的使用深度学习算法可以根据用户上传的食物图像自动分析食物种类。深度学习是机器学习领域的一个研究方向。深度学习通过对数据特征的学习将原始数据转化为计算机可以理解的抽象数据,根据学习到的特征,可以对原始数据进行检测或分类。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 4724

【计算机网络原理·实验·第六章】搭建动态路由环境-RIP

实验环境如图: 首先我们先来配置实验环境,对于PC配置IP,路由器配置每个端口的IP以及时钟频率并启用端口。图中有7个网段,分别进行配置。其中串口地址设置时,最后一部分默认左边.1右边.2。PC地址是.2,网关是.1。 PC1配置: PC2配置: R1: R2: 追加:((R2 S 2/2: clo r 64000)) R3: R4: R5; 全部配置完成后,我们需要验证数据链路层连通性:如下图 验证时,我们应该验证在路由器1和3上验证数据链路层连通性。数据链路层不通网络层是不可能通的。

Chahot的博客 1976

高频网络协议与编程IO相关面试基本问题和知识点整理

网络IO相关基本高频面试基本问题和知识点整合

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 173万+

详细分解三同不同默认路由配置形式的区别与故障排除

详细分解三同不同默认路由配置形式的区别与故障排除在思科CCNP的学习中,要求接合EIGRP使用ipdefaultnetwork指令将某条具体的主类网络公告为默认路由,在实施这个前建议大家明确区别ip defaultgateway、ip defaultnetwork、ip route 0.0.0.0 0.0.0.0、三种不同配置默认路由形式的关键区别,那么本文档的目标在于解决如...

weixin_34174322的博客 148

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

网络工程实习笔记

在这篇日志里,主要记录我在2014年6月23日到2014年7月4日,yi

tqtiwvfdn的技术博客 1982

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

CCNP2-RIP动态路由

基本概念 RIP(Routing Information Protocol,路由信息协议) 动态路由协议:RIP OSPF EIGRP BGP ISIS 按照使用范围进行分类: IGP 协议 (RIP OSPF EIGRP ISIS) 一个AS之间 BGP 协议(BGP) 按照是否携带网络掩码: 有类别(RIPV1):不携带网络掩码,即只能识别...

践踏记忆的博客 584

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

CCNP路由实验之七 动态路由之BGP

CCNP路由实验之七动态路由之BGP 动态路由协议可以自动的发现远程网络,只要网络拓扑结构发生了变化,路由器就会相互交换路由信息,不仅能够自动获知新增加的网络,还可以在当前网络连接失败时找出备用路径。根据是否在一个自治域内部使用,动态路由协议分为内部网关协议(IGP)和外部网关协议(EGP)。这里的自治域指一个具有统一管理机构、统一路由策略的网络。自治域内部采用的路由选择协议称为内部网关协议,常

kkfloat博客 1万+

CCNP基础知识-路由(一)

路由基础 OSI七层模型回顾 层 主要功能 7.应用层 人机交互,面向应用程序 6.表示层 将逻辑语言转换为机器语言,对即时通信的软件进行加密 5.会话层 防止数据冲突,建立端对端的会话虚拟连接 4.传输层 通过不同的端口号来区别不同的流量 3.网络层 寻址,路由 2.数据链路层 通过不同的传输介质进行不同的封装 1.物理层 定义电气,光学等物理传输介质 ...

LZH_1108的博客 4509

【CCNP】第三章 动态路由协议-RIP

静态路由固然可以解决网络通信的问题且足够稳定,只要不进行人工干预就一直存在,但静态路由的缺点就是无法随着网络环境动态的变化,同时当路由器数量增加后,静态路由的配置量大幅上升,不易管理且配置容易出错。动态路由协议可以帮助我们很好的解决这个问题。动态路由协议运行在路由器上,能够自动的学习其他路由器的相关路由条目,并自动的进行路径选择、动态更新路由表。RIP,Routing Information Protocal,路由信息协议。RIP是一款距离矢量路由协议,基于发送报文。

qinjilll的博客 543

西南科技大学计算机网络实验三 (路由器基本配置与操作,RIP、OSPF路由协议配置)

在完成两个路由器的连线后,再在路由器sibo1的命令行窗口中操作,在特权模式下,输入show cdp entry *,观察到与路由器sibo1的相连接的路由器的相关信息,Device ID,IP Address,Platform,Interface分别是什么?再输入reload,出现提示,输入n,回车,完成重启。5)返回到特权模式下,然后输入sh run,查看接口状态,Fastethernet0/0下的信息是什么,是否明确配置好了ip地址与子网掩码,该接口是启用还是关闭状态(shutdown)?

Welcome To My6n Blog 2676

CCNP路由实验之八 路由重公布

                                                                              CCNP路由实验之八 路由重公布    在前面几个实验,已经学习了静态路由和动态路由。如今,我们要掌握怎样使它们在一个网络中融合,即路由重公布。路由重分布能够实现多种路由协议之间共享路由信息并进行路由信息交换。使得同一个互联网络中高效地...

weixin_34249678的博客 279

CCNP路由交换(1)-路由基础

1、CCNP的主要内容:路由、交换、排错。

prettyX的博客 664

CCNP之重发布实验

1234各有一个环回,2环回宣告在rip v2,4环回宣告在ospf配置:OSPF学环回学到的是/32位的掩码,因此在所有运行OSPF的环回接口上,把OSPF的工作方式改为点到点----即R3和R4 int lo0 ip ospf network point-to-point宣告完成后,会出现路由回馈的现象在R2和R4上改管理距离—rip管理距离是120 ospf管理距离是110 要在管理距离...

qq_44911995的博客 240

CCNP路由实验之五 动态路由协议之 OSPF

CCNP路由实验之五动态路由协议之 OSPF动态路由协议可以自动的发现远程网络,只要网络拓扑结构发生了变化,路由器就会相互交换路由信息,不仅能够自动获知新增加的网络,还可以在当前网络连接失败时找出备用路径。根据是否在一个自治域内部使用,动态路由协议分为内部网关协议(IGP)和外部网关协议(EGP)。这里的自治域指一个具有统一管理机构、统一路由策略

kkfloat博客 2万+

CCNA(五)路由选择协议、RIP协议和实验

注:实验已经在目录中标出,请自寻前往( 实验内容仍然是来自崔北亮老师的书,博客是为了方便寻找知识点和记录实验 文章目录路由基础网络互连交换机互连网络路由原理路由协议直连路由和实验静态路由和实验配置静态路由 路由基础 随着计算机网络规模的不断扩大,大型互联网络(如Internet)的迅猛发展,路由技术在网络技术中已逐渐成为关键部分,路由器也随之成为最重要的网络设备。用户的需求推动着路由技术的发展和...

treblez's blog 1356
上一篇: CCNP路由实验之二 默认路由
下一篇: CCNP路由实验之四 动态路由协议之EIGRP
kkfloat
博客等级 码龄17年 923粉丝 201原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值