RIPv1与RIPv2互通

实验环境

  RIPv1与RIPv2互通_network

环境的搭建就不说了。环境搭建起来以后,启用 RIP协议互相学习 loopback0的路由。

R1#configure terminal 

R1(config)#router rip 

R1(config-router)#network 0.0.0.0              /宣告所有在  R1上的接口路由

  

R2#configure terminal 

R2(config)#router rip 

R2(config-router)#vesion 2 

R2(config-router)#network 0.0.0.0              /宣告所有在  R2上的接口路由

  

这个时候在 R1和 R2上打开调试功能:

R1#debug ip rip 

RIPv1与RIPv2互通_router_02


可以看到,默认下启用 RIP采用的是 version 1。第一版的   RIP会使用  255.255.255.255

广播来发出 v1的路由更新。采用默认的 RIPv1是不影响  v2的路由接收。

 

可以通过一句命令查看:

R1#show ip protocol

RIPv1与RIPv2互通_router_03


采用默认 RIPv1的时候,RIPv1会发出  v1版本的路由更新;但是可以同时接收 v1和  v2的路

由更新(启用 version 1后发送与接收都只有  version 1路由)


再看看 R2上:

R2#debug ip rip 

RIPv1与RIPv2互通_接口_04

R2上会通过 224.0.0.9的组播地址发送  v2的路由,不再是广播了,组播更新要比广播更新更

准确,只把路由更新发送到需要的地方,节省带宽。

并且我们看到 R2上收到 R1从  1.1.1.1发过来的 v1路由时会执行操作   ignored,忽略此更

新。因为 RIPv2不接收 v1的路由更新。

而倒数第三行被忽略的原因是,20.20.20.20口是 R2的  loopback口,为自身的地址之一,

已经拥有直连路由。


R2#show ip protocol

RIPv1与RIPv2互通_network_05

采用 RIPv2的时候,路由器只会发送和接收 v2的路由更新。

如果在不修改版本的情况下想实现路由协议的互联,我们可以在 R2上配置,使得 R2与  R1

连的接口能够接收 v1路由更新。


R2(config)#interface s0/0 

R2(config-if)#ip rip receive version 1 

  

稍等一下,RIP收链完成就可以实现互通了。查看路由表,已经互相学习到 loopback0的路由

了。