路由控制可以使用(router-policy)来实现 也是默认拒绝
控制路由引入
控制路由接收
控制路由发布
匹配工具:有访问控制列表ACL
还有ip前缀列表 默认拒绝所有路由 ,一般在最后进行允许所有路由
策略工具:filter-policy 对接收、发布、引入的路由进行过滤
import 对接收的路由进行过滤
export 对发布的路由进行过滤
fiter-policy在距离矢量中由于距离矢量协议是基于路由表生成路由的,因此过滤器会影响从邻居接收的路由和向邻居发布的路由。
fiter-policy在链路状态中只能在加载到路由表之前进行过滤,因为无法对LSA进行过滤
整个拓扑由ospf进行全连接
AR1将直连路由引入ospf
R2:
ip ip-prefix gg permit 192.168.1.1 32
匹配感兴趣流
ospf协议视图:filter-policy ip-prefix gg import
进行过滤
查看IP路由表会发现只有192.168.1.1的路由,但是ospf路由表还是有全部路由,是因为ospf不能过滤LSA,看AR3还是有全部路由,如果使用export则不会有任何影响
但是在R1也就是引入路由那个路由器上使用export,就可以在路由转换为LSA之前进行过滤,那样的话就可以在整个ospf里实现过滤
策略工具:router-policy 以节点进行匹配匹配条件和执行条件的集合
节点内的条件语句之间的关系为与
节点与节点之间的关系为或
R1:route-policy gg permit node 10
if-match ip-prefix gg
apply cost 20
apply cost-type type-1
在ospf进行引入
改变了type类型由只计算外部路由变为计算内外部路由,增加了cose值,也可以添加tag,这在fiter-policy是不能实现的
路由环路和次优路径问题
次优路径:可以使用filter-policy禁用路由,也可以调用ospf的优先级,将ospf的ase的优先级降到15以下
AR4:
[AR4]ip ip-prefix gg deny 1.1.1.1 0
抓前缀
[AR4-isis-1]filter-policy ip-prefix gg import
禁止1.1.1.1在isis区域
可以看到不是次优路径
之前是次优路径
第二种方法:改变ospf外部路由优先级
route-policy gg permit node 10
if-match ip-prefix gg
apply preference 10
ospf视图: preference ase route-policy gg 10 改ospf优先级
可以看到ospf的外部路由优先级变为10了