1. 技术背景
在部署路由策略的过程中,往往需要通过一些手段 “抓取” 路由,从而能够针对特定的路由来执行相应的策略,以实现差异化。在 “抓取” 路由的工具中,ACL 无疑是最常用的工具之一。
在上图中,R2 部署了 RIP 到 OSPF 的路由重发布,在这个场景中,有个特殊需求:将引入 OSPF 后的外部路由 192.168.1.0/24 的 cost 设定为 10,192.168.2.0/24 的 cost 设定为 20,那么便要先匹配或者说 “抓取” 相关路由,然后针对不同的路由在 route-policy 中 apply 不同的 cost,从而实现策略。
使用 ACL 来应对这个需求是完全没问题的,定义一个 ACL2001,匹配 192.168.1.0,定义一个 ACL2002 匹配 192.168.2.0,然后在 route-policy RP 中写两个 node 分别针对这两条路由 apply 不同的 cost 值,很简单。
但是……
上面这个环境,ACL 就无能为力了。为什么呢?
因为 ACL 只能够匹配路由前缀的网络地址部分,无法匹配路由前缀的网络掩码(或者说前缀长度)。
准确的说,一条路由前缀是包含网络地址和网络掩码(前缀长度)的,对于 192.168.1.0,这算不上一条完整的路由,应该采用 192.168.1.0 255.255.255.0 或者 192.168.1.0/24 的方式呈现,这才是一条完整路由。而只要网络地址或者网络掩码中有任何一项不同,这就是两条不同的路由了,例如 192.168.1.0/24 和 192.168.1.0/25,这就是两条不同的路由。
ACL 是无法匹配路由前缀的掩码部分的
,因此上图所示的需求用 ACL 是无法完成的。
这里顺便提一下,如果使用 Basic ACL 匹配路由,建议在书写 ACL 时,反掩码使用 0.0.0.0,否则会造成匹配不精确的现象
。例如要匹配 192.168.1.0/24 这条路由,如果 acl 的 rule 这么写:
rule permit source 192.168.1.0 0.0.0.255
这事实上是不严谨的,因为它将 192.168.1.0、192.168.1.1、192.168.1.2、192.168.1.3………… 等众多网络地址全匹配到了。也就是说,上面的 0.0.0.255,并不能用于匹配网络掩码 255.255.255.0,它只不过是与前面的 192.168.1.0 组合,并用于匹配网络地址而已。所以,建议这么写:
rule permit source 192.168.1.0 0.0.0.0
或者:
rule permit source 192.168.1.0 0
2.IP-Prefix(IP 前缀列表)
- IP 前缀列表匹配路由的可控性比 ACL 高得多,也更为灵活;
- IP 前缀列表可匹配路由前缀中的网络地址及网络掩码(前缀长度),增强了匹配的精确度;
- IP 前缀列表除了能够匹配具体的网络掩码长度,还能够匹配掩码长度范围,非常灵活。
- 一个 IP 前缀列表可以包含一个或多个表项(语句),在匹配过程中依序进行计算。表项中的索引号
(序号)决定了每个表项在整个 IP 前缀列表中的位置。
3.IP 前缀列表的配置
创建一个 IP 前缀列表的配置如下:
[Huawei] ip ip-prefix name [ index index-number ] { permit | deny } ip-address mask-length [ greater-equal greater-equal-value ] [ less-equal less-equal-value ]
- Name 参数是本 IP 前缀列表的名称。
- Index 关键字及参数指示本表项在本 IP 前缀列表中的序号(或索引号),该关键字及参数是可选的。缺省情况下,该序号值按照配置先后顺序依次递增,每次加 10,第一个序号值为 10。
- Permit 及 deny 关键字用于配置本表项的匹配模式。
- ip-address mask-length 参数用于分别制定 IP 地址及掩码长度。
- [ greater-equal greater-equal-value ] [ less-equal less-equal-value ] 是可选配置,用于指定掩码长度的范围。
如果在命令中只指定了 greater-equal,则前缀范围为 [greater-equal-value,32]
;
如果在命令中只指定了 less-equal,则前缀范围为 [mask-length,less-equal-value]
。
IP 前缀列表由列表名称进行标识,每个 IP 前缀列表可以包含多个表项。下面的配置展示了一个名为 abcd,它包含两个表项:
[Huawei] ip ip-prefix abcd index 10 deny 1.0.0.0 8
[Huawei] ip ip-prefix abcd index 20 permit 2.0.0.0 8
在 IP 前缀列表的匹配过程中,设备按索引号升序依次检查各个表项
,只要有一个表项满足条件,就不再去匹配后续表项。
以 ip ip-prefix abcd index 10 deny 1.0.0.0 8
为例,这个表项属于 IP 前缀列表 abcd,它的索引号为 10,并且匹配模式为拒绝,在该表项中 IP 前缀为 1.0.0.0,掩码长度为 8,因此这个表项用于匹配路由 1.0.0.0/8,只有该路由才会被匹配,并且该路由将会被该表项过滤(deny)。这个命令中没有定义掩码长度范围。
如果一条路由无法被一个 IP 前缀列表中的所有表项匹配,那么这条路由被视为被该前缀列表拒绝通过。也就是说,一个 IP 前缀列表的末尾,隐含着一条拒绝所有的表项。
4. 配置示例
示例 1:
匹配某条特定路由 192.168.1.0/24:
ip ip-prefix ipprefix1 192.168.1.0 24
匹配默认路由 0.0.0.0/0:
ip ip-prefix ipprefix2 permit 0.0.0.0 0
注意:
IP 前缀为 0.0.0.0 时表示通配地址。此时不论掩码指定为多少,都表示掩码长度范围内的所有路由全被匹配
。
匹配所有 / 32 主机路由:
ip ip-prefix ipprefix3 permit 0.0.0.0 0 greater-equal 32
匹配任意路由 (any):
ip ip-prefix ipprefix4 permit 0.0.0.0 0 less-equal 32
示例 2:
匹配以下路由(用最精确最简洁的方式):
192.168.4.0/24
192.168.5.0/24
192.168.6.0/24
192.168.7.0/24
ip ip-prefix abcd permit 192.168.4.0 22 greater-equal 24 less-equal 24
上面这条命令的意思是,允许那些网络地址的前 22bit (共同的前缀长度)与 192.168.4.0 的前 22bit 相同,并且网络掩码长度为 24 的路由。注意此处 “greater-equal 24 less-equal 24” 要求网络掩码长度既大于或等于 24,又小于或等于 24,因此只能是 24。
示例 3:
在以上配置中,首先创建了一个名称为 1 的 IP 前缀列表,该列表中包含一个表项,这个表项要求被匹配路由的网络地址的前 16bit 与 192.168.0.0 的前 16bit 相同,并且路由的网络掩码长度为 16,因此该表项只能用于匹配路由 192.168.0.0/16。由于该表项的匹配模式为 permit,因此路由 192.168.0.0/16 被该 IP 前缀列表允许。
随后定义了一个 route-policy RP,它包含一个节点,且该节点的匹配模式为 permit。该节点调用了 IP 前缀列表 1,如此一来,192.168.0.0/16 将被 route-policy RP 所允许,而由于 route-policy 的末尾隐含着一个拒绝所有的节点,因此对于 route-policy RP 而言,只允许了路由 192.168.0.0/16。
路由工具之路由策略 router-policy、acl 列表与 ip-prefix 前缀列表的区别、过滤列表 filter-policy
3.0.0 路由工具之路由策略 router-policy、acl 列表与 ip-prefix 前缀列表的区别、过滤列表 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 了。
<AR7>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 了。
<AR7>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。
<AR7>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
<AR7>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 并没有对应的路由条目。
<AR8>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 的路由条目,故无法访问成功
<AR8>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,不能过滤普通路由。
<AR7>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
<AR7>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 表,发现没有任何的变化(过滤失败)。
<AR8>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 : <Active>
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
<AR8>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。
via:
-
路由策略中的 IP-Prefix 你了解多少?-CSDN 博客 wljslmz 于 2020-10-07 23:22:54 发布
https://blog.csdn.net/weixin_43025343/article/details/108957284
-
路由工具之路由策略 router-policy、acl 列表与 ip-prefix 前缀列表的区别、过滤列表 filter-policy_ip ip-prefix-CSDN 博客 Hades_Ling 已于 2023-01-29 18:54:18 修改