route-map的难点研究

 route-map作为一个控制路由的工具,功能十分强大。一个route-map由多个节点组成,每个节点都会由permit和deny来构成。每个节点可以通过match访问控制列表或者前缀列表来进行匹配路由,应用相应的策略。
 相信许多朋友在初次接触route-map时可能都会遇到这样的问题:route-map节点中的permit和deny与访问控制列表中的permit和deny有哪些区别?
 下面举例说明两者之间的区别,如图所示,用R1的环回接口模拟多个网段,在将这些路由引入到OSPF时通过route-map来控制。
route-map的难点研究
 1、使用ACL匹配路由(ACL的permit和deny)
route-map的难点研究




 *这里需要强调第一个注意点:ACL和ip prefix-list被route-map进行调用时,这里的permit是指匹配该路由,deny是指不匹配该路由,而并不是过滤路由的意思。

 2、定义策略(route-map的permit和deny)
route-map的难点研究
 *这里强调第二个注意点:route-map中的permit是指将匹配到的路由允许通过或者被执行相应的策略,而deny是指将匹配到的路由进行过滤。
 在route-map中,我使用了3个节点,分析如下。
节点10:route-map的匹配模式为deny,match中调用了ACL 1。因为ACL被route-map调用时,permit是匹配,deny是不匹配,所以192.168.2.0/24在该节点被匹配,而192.168.1.0/24在该节点不会被匹配到,会放到下面的节点进行匹配。因此,这个节点的作用就是为了过滤掉192.168.2.0/24这条路由。
节点20:route-map的匹配模式为permit,match中调用了ACL 2。该节点匹配到的为192.168.4.0/24这条路由。而192.168.3.0/24这条路由将会被放到下面的节点来匹配。节点20的作用就是将192.168.4.0/24路由的metric值改为60。
节点30:route-map的匹配模式为permit,没有定义match和set,作用就是将前面节点没有匹配到的路由全部匹配,动作为允许通过。因此,上面节点中未被匹配的192.168.1.0/24和192.168.3.0/24将在此节点全部匹配,允许通过,且不修改任何属性。
 可以简单的理解为route-map的permit和deny用来放行(执行策略)或过滤路由,而ACL的permit和deny是通过匹配或不匹配的方式,来决定哪些路由需要被route-map控制。
 3、路由引入时调用route-map
 在R1上通过route-map控制引入OSPF的路由:
route-map的难点研究
 在R2上观察现象:
route-map的难点研究
 可以通过R2的路由表看到192.168.2.0/24被route-map过滤,192.168.1.0/24和192.168.3.0/24的属性没变,只有192.168.4.0/24的metric值变为60,符合预期。












發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章