利用路由策略来解决路由引入过程中产生的次优路径和环路问题:
如左边拓扑图所示:在一个运行ospf的区域和rip区域,在AR2上进入ospf进程引入直连路由,ospf引入的外部路由优先级默认为 150,在AR5上进入rip进程引入ospf路由,从而使rip区域也能学ospf区域引入的路由。此时,这条外部路由在rip区域改变了优先级,因为rip学习到的路由优先级默认100.AR5将优先级为100的外部路由传递到整个rip区域,所以AR3上会学习到两条直连的外部由,由于rip区域传递给AR3的外部路由优先级为100,而ospf区域传递给AR3的外部路由优先级为150,所以AR3的路由表中只会保留优先级较低的rip路由,通过tracer命令可以看到 此时AR3上关于这条外部路由的走向:不是经过ospf区域,而是经过rip区域此时产生了次优路径。
注意:如果rip的版本为1,是不会产生这条次优路径的,因为ripv1不携带掩码信息,此时在AR3上学到的关于直连外部路由的优先级虽然为100,但是是以一个网段的形式出现在路由表中,而通过ospf学习到的直连外部路由优先级虽然是150,但是它是一个直连的ip地址形式出现。此时AR3的路由表上会出现两条路由。我们去访问该ip地址时,根据最长匹配原则,会选择路由表中最匹配的,这时就不会从rip区域转发出去了。如果我们此时在AR3上进入ospf进程引入rip区域路由,则会发现AR1上原先存在的外部直连路发生了改变,虽然在AR1上两端传来的外部路由优先级都是150,cost值都是1,但是AR1上原来通往直连外部路由的最优路径已经被刷新了,此时通过tracert命令可以发现该路由在网络中存在这条环路
对于网络中存在的次优路径和环路问题,我们可以利用路由策略来解决
在AR3上设置路由策略过滤掉该直连路由,配置命令如下:
acl number 2001 设置acl编号
rule 0 deny source 6.6.6.6 0.0.0.0 设置acl规则
route-policy 5226 deny node 10 设置路由策略
if-match acl 2001 匹配acl
ospf 1 进入ospf进程
import-route rip route-policy 5226 引入路由策略
虽然此时解决了环路问题,但是并没有解决次优路径的问题,要解决次优路径可以通过调整路由优先级。在AR3上进入ospf进程,将学习到的外部路由优先级改成比从rip上学习到路由优先级低即可
修改命令如下:
ospf 1 进入ospf进程
[AR3-ospf-1]preference ase 80 调整外部路由优先级为80
调整后的外部路由优先级只会在本台路由器上生效,是不会传递给其他路由器的,所以我们调整次优路径
的时候只要在产生次优路径的路由器上修改就好了。但是 preference ase 80 修改的优先级是针对所有的
外部路由来进行调整呢,这样配置虽然解决了6.6.6.6直连外部路由在AR3上产生的次优路径问题,却导致了
AR4上4.4.4.4直连外部路由在AR3的次优路径问题,所以我们要针对某一外部路由来修改优先级
ip ip-prefix 5226 index 10 permit 6.6.6.6 32 配置ip-prefix
route-policy 52265226 permit node 20 引入路由策略
if-match ip-prefix 5226 匹配ip-prefix
apply preference 80 做相应处理
ospf 1 进入ospf进程
preference ase route-policy 52265226 针对进程下的优先级调整做路由策略
路由过滤不只可以用acl和ip-prefix,还可以用tag的方式来进行过滤,
在AR5上的配置命令如下:
route-policy 123 permit node 10 设置策略123
apply tag 10 没有if-match则默认匹配所有,为每条路由打上tag100标识
rip 1 进入rip进程
import-route ospf 1 route-policy 123 引入路由策略
然后在AR2上配置命令如下:
route-policy 123 deny node 10 设置策略123
if-match tag 10 如果匹配到tag 10则拒绝
ospf 1 进入ospf进程
import-route rip 1 route-policy 123 引入路由策略
手机扫一扫
移动阅读更方便
你可能感兴趣的文章