路由工具之路由策略router

您所在的位置:网站首页 route-policy过滤路由 路由工具之路由策略router

路由工具之路由策略router

2023-08-16 22:47| 来源: 网络整理| 查看: 265

3.0.0 路由工具之路由策略router-policy、acl列表与ip-prefix前缀列表的区别、过滤列表filter-policy

目录 IP-Prefix前缀列表前缀列表与ACL router-policy路由策略应用路由策略过滤路由1、环境介绍2、配置OSPF3、过滤路由(1)ACL匹配路由方式过滤(2)前缀列表匹配路由方式过滤 关于路由策略知识点在哪些呢?路由策略修改路由属性 filter-policy过滤列表filter-policy为不同路由协议过滤时会有不同的效果:关于OSPF中应用filter-policy的进一步理解关于OSPF应用filter-policy的结论:

IP-Prefix前缀列表

前缀列表能够同时匹配IP地址前缀以及掩码长度,列表默认动作为拒绝。

前缀列表的创建方式:

(1)精确匹配某个网段的路由:

》匹配192.168.0.0/24的路由

[AR1]ip ip-prefix 1 permit 192.168.0.0 24

(2)匹配某个网段的掩码范围

》匹配路由前缀为192.168,掩码为30~32之间的路由条目

[AR1]ip ip-prefix 2 permit 192.168.0.0 16 greater-equal 30 less-equal 32

(3)命令介绍

常规用法:

ip ip-prefix 前缀列表名称 动作(permit/deny) 匹配路由 匹配前缀

进阶用法:

ip ip-prefix 前缀列表名称 动作 匹配路由 匹配前缀 greater-equal 掩码大于等于多少 less-equal 小于等于多少

解析命令:

ip ip-prefix 前缀列表名称 动作 192.168.0.0 16 greater-equal 30 less-equal 32 匹配路由前缀为192.168,且掩码大于等于30小于等于32的路由条目。 前缀列表与ACL

ACL访问控制列表,即用于流量的匹配与控制,但也能够用于匹配路由条目。

而前缀列表主要用于路由的匹配,所以前缀列表在匹配路由上远胜于ACL。

前缀列表与ACL的区别:

1、ACL无法匹配路由掩码

2、ACL无法匹配精确的路由

如:存在两个路由192.168.1.0/24,192.168.1.0/16

如果用ACL只匹配192.168.1.0/16的话应该这么写:

[AR1]acl 2000 [AR1-acl-basic-2000]rule permit source 192.168.1.0 0.0.255.255

但会发现它仍会把192.168.1.0/24的路由匹配到。

因为ACL只能通过通配符匹配路由前缀,而不能匹配路由的掩码。

故两条掩码不同但前缀相同的路由能被ACL同时匹配到。

3、ACL可以对数据包进行过滤,而前缀列表只能匹配路由

router-policy路由策略

作用:针对特定的路由条目去做属性的更改。

路由策略,即对路由相关属性进行修改。

而对于另一种技术:策略路由,即作用是直接控制路由。

如何应用路由策略?

1、首先匹配路由,应用ACL、IP-prefix等匹配技术匹配相关路由。

2、属性修改,如修改匹配出来的路由开销、tag标记等。

3、应用策略,创建好路由策略之后,可在需要进行路由修改的地方进行引用策略。

下面,就通过操作实例来进一步认识路由策略:

应用路由策略过滤路由 1、环境介绍

AR6与AR7建立OSPF邻接关系,AR6引入所有环回口网络。

在这里插入图片描述

2、配置OSPF

AR6

[AR6]int g0/0/0 [AR6-GigabitEthernet0/0/0]ip add 10.1.67.6 24 [AR6-GigabitEthernet0/0/0]int lo 0 [AR6-LoopBack0]ip add 192.168.0.254 24 [AR6-LoopBack0]int lo 1 [AR6-LoopBack1]ip add 192.168.1.254 24 [AR6-LoopBack1]int lo 2 [AR6-LoopBack2]ip add 192.168.2.254 24 [AR6-LoopBack2]int lo 3 [AR6-LoopBack3]ip add 192.168.3.254 24 [AR6-LoopBack3]q [AR6]ospf 1 router-id 6.6.6.6 [AR6-ospf-1]a 0 [AR6-ospf-1-area-0.0.0.0]network 10.1.67.6 0.0.0.0 [AR6-ospf-1-area-0.0.0.0]q [AR6-ospf-1]import-route direct

AR7

[AR7]int g0/0/0 [AR7-GigabitEthernet0/0/0]ip add 10.1.67.7 24 [AR7-GigabitEthernet0/0/0]q [AR7]ospf 1 router-id 7.7.7.7 [AR7-ospf-1]a 0 [AR7-ospf-1-area-0.0.0.0]network 10.1.67.7 0.0.0.0

