拓扑图
左边运行RIP,右边运行IS-IS
要求
RIP引入到ISIS,ISIS引入到RIP,同时不能有次优路径与环路产生
AR1与AR3是ASBR,不管如何引入,AR1与AR3的路由表都不能发生变化
配置
先配置接口IP
AR1
AR2
AR3
AR4
左边运行RIP,右边运行ISIS
AR1的环回口宣告进RIP
AR4的环回口宣告进ISIS
AR1与AR4同时运行RIP与ISIS
先来RIP的配置
AR1、AR2、AR3运行RIP
AR1:
AR2
AR3
查看AR3的RIP路由表,此时应该是能收到AR1的环回口路由以及AR2的环回口路由与12网络路由
AR1、AR3、AR4运行IS-IS
AR1
AR3
AR4
此时再AR1的ISIS路由表中是可以看到AR4与AR3的环回口地址与34网络路由
在AR1上吧RIP路由引入到ISIS
这个时候AR3的RIP路由表内的路由条目都被AR1引入到ISIS的路由覆盖了
可以看到RIP的路由条目状态变成Inactive(闲置的),这时候我们再看看isis的路由表
可以看到原本1.1.1.1,2.2.2.2与23网络是输入RIP这款协议的,但是此时变成了isis的路由了,是因为AR1把RIP的路由引入到isis之后,ISIS的外部路由的管理距离是15,而RIP的管理距离是100,这时候AR3收到ISIS发送过来通过RIP学习到的路由,就会把自身RIP路由表内的路由覆盖 。
这时候我们可以通过修改ISIS或者RIP路由的管理距离,这里把AR1引入到ISIS的RIP路由的管理距离改大。
在AR3上通过ip-prefix配合route-policy把原本属于RIP区域的路由条目抓出来,然后将这些路由的管理距离改成大于RIP的管理距离,也就是>100的数。然后进入ISIS进程调用这个route-policy
接下来再查看AR3的RIP路由表,可以看到已经恢复了原来的路由条目
在AR3上把ISIS的路由引入到RIP
这里由于RIP的路由管理距离/优先级是100,ISIS的是15,所以ISIS的路由引入到RIP,对于AR1而言是没有任何影响的,不会改变AR1的路由表。这里可以直接引入。
这里查看AR1的路由表可以看到是没有任何变化的,该是RIP的是RIP,该是ISIS的显示ISIS,没有任何问题。
AR2上可以看到ISIS区域的路由都已经成功获取到了
AR3上把RIP的路由引入到ISIS
这时候再去查看AR1的RIP路由表会发现与AR1把RIP路由引入到ISIS后,跟AR3的路由表发生同样的事情,AR1的RIP路由表内的路由条目都会变成Inactive状态。而ISIS路由表则会多了RIP的路由条目
由于AR1也是一台ASBR所以他的路由表是不能发生变化的,所以还是需要通过路由前缀抓取的方式,把ISIS协议发送过来的RIP的路由的优先级调大。让自己RIP协议的优先级高于ISIS
首先抓取RIP得路由条目,并修改已抓取路由得管理距离/优先级
然后进入isis进程修改优先级,调用route-policy
这时候再看AR1得RIP路由表,就可以看到路由条目得状态回到了Active.
AR1上把ISIS路由引入到RIP路由
这里跟AR3得ISIS引入到RIP一样,不需要修改管理距离/优先级,直接引入即可
路由条目优化
这时候,在AR2与AR3得路由表内可以看到有几条路由是由两条路径得,因为做了双点双向路由重发布得原因,度量值/开销都一样,所以都负载均衡了
比如AR2
从AR2得路由表中可以看到有多个条目都是有两条路径得,是因为AR1与AR3都向RIP做了路由引入操作,但是其实有很多条目我们是不需要负载均衡得,比如3.3.3.3这条路由,很明显第一条路由要优于第二条路由,所以这时候我们就需要把这些没必要负载均衡得路由条目给干掉。
这里只保留4.4.4.4得路由条目得负载均衡,要把这些不要得路由条目得负载给干掉,需要在对应路由上调整路由得开销/度量值,比如我们要干掉3.3.3.3,34网络路由得负载
在AR1上抓取3.3.3.3 34.1.1.0得路由并修改度量值/开销
此处需要创建仪哥空的route-policy,因为调用是在rip进程中,通过import-route来调用,不加空route-policy得话,会导致引入得时候只引入我们抓取到得路由到rip中
这时候我们再看AR2得路由表,可以看到原本3.3.3.3与34.1.1.0得负载路由条目已经没有了,因为我们改大了度量值,所以AR2得RIP路由表就优选得原本度量值小的路由条目加入路由表
14.1.1.0的路由也是同理,在AR3上抓取这条路由,并修改度量值/开销即可,这里就不过多演示