首页/网络/BGP 与广域网速查/前缀列表的模块化与多列表引用
路由过滤与重分发66 条

前缀列表的模块化与多列表引用

按来源拆分列表(客户、对等、上游、特殊汇总)并模块化命名;route-map 的单条 match 可引用多个列表,匹配为或关系。

BGP 与广域网速查网络更新于 2026-10-13

列表拆分与引用语义

前缀列表的模块化是策略工程的基础:按来源与用途拆成独立列表(客户、对等、上游、特殊汇总),命名规范统一,单表条目数量可控。引用时的语义要特别注意——route-map 的单条 match 内可以写多个列表,它们之间是或关系;多条 match 语句之间才是与关系,这一层关系写反,放行范围会与预期差出很远。

基本信息

拆分原则按来源或用途独立成表,避免混装
命名规范方向-来源结构,如 PL-OUT-TRANSIT
引用语法match ip address prefix-list LIST-A LIST-B
匹配语义单条 match 内多个列表为或关系
语句关系多条 match 语句之间为与关系
维护收益条目可控,便于审计、授权与回滚

典型使用场景

  • 多来源策略:客户、对等、上游分别建表,按对象授权
  • 审计与回滚:单表变更影响面小,回滚只改一处
  • 团队协作:统一命名让配置自解释,减少口头交接
  • 排障意外放行:先确认多列表的或关系是否写错
  • 迁移与合并:列表可复用,避免复制整段策略配置

拆分与引用

拆分与引用
ip prefix-list PL-CUST-A permit 10.10.0.0/16 le 24   # 客户 A 的地址段
ip prefix-list PL-PEER-A permit 10.20.0.0/16 le 24   # 对等方 A 的地址段
!
route-map RM-OUT permit 10
 match ip address prefix-list PL-CUST-A PL-PEER-A    # 单条 match 内为或关系
!
show ip prefix-list PL-CUST-A                        # 核对列表内容
show ip prefix-list PL-CUST-A detail                 # 看条目与命中情况

引用语义速查

写法含义常见误用
match ... prefix-list A B匹配 A 或 B误解为必须同时匹配 A 与 B
多条 match 语句语句之间为与关系误当作或关系,放行范围被意外收窄
permit 与 deny 顺序按序匹配,命中即停忽略顺序导致后续语句形同虚设
le / ge 掩码范围限定匹配的掩码长度漏写 le 导致只匹配单一掩码长度
「或与与」是前缀列表引用里最容易出错的地方:单条 match 内的多个列表是或关系,多条 match 语句之间才是与关系,写反会得到完全不同的放行范围。
列表命名要能自解释:把方向与来源写进名字(如 PL-OUT-TRANSIT、PL-IN-CUST),接手的人在 route-map 里就能看懂这条策略在做什么,比逐条读前缀高效得多。

易错点

  • 几百条前缀塞进一个列表:变更、回滚与审计都困难,也无法按来源做授权
  • 把多个列表理解为与关系:单条 match 内多列表是或、多条 match 之间才是与,写反会显著改变放行范围
  • 命名随意:列表名不带方向与来源,策略可读性差,交接成本高
  • 忽略 le 与 ge 语义:不写掩码范围时会漏匹配或过度匹配
  • 不核对命中结果:用 detail 查看条目与命中情况,是验证列表是否按预期生效的直接手段

数据来源与参考

  • 运营商路由策略工程实践
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