检查OSPF建立情况

[AR7]display ospf peer br OSPF Process 1 with Router ID 7.7.7.7 Peer Statistic Information ---------------------------------------------------------------------------- Area Id Interface Neighbor id State 0.0.0.0 GigabitEthernet0/0/0 6.6.6.6 Full ---------------------------------------------------------------------------- [AR7]display ip routing-table protocol ospf ------------------------------------------------------------------------------ Destination/Mask Proto Pre Cost Flags NextHop Interface 192.168.0.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.1.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.2.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.3.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 3、过滤路由

使用路由策略在AR6上对引入的路由进行过滤,过滤Lop0、Lop1的路由。

以下两种方式选择一种即可:

(1)ACL匹配路由方式过滤

创建匹配列表

# 匹配出Lop1、Lop2的路由 [AR6]acl 2000 [AR6-acl-basic-2000]rule permit source 192.168.0.0 0.0.0.255 [AR6-acl-basic-2000]rule permit source 192.168.1.0 0.0.0.255

创建策略与应用策略

# denylop12为路由策略的名称,deny为动作,node为表示策略匹配顺序 # if-match用于指定匹配列表 [AR6]route-policy denylop12 deny node 5 [AR6-route-policy]if-match acl 2000 [AR6-route-policy]q # 先进行拒绝某些路由,最后再放行没有匹配到的路由即可 # 当没有指定if-match表示匹配所有的路由 [AR6]route-policy denylop12 permit node 10 [AR6-route-policy]q # 应用策略在引入路由的时候过滤 [AR6]ospf 1 [AR6-ospf-1]import-route direct route-policy denylop12

查看过滤结果,只剩下了Lop2、Lop3了。

display ip routing-table protocol ospf ------------------------------------------------------------------------------ Destination/Mask Proto Pre Cost Flags NextHop Interface 192.168.2.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.3.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 (2)前缀列表匹配路由方式过滤

创建匹配列表

[AR6]ip ip-prefix denylop12 permit 192.168.0.0 24 [AR6]ip ip-prefix denylop12 permit 192.168.1.0 24 # 对于ACL与前缀列表的创建,没有指定Node步长的时候都是有默认值的,不会发生覆盖的情况。 # 查看前缀列表的信息 [AR6]dis ip ip-prefix denylop12 Prefix-list denylop12 Permitted 0 Denied 0 index: 10 permit 192.168.0.0/24 index: 20 permit 192.168.1.0/24

创建策略与应用策略

# denylop12为路由策略的名称,deny为动作,node为表示策略匹配顺序 # if-match用于指定匹配列表 [AR6]route-policy denylop12 deny node 5 [AR6-route-policy]if-match ip-prefix denylop12 [AR6-route-policy]q # 先进行拒绝某些路由,最后再放行没有匹配到的路由即可 # 当没有指定if-match表示匹配所有的路由 [AR6]route-policy denylop12 permit node 10 [AR6-route-policy]q # 应用策略在引入路由的时候过滤 [AR6]ospf 1 [AR6-ospf-1]import-route direct route-policy denylop12

查看过滤结果,只剩下了Lop2、Lop3了。

display ip routing-table protocol ospf ------------------------------------------------------------------------------ Destination/Mask Proto Pre Cost Flags NextHop Interface 192.168.2.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.3.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 关于路由策略知识点在哪些呢?

在于匹配路由的动作上,但前面的策略只是使用到简单的匹配操作,并没有进行修改路由的属性。

路由策略修改路由属性

在此操作一个OSPF实例,通过路由策略对Lop0、Lop1的路由打上Tag标记。

在这里插入图片描述

基于上面操作过的拓扑环境操作,无过滤路由操作情况下进行。

[AR6]acl 2001 [AR6-acl-basic-2001]rule permit source 192.168.0.0 0.0.0.255 [AR6-acl-basic-2001]rule permit source 192.168.1.0 0.0.0.255 [AR6-acl-basic-2001]q # 指定路由打上Tag6标签 [AR6]route-policy taglop12 permit node 5 [AR6-route-policy]if-match acl 2001 [AR6-route-policy]apply tag 6 [AR6-route-policy]q # 对于没有匹配到的路由不打上标签 [AR6]route-policy taglop12 permit node 10 [AR6-route-policy]q # 应用于OSPF引入路由时打上标签 [AR6]ospf 1 [AR6-ospf-1]import-route direct route-policy taglop12

在AR6上查看引入路由的LSA详细信息,查看LSA就需要在LSDB中观看:

