前缀列表与序号
前缀列表(prefix-list)用来匹配网络前缀与掩码长度,是 BGP 与路由重分发里最常用的过滤器。每个条目都带序号(seq),不指定时按固定步长自动递增,显式写序号之后就能在中间插入新条目,不必重建整张表;删除也按序号精确操作。把序号管理好,是日常变更与策略评审的基本功。
基本信息
| 条目格式 | ip prefix-list <名> seq <号> permit|deny <前缀> [ge/le] |
|---|---|
| 默认步长 | IOS 默认每新增一条自动加 5 |
| 中间插入 | 用中间序号插入,不影响既有条目 |
| 精确删除 | no ip prefix-list <名> seq <号> |
| 匹配顺序 | 按序号从小到大,命中即停止 |
典型使用场景
- 只放行几个明确的前缀,其余全部拒绝
- 放行一个大网段下的明细,用 le 控制掩码上限
- 在既有策略中间插入例外条目,避免整表重写
- 变更评审:把序号与业务前缀一一对应,便于审计回溯
- 由 IRR 工具生成前缀清单后,按序号整理入库
增删与核对
增删与核对
ip prefix-list PL-A seq 10 permit 10.1.0.0/16 le 24 # 放行 10.1/16 及内部 /17-/24 明细
ip prefix-list PL-A seq 15 permit 10.1.1.0/24 # 中间插入例外,不影响 seq 10
ip prefix-list PL-A seq 20 deny 0.0.0.0/0 le 32 # 显式兜底拒绝,便于评审
!
no ip prefix-list PL-A seq 15 # 按序号精确删除,不碰相邻条目
show ip prefix-list PL-A # 核对最终条目与序号输出逐列读法
| 列 | 含义 | 正常/异常 |
|---|---|---|
| seq | 条目序号,决定匹配顺序 | 出现 1/2 之类小号多为历史遗留 |
| permit/deny | 命中后的动作 | 无命中时按隐式拒绝处理 |
| 前缀/掩码 | 匹配的网络号与掩码 | 掩码写错会匹配到完全不同的范围 |
| ge / le | 掩码长度下限/上限 | le 小于前缀长度时条目实际不匹配 |
不写 ge/le 时只匹配掩码长度与声明完全一致的前缀;加了 le 之后是区间匹配,容易把不想要的明细一起放行,评审时要把区间含义写清楚。
默认步长决定了还能插多少条:步长 5 时两个序号之间最多插 4 条。条目预期会持续增长的列表,建议一开始就用更大的步长(如 10 或 100)。
各平台写法不同:华为 VRP 用 ip ip-prefix,且强制要求显式写序号,语义相近但语法不通用,跨平台迁移需逐条改写。