ACL的局限性 体现在:ACL只能抓取路由的前缀,没有办法匹配路由的掩码信息,如果有两条路由前缀相同,使用ACL没有办法实现精确的过滤。
ip-prefix
前缀列表的优势:
既能够匹配路由的前缀信息,也能够匹配路由的掩码信息。注意:前缀列表不能用于流量过滤。
前缀列表的组成
- name:名字,用于标识一条唯一的前列表。
- index:索引号,与ACL的rule编号类似,匹配顺序为从小到大依次匹配。(默认步长为10)
- permit/deny:行为,允许或者拒绝。
- length:长度,即用于定义网络前缀的长度。
- Ge:大于等于的意思。
- Le: 小于等于的意思。
注意:配置前缀列表需要满足Length < Ge < Le
前缀列表默认隐含拒绝所有语句,当路由不匹配任何index的时候,将会被拒绝。
前缀列表的表达形式:
ip ip-prefix test permit 192.168.1.0 24 匹配单条路由
ip ip-prefix test permit 192.168.1.0 24 ge 25 前24bit固定,匹配掩码在25~32之间的路由
ip ip-prefix test permit 192.168.1.0 24 le 32 前24bit固定,匹配掩码在24~32之间的路由
ip ip-prefix test permit 192.168.1.0 24 ge 26 le 30 前24bit内定,匹配掩码在26~38之间的路由
ip ip-prefix test permit 0.0.0.0 0 匹配默认路由
ip ip-prefix test permit 0.0.0.0 0 le 32 匹配所有路由
ip ip-prefix test permit 0.0.0.0 0 ge 32 le 32 匹配所有主机路由
ip ip-prefix test permit 0.0.0.0 1 ge 8 le 8 匹配A类网络
Iip ip-prefix test permit 0.0.0.0 0 ge 24 le 24 匹配所有掩码等于24位的路由。
当前缀列表不添加Ge和Le的时候,ge和Le等于length。
当前缀列表添加Ge,而不添加Le的时候,Le默认等于32.
当前缀列表添加Le,而不添加Ge的时候,Ge等于Lenght。
唯一匹配:当路由匹配了一个索引之后,不在向下面的索引继续匹配。
顺序匹配:按照索引号的大小,从小到大依次进行匹配,如果不配置index,默认以10递增。
默认拒绝:当路由不匹配任何索引之后,路由将会被拒绝。
IP-Prefix List不能用于IP报文的过滤,只能用于路由信息的过滤
- 条件工具 ACL IP-prefix
- 策略工具 Route-Policy
- 调用工具 filter - policy
Route-policy(路由策略)
既能够匹配路由信息,也能够对路由的某些属性做出修改。
应用场景
- 常用于路由引入时进行过滤或者对路由的属性进行修改。
- BGP协议实施策略最主要的工具。
- 可以作为filter-policy的匹配条件。
route-policy的组成部分
- 匹配模式:
- permit:当路由匹配permit的节点,将会被允许,并且将会执行apply语句。
- deny:当路由匹配deny的节点,将会被拒绝,不执行apply语句。
- 节点号:一个route-policy由多个节点号进行组成,每个节点叫做一个node,配置route-policy的时候必须携带节点号,执行策略的时候按照节点号大小,从小到大依次进行。
- 匹配语句:if-match,用于定义一些条件,满足条件即代表匹配。一个node中可以定义多个if-match语句多个if-match语句之间是逻辑"与"的关系,代表都需要满足;一个node里也可以不配置if-match语句,如果不匹配,则代表匹配所有。
- 执行语句:apply用于执行某个动作,设备按照apply语句的动作对路由信息进行修改,一个node可以存在多个apply语句,如果存在多个,则都执行修改,也可以不存在apply语句,如果不存在apply语句,只代表匹配,而不修改属性。
- 名字:用于标识唯一的一个route-policy。
@多个node之间是逻辑"或"的关系,即路由匹配那个node,就会执行该node的apply动作。
@顺序匹配:当路由满足多个node的时候,按照node号从小到大依次进行匹配。
@唯一匹配:当路由匹配一个node之后,不会向下再次匹配。
@默认拒绝;当路由不满足任何node之后,将会被拒绝。