[AR6]display ospf lsdb OSPF Process 1 with Router ID 6.6.6.6 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 7.7.7.7 7.7.7.7 73 36 80000004 1 Router 6.6.6.6 6.6.6.6 65 36 80000007 1 Network 10.1.67.6 6.6.6.6 65 32 80000003 0 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 192.168.2.0 6.6.6.6 113 36 80000002 1 External 192.168.3.0 6.6.6.6 113 36 80000002 1 External 10.1.67.0 6.6.6.6 113 36 80000002 1 External 192.168.0.0 6.6.6.6 109 36 80000001 1 External 192.168.1.0 6.6.6.6 109 36 80000001 1 # 引入中的Lop1、Lop2为External5类LSA,通过aes查看详细信息 [AR6]display ospf lsdb ase 192.168.0.0 OSPF Process 1 with Router ID 6.6.6.6 Link State Database Type : External Ls id : 192.168.0.0 Adv rtr : 6.6.6.6 Ls age : 157 Len : 36 Options : E seq# : 80000001 chksum : 0xf257 Net mask : 255.255.255.0 TOS 0 Metric: 1 E type : 2 Forwarding Address : 0.0.0.0 Tag : 6 【成功打上Tag标记】 Priority : Low filter-policy过滤列表

常规的应用路由策略在引入路由时调用进行过滤路由,但是对于路由本身接收与发布的路由无法进行过滤。

为此Filter-policy过滤列表的出现,就解决了接收与发布路由时路由过滤的问题。

关于filter-policy有两个应用的方向,export与import:

export:应用于本身路由器,对传递出去的路由进行过滤。

import:应用于本身路由器,对接收到的路由进行过滤。

对于export与import所应用于路由协议的不同,其功能也会有所不同。

filter-policy为不同路由协议过滤时会有不同的效果:

1、距离矢量路由协议RIP:

传递的是路由信息,如果某台设备通过filter-policy拒绝了传递而来的路由信息,那么该设备不会学习到并不会继续转发过滤掉的路由。 在这里插入图片描述

2、链路状态路由协议OSPF、ISIS:

由于传递的是链路状态信息(LSA),即使AR7部署filter-policy过滤了路由,也不会影响LSA的传递。

过滤路由后的LSA不会进行SPF计算,但可以继续传递给其它设备使用。

在这里插入图片描述

实验证明:

AR6、AR7、AR8建立OSPF,AR6将环回口引入网络中。

AR7上应用filter-policy方向为import,对接收到的路由进行过滤。

【此处就省略OSPF的与路由引入等相关操作,主要是对路由过滤命令进行记录】

# 创建匹配列表,指定过滤路由 [AR7]ip ip-prefix lop12 deny 192.168.1.0 24 [AR7]ip ip-prefix lop12 deny 192.168.2.0 24 # 由于默认规则是拒绝,故需要配置一条放行所以路由的策略,避免拒绝了所有路由 [AR7]ip ip-prefix lop12 permit 0.0.0.0 0 less-equal 32 # ospf模式下应用ospf filter-policy过滤指定路由 [AR7]ospf 1 [AR7-ospf-1]filter-policy ip-prefix lop12 import

在AR7上查看路由,成功过滤了lop1、lop2的路由。

再看LSDB,虽然过滤了路由但没有过滤LSA。

display ip routing-table protocol ospf Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Destination/Mask Proto Pre Cost Flags NextHop Interface 192.168.0.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.3.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 display ospf lsdb OSPF Process 1 with Router ID 7.7.7.7 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 7.7.7.7 7.7.7.7 1014 48 80000009 1 Router 6.6.6.6 6.6.6.6 485 36 80000008 1 Router 8.8.8.8 8.8.8.8 1022 36 80000003 1 Network 10.1.78.7 7.7.7.7 1014 32 80000002 0 Network 10.1.67.6 6.6.6.6 485 32 80000004 0 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 192.168.2.0 6.6.6.6 533 36 80000003 1 External 192.168.3.0 6.6.6.6 533 36 80000003 1 External 10.1.67.0 6.6.6.6 533 36 80000003 1 External 192.168.0.0 6.6.6.6 1094 36 80000002 1 External 192.168.1.0 6.6.6.6 1094 36 80000002 1

在AR8上观看路由,还能正常的学习到路由条目。

但去访问该路由却无法成功,因为中间的AR7并没有对应的路由条目。

display ip routing-table protocol ospf Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Destination/Mask Proto Pre Cost Flags NextHop Interface 10.1.67.0/24 OSPF 10 2 D 10.1.78.7 GigabitEthernet0/0/0 192.168.0.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.1.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.2.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.3.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 # 由于AR7没有1.0的路由条目,故无法访问成功 ping 192.168.1.254 PING 192.168.1.254: 56 data bytes, press CTRL_C to break Request time out Request time out Request time out Request time out Request time out 关于OSPF中应用filter-policy的进一步理解

