拓扑图
上图拓扑由两个RIP和一个OSPF所组成,经过ASBR重发布以后,整个网络实现全网可达,但是如果仅仅只是这样,还存在一个非致命的小问题:路径选择的优劣
问题描述:
当配置完成后,查询AR3的路由表发现,AR3前往AR5的环回10.5.5.5选择了以AR1的G0/0/1口为下一跳,经过AR2、AR4最终到达AR5。而我们可以明显发现,从AR3前往AR5,只需要直接经过AR4到达。显然AR3选择了一个次优路径。那么该如何解决这个问题呢?
问题分析:
造成该现象的原因,在于AR3从两边接收到了不同的两条,分别是AR4直接传给AR3的路由以及经过AR2和AR1转发的路由,两条路由的优先级分别是100(RIP)以及150(OSPF),于是乎AR3便选择了优先级相对较小的、经转发过的、下一跳是AR1的路由。
解决方案:
- 使用filter-policy 在RIP侧过滤10.5.5.5的路由
- 使用 preference 加 route-policy 精确修改优先级
方案1:
原理:通过filter-policy直接将AR3左边RIP侧的路由给过滤掉,这样AR3就只会接收到一条路由。
[R3]ip ip-prefix 5 deny 10.5.5.5 32
[R3-rip-1]filter-policy ip-prefix 5 import
方案2:
原理:精确修改优先级,使RIP侧的路由优先级高于OSPF侧。(优先级越高,越不优先)
ip ip-prefix p index 10 permit 10.5.5.5 32
route-policy p permit node 10
if-match ip-prefix p
apply preference 160
route-policy p permit node 20
rip 1
preference route-policy