Prefix List(前缀列表)
Prefix List(前缀列表) 是一种用于 精确匹配 IPv4 或 IPv6 地址前缀(网络地址 + 掩码) 的工具,常用于路由控制和策略路由中。相比传统的访问控制列表(ACL),prefix-list 更加灵活、直观且功能更强大 。1.作用:
1.1 过滤路由信息
在动态路由协议(如 BGP、OSPF、EIGRP)中用来控制哪些路由可以被接收或发送。
1.2 匹配特定前缀和掩码
可以指定一个 IP 前缀(如 192.168.1.0)以及其精确的掩码长度 (如 /24)。
支持“大于等于某掩码长度”的范围匹配(使用 ge 和 le 参数)。
1.3 替代 ACL 实现更精细的路由控制
ACL 主要基于通配符掩码进行匹配,不够直观。
2.语法:
ip prefix-list 【name】 [seq 【sequence-number】] 【permit|deny】 【network】/【length】 [ge 【min-length】] [le 【max-length】]
3.Prefix-List 的工作原理
Prefix-list 是按顺序逐条匹配的(类似于 ACL)。
每条规则都有一个序列号(seq),匹配时从上到下依次判断。
一旦匹配到一条规则(permit 或 deny),就不会继续往下匹配。
如果没有匹配到任何规则,默认会有一条隐含的 deny any 规则。
4.Prefix-List 的应用场景
4.1 在 BGP 中过滤路由
router bgp 65001
neighbor 10.1.1.2 prefix-list PL-IN in
neighbor 10.1.1.2 prefix-list PL-OUT out
4.2 在 OSPF 中过滤重分发进来的路由
router ospf 1
redistribute static subnets route-map RM-STATIC
r oute-map RM-STATIC permit 10
match ip address prefix-list PL-STATIC
配合 route-map 使用,实现更细粒度的路由控制
4.3 在 PBR(Policy-Based Routing)中匹配目的网络
结合 route-map,实现对某些特定流量的策略路由。
5.Prefix-List vs Access-List 对比
使用CIDR匹配,可读性高,支持 ge / le,应用场景广:路由协议、PBR、Route-map,而acl多应用于报文过滤、基础的路由控制
6.配置示例:
6.1 ip prefix-list ALLOW-192-168-1-0 seq 5 permit 192.168.1.0/24
6.2 ip prefix-list ALLOW-192-168-0-0 seq 10 permit 192.168.0.0/16 ge 24
允许 192.168.0.0/16 下的所有子网,只要掩码长度 ≥24
6.3 ip prefix-list BLOCK-192-168-2-0 seq 5 deny 192.168.2.0/24
ip prefix-list BLOCK-192-168-2-0 seq 10 permit 0.0.0.0/0 le 32
第一条拒绝 192.168.2.0/24
第二条允许所有其他路由(掩码长度任意)