在OSPF中应用filter-polic的import方向y过滤路由但不会过滤LSA。

那么filter-policy的export方向呢?

对于OSPF出方向只能在ASBR上操作,因为在OSPF中filter-policy的export方向只能过滤5类的LSA。

ASBR的出方向应用过滤列表,会直接将5类LSA进行过滤,不会传递出去。

实验证明filter-policy的export只能过滤5类: 在这里插入图片描述

省略的相关配置介绍:

1、AR6、AR7、AR8正常建立OSPF邻接关系

2、AR6上将lop0~lop3引入OSPF中,lop4正常进行network宣告

以下配置主要是AR6通过filter-policy进行过滤lop1、lop4的操作:

[AR6]acl 2000 [AR6-acl-basic-2000]rule deny source 192.168.1.0 0.0.0.255 [AR6-acl-basic-2000]rule deny source 192.168.4.0 0.0.0.255 [AR6-acl-basic-2000]rule permit source any [AR6-acl-basic-2000]q [AR6]ospf 1 [AR6-ospf-1]filter-policy 2000 export

查看AR7的路由表与LSDB表,发现lop1不见了,但lop4还存在。

说明了filter-policy的export只能过滤5类LSA,不能过滤普通路由。

display ip routing-table protocol ospf Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Destination/Mask Proto Pre Cost Flags NextHop Interface 192.168.0.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.2.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.3.0/24 O_ASE 150 1 D 10.1.67.6 GigabitEthernet0/0/0 192.168.4.254/32 OSPF 10 1 D 10.1.67.6 GigabitEthernet0/0/0 display ospf lsdb OSPF Process 1 with Router ID 7.7.7.7 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 7.7.7.7 7.7.7.7 991 48 8000000A 1 Router 6.6.6.6 6.6.6.6 385 48 8000000A 1 Router 8.8.8.8 8.8.8.8 999 36 80000004 1 Network 10.1.78.7 7.7.7.7 991 32 80000003 0 Network 10.1.67.6 6.6.6.6 462 32 80000005 0 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 192.168.0.0 6.6.6.6 104 36 80000001 1 External 192.168.2.0 6.6.6.6 104 36 80000001 1 External 192.168.3.0 6.6.6.6 104 36 80000001 1 External 10.1.67.0 6.6.6.6 104 36 80000001 1

扩展操作,理论上说出方向只能在ASBR上操作,那我在AR7非ASBR上做呢?

[AR7]acl 2000 [AR7-acl-basic-2000]rule deny source 192.168.1.0 0.0.0.255 [AR7-acl-basic-2000]rule deny source 192.168.4.0 0.0.0.255 [AR7-acl-basic-2000]rule permit source any [AR7-acl-basic-2000]q [AR7]ospf 1 [AR7-ospf-1]filter-policy 2000 export

在AR8上观看路由表与LSDB表,发现没有任何的变化(过滤失败)。

display ip routing-table pro ospf Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Public routing table : OSPF Destinations : 7 Routes : 7 OSPF routing table status : Destinations : 7 Routes : 7 Destination/Mask Proto Pre Cost Flags NextHop Interface 10.1.67.0/24 OSPF 10 2 D 10.1.78.7 GigabitEthernet0/0/0 192.168.0.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.1.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.2.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.3.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.4.0/24 O_ASE 150 1 D 10.1.78.7 GigabitEthernet0/0/0 192.168.4.254/32 OSPF 10 2 D 10.1.78.7 GigabitEthernet0/0/0 display ospf lsdb OSPF Process 1 with Router ID 8.8.8.8 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 7.7.7.7 7.7.7.7 1364 48 8000000A 1 Router 6.6.6.6 6.6.6.6 758 48 8000000A 1 Router 8.8.8.8 8.8.8.8 1369 36 80000004 1 Network 10.1.78.7 7.7.7.7 1364 32 80000003 0 Network 10.1.67.6 6.6.6.6 835 32 80000005 0 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 192.168.4.0 6.6.6.6 200 36 80000001 1 External 192.168.2.0 6.6.6.6 477 36 80000001 1 External 192.168.3.0 6.6.6.6 477 36 80000001 1 External 10.1.67.0 6.6.6.6 477 36 80000001 1 External 192.168.0.0 6.6.6.6 200 36 80000001 1 External 192.168.1.0 6.6.6.6 477 36 80000001 1 关于OSPF应用filter-policy的结论:

关于export方向,只能在ASBR设备上应用过滤5类的路由条目。

关于import方向,可以应用在任何路由器上过滤路由条目,但不能过滤LSA。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3