了解路由策略测试
路由策略测试提供了一种在将策略应用于路由设备之前验证策略有效性的方法。在应用路由策略之前,您可以发出 test policy
命令以确保策略产生预期的结果:
user@host> test policy policy-name prefix
请记住,如果前缀与配置的策略不匹配,则应用不同的协议具有不同的默认策略。对于 BGP,这是接受的,但对于 RIP,它是拒绝的。该 test policy
命令始终使用 accept 作为默认策略,因此除非您明确拒绝所有不想匹配的路由,否则您可能会看到匹配的路由数超过预期。
命令 test policy
的默认策略接受来自所有协议的所有路由。在评估特定于协议的条件时,测试输出可能会产生误导。例如,如果为 BGP 定义一个接受指定前缀路由的策略,并将其作为导出策略应用于 BGP,则与前缀匹配的 BGP 路由将播发至 BGP 对等方。但是,如果使用命令测试同一策略 test policy
,则测试输出可能指示已接受非 BGP 路由。
示例:测试路由策略
测试以下策略,该策略查找不需要的路由并拒绝它们:
[edit policy-options] policy-statement reject-unwanted-routes { term drop-these-routes { from { route-filter 0/0 exact; route-filter 10/8 orlonger; route-filter 172.16/12 orlonger; route-filter 192.168/16 orlonger; route-filter 224/3 orlonger; } then reject; } }
针对路由表中的所有路由测试此策略:
user@host> test policy reject-unwanted-routes 0/0
针对一组特定路由测试此策略:
user@host> test policy reject-unwanted-routes 10.49.0.0/16