路由策略实验配置:
在AR2上将4条静态路由引入ospf;
1.192.168.1.0 /24 引入后cost=100,type=1,其他默认
1.192.168.2.0 /24 引入后cost=200,type=2,其他默认
1.192.168.3.0 /24 默认引入
1.192.168.4.0 /24 引入后tag=500,其他默认
在AR1上,将tag=500的路由条目拒绝加表
在AR1上,将192.168.3.0/24的路由条目优先级修改为20,其他路由条目优先级不变。
ip route-static 192.168.1.0 255.255.255.0 NULL0
ip route-static 192.168.2.0 255.255.255.0 NULL0
ip route-static 192.168.3.0 255.255.255.0 NULL0
ip route-static 192.168.4.0 255.255.255.0 NULL0
ip route-static 192.168.5.0 255.255.255.0 NULL0
ospf 1 router-id 1.1.1.1
filter-policy route-policy guolv import
preference ase route-policy pre 150 //修改ospf外部路由优先级,route-policy定义的单独修改,其他默认使用150
area 0.0.0.0
network 12.1.1.1 0.0.0.0
#
route-policy guolv deny node 10
if-match tag 500
#
route-policy guolv permit node 1000
解析这条命令:route-policy guolv permit node 1000
route-policy 固定格式
guolv 自定义名字,被其他工具调用使用。
permit 行为:在不同的调用场景中,意义不同
node 1000 节点号,类似与acl 的rule 类似前缀列表的index,从小到大依次匹配,并且默认拒绝所有
if-match 用于匹配条件,这些条件可以是路由条目,可以是路由属性1.可以直接使用acl或者前缀列表来抓取路由条目2。还可以直接匹配cost,type,tag
如果一个node节点中有多个if-match,那么他们之间是逻辑与的关系,也就是说需要同时匹配。
如果一个node节点中没有配置if-match,那么就认为是匹配any
配置如下:
AR1配置如下:
[AR1]dis cu
[V200R003C00]
#
sysname AR1
#
interface GigabitEthernet0/0/0
ip address 12.1.1.1 255.255.255.0
#
interface NULL0
#
ospf 1 router-id 1.1.1.1
filter-policy route-policy guolv import
preference ase route-policy pre 150
area 0.0.0.0
network 12.1.1.1 0.0.0.0
#
route-policy guolv deny node 10
if-match tag 500
#
route-policy guolv permit node 1000
#
route-policy pre permit node 10
if-match ip-prefix 192.168.3.0
apply preference 20
#
ip ip-prefix 192.168.3.0 index 10 permit 192.168.3.0 24
AR2配置如下:
[AR2]dis cu
#
sysname AR2
#
interface GigabitEthernet0/0/0
ip address 12.1.1.2 255.255.255.0
#
ospf 1 router-id 2.2.2.2
import-route static route-policy huawei
area 0.0.0.0
network 12.1.1.2 0.0.0.0
#
route-policy huawei permit node 10
if-match ip-prefix 1
apply cost 100
apply cost-type type-1
#
route-policy huawei permit node 20
if-match ip-prefix 2
apply cost 200
apply cost-type type-2
#
route-policy huawei permit node 30
if-match ip-prefix 3
#
route-policy huawei permit node 40
if-match ip-prefix 4
apply tag 500
#
route-policy huawei permit node 100
#
ip ip-prefix 1 index 10 permit 192.168.1.0 24
ip ip-prefix 2 index 10 permit 192.168.2.0 24
ip ip-prefix 3 index 10 permit 192.168.3.0 24
ip ip-prefix 4 index 10 permit 192.168.4.0 24
#
ip route-static 192.168.1.0 255.255.255.0 NULL0
ip route-static 192.168.2.0 255.255.255.0 NULL0
ip route-static 192.168.3.0 255.255.255.0 NULL0
ip route-static 192.168.4.0 255.255.255.0 NULL0
ip route-static 192.168.5.0 255.255.255.0 NULL0
实验现象如下:
我们可以看到192.168.4.0 /24的理由被过滤掉了