《路由控制利器:Prefix-list与Filter-policy应用》

2026年01月19日/ 浏览 7

一、 引入:为什么需要路由过滤?

"网络中的路由并非越多越好,不当的路由可能带来:

路由表膨胀:消耗设备内存和CPU资源安全风险:恶意路由注入导致流量劫持次优路径:错误的路由导致网络环路或拥塞

Prefix-list和Filter-policy就像路由的安检系统,只允许合规的路由通过。"

二、 技术对比:选择合适的过滤工具

特性

Prefix-list

ACL

Filter-policy

匹配对象

网络前缀+掩码长度

IP地址+通配符

基于ACL或Prefix-list

匹配精度

精确控制掩码

❌ 只能粗略匹配

✅ 依赖底层匹配工具

灵活性

支持范围匹配

✅ 支持端口等

策略灵活

性能

✅ 高效

✅ 高效

⚠️ 依赖策略复杂度

应用场景

路由过滤主力

简单过滤

策略控制核心

三、 Prefix-list详解:路由的"精确制导武器"

1. 核心优势:掩码长度控制

# 传统ACL的局限性 acl number 2000 rule 5 permit source 10.1.0.0 0.0.255.255 # 只能匹配10.1.0.0/16范围 # Prefix-list的精确控制 ip ip-prefix MY-ROUTES index 10 permit 10.1.1.0 24 greater-equal 24 less-equal 24 # 只精确匹配10.1.1.0/24,不匹配10.1.1.0/25等其他掩码

2. Prefix-list语法详解

ip ip-prefix LIST-NAME index INDEX-NUMBER [permit|deny] IP-ADDRESS MASK-LENGTH [greater-equal MIN-MASK] [less-equal MAX-MASK]

3. 实战配置示例

示例1:精确匹配特定网段

# 只允许192.168.1.0/24通过 ip ip-prefix PRECISE index 10 permit 192.168.1.0 24 # 查看配置结果 display ip ip-prefix PRECISE

示例2:匹配一个网段范围

# 允许10.1.0.0/16~10.1.255.255/24范围内的所有路由 ip ip-prefix RANGE index 10 permit 10.1.0.0 16 greater-equal 24 less-equal 24

示例3:复杂匹配场景

# 允许所有B类网络,掩码长度为16-24位 ip ip-prefix B-CLASS index 10 permit 172.16.0.0 12 greater-equal 16 less-equal 24 # 拒绝默认路由,允许其他所有路由 ip ip-prefix NO-DEFAULT index 10 deny 0.0.0.0 0 ip ip-prefix NO-DEFAULT index 20 permit 0.0.0.0 0 less-equal 32

四、 Filter-policy详解:路由的"策略控制器"

1. Filter-policy工作原理

2. 两种应用方向:

Import方向:控制路由学习(进入路由表)Export方向:控制路由通告(发给邻居)

3. 配置语法:

# 基本语法 filter-policy {acl-number|ip-prefix ip-prefix-name} import filter-policy {acl-number|ip-prefix ip-prefix-name} export

五、 综合实战:企业网络路由控制案例

场景: 企业总部与分支网络路由控制

网络拓扑:

需求1:分支只学习特定总部路由

# 在分支路由器配置(Import过滤) ip ip-prefix HQ-ALLOWED index 10 permit 10.1.0.0 16 greater-equal 24 less-equal 24 ip ip-prefix HQ-ALLOWED index 20 permit 192.168.1.0 24 ospf 1 filter-policy ip-prefix HQ-ALLOWED import # 只学习允许的路由 area 0.0.0.1 network 172.16.1.0 0.0.0.255

需求2:总部不学习分支的测试网段

# 在总部配置(Import过滤) ip ip-prefix BLOCK-TEST index 10 deny 172.16.100.0 24 ip ip-prefix BLOCK-TEST index 20 permit 0.0.0.0 0 less-equal 32 ospf 1 filter-policy ip-prefix BLOCK-TEST import # 过滤测试网段

需求3:控制BGP路由通告

# 只向BGP邻居通告汇总路由 ip ip-prefix BGP-EXPORT index 10 permit 10.0.0.0 8 greater-equal 16 less-equal 24 bgp 100 filter-policy ip-prefix BGP-EXPORT export # 控制出方向路由 peer 192.168.1.2 as-number 200

六、 高级应用技巧

1. 与Route-policy协同工作

# 创建高级路由策略 route-policy ADVANCED-FILTER permit node 10 if-match ip-prefix IMPORTANT-ROUTES apply cost 100 ip ip-prefix IMPORTANT-ROUTES index 10 permit 10.1.0.0 16 # 应用策略 ospf 1 import-route static route-policy ADVANCED-FILTER

2. 基于协议类型的过滤

# 只允许OSPF学习直连路由中的特定网段 ip ip-prefix DIRECT-ALLOWED index 10 permit 192.168.1.0 24 ospf 1 import-route direct filter-policy ip-prefix DIRECT-ALLOWED import

七、 故障排查与验证

1. 查看Prefix-list配置

# 查看所有Prefix-list display ip ip-prefix # 查看特定Prefix-list详情 display ip ip-prefix HQ-ALLOWED

2. 验证过滤效果

# 查看OSPF路由表(过滤后) display ospf routing # 查看BGP路由表 display bgp routing-table # 查看路由策略应用情况 display route-policy ADVANCED-FILTER

3. 调试技巧

# 查看路由学习过程(诊断模式) terminal monitor terminal debugging debugging ip routing debugging ospf event

八、 实际应用场景

1. 网络安全加固

# 防止私有地址泄露到互联网 ip ip-prefix BLOCK-PRIVATE index 10 deny 10.0.0.0 8 less-equal 32 ip ip-prefix BLOCK-PRIVATE index 20 deny 172.16.0.0 12 less-equal 32 ip ip-prefix BLOCK-PRIVATE index 30 deny 192.168.0.0 16 less-equal 32 ip ip-prefix BLOCK-PRIVATE index 40 permit 0.0.0.0 0 less-equal 32 bgp 100 filter-policy ip-prefix BLOCK-PRIVATE export

2. 路由汇总优化

# 只通告汇总路由,隐藏细节 ip ip-prefix SUMMARY-ONLY index 10 permit 10.1.0.0 16 greater-equal 16 less-equal 16 ospf 1 filter-policy ip-prefix SUMMARY-ONLY export

九、 最佳实践建议

1. 规划建议

命名规范:使用描述性名称(如HQ-ALLOWED、BLOCK-TEST)索引规划:留出扩展空间(index 10,20,30...)注释说明:复杂规则添加注释说明

2. 性能优化

规则顺序:将常用规则放在前面规则精简:合并相似规则,减少条目数量定期审查:清理不再需要的规则

3. 风险规避

变更测试:在生产环境前充分测试备份配置:修改前备份当前配置分步实施:复杂变更分步骤实施

十、 总结

今日重点回顾:

Prefix-list提供精确的路由前缀匹配能力Filter-policy控制路由的学习和通告方向Import/Export过滤实现双向路由控制组合使用可以实现复杂的路由策略

互动提问:

你在实际项目中最常用的路由过滤场景是什么?遇到过哪些路由过滤导致的网络问题?对于Prefix-list的掩码范围匹配有什么实用技巧?

picture loss