网络路由策略与过滤策略原理及实验脚本
一、引言
在复杂的网络环境中,路由策略和过滤策略是保障网络高效、安全运行的关键技术。它们能够精准控制路由信息的传递与处理,满足多样化的网络需求。本文将深入剖析过滤策略在路径矢量协议(以 BGP 为例)、链路状态协议中的原理,详解路由策略原理,并通过进阶实验展示其实际应用。
二、过滤策略原理剖析
(一)路径矢量协议(BGP)中的 Filter - Policy
路径矢量路由协议(BGP)用于在自治系统(AS)之间传递路由信息 。Filter - Policy 可对这些路由信息进行过滤,同样分为入、出方向,作用于 BGP 的路由更新过程。
- 出方向(filter - policy export):当 BGP 设备将本地的路由信息发布给邻居时,在路由信息从 BGP 路由表(BGP Routing - Table)向邻居传递的过程中,在此处进行过滤,决定哪些 BGP 路由能被发送给邻居。比如 BGP 设备 R1 向邻居 R2 发布路由时,可通过 export 过滤,阻止特定路由外传,避免向邻居发送不必要的路由信息,同时也能对发布的路由进行精准控制,符合网络流量规划需求。
- 入方向(filter - policy import):当 BGP 设备从邻居接收路由信息时,在路由信息进入本地 BGP 路由表(BGP Routing - Table)之前进行过滤,决定哪些路由能被接收并加入本地 BGP 路由表。像 R2 接收 R1 的 BGP 路由时,import 过滤可筛选出符合网络需求的路由,防止无用或者存在安全风险的路由进入本地路由表,占用设备资源。
原理示意图:
[此处插入类似距离矢量协议过滤策略原理,替换为 BGP 场景的图片,展示 BGP 设备间路由传递及 Filter - Policy 入、出方向位置]
(二)链路状态协议中的 Filter - Policy(以 OSPF 为例)
链路状态协议(如 OSPF)传递 LSA 信息,设备依据 LSA 生成 LSDB,再计算路由。Filter - Policy 无法过滤 LSA,仅作用于路由信息。
- 入方向(filter - policy import):LSA 生成路由后,在路由加入本地路由表(IP Routing - Table)前过滤,让特定路由不加入,控制本地路由表内容。例如 R1 接收 LSA 生成路由,import 过滤可排除不需要的路由。
- 出方向(filter - policy export):主要过滤本地始发的 5 类 LSA 对应的路由,以及从其他协议引入的路由,决定向外发布哪些路由信息,防止不当路由扩散。
原理示意图:
[此处插入第二张链路状态协议过滤策略原理图片]
三、路由策略(Route - Policy)原理
路由策略通过匹配条件(If - match)和动作(Apply),精细选择路由、修改路由属性。它有多个节点(node),按顺序匹配:
- 路由进入 route - policy,先匹配 node 10,检查 If - match 条件,若全部匹配:
- 匹配模式为 permit,执行 Apply 动作(如修改度量值、路由类型、BGP 的 AS 路径等),路由通过策略;
- 匹配模式为 deny,路由被拒绝。
- 若 node 10 未全部匹配,继续匹配后续 node N,流程类似。若所有节点都不匹配,路由被拒绝。
通过灵活设置节点、匹配条件和动作,能实现复杂路由管控,如控制 BGP 路由的发布、接收,优化网络选路,调整 BGP 路由的各类属性(本地优先级、MED 等)。
原理示意图:
[此处插入第三张路由策略原理图片]
四、进阶实验实践
实验一:路径矢量协议(BGP)中复杂过滤策略
实验拓扑(接口等基本配置省略)
搭建包含 R1、R2、R3、R4 的 BGP 网络,R1 属于 AS 100,R2 属于 AS 200,R3 属于 AS 300,R4 属于 AS 400,R1 与 R2、R2 与 R3、R3 与 R4 建立 BGP 邻居关系。R1 连接多个网段(192.168.1.0/24 - 192.168.5.0/24 ),并通过 BGP 发布这些路由,模拟跨自治系统的复杂网络路由传递场景。
实验需求
- R2 接收 R1 的 BGP 路由时,拒绝 192.168.3.0/24 路由进入本地 BGP 路由表,但允许其他路由,且 R2 向 R3 发布 BGP 路由时,过滤 192.168.2.0/24 。
- R3 向 R4 发布 BGP 路由时,仅允许 192.168.1.0/24 、192.168.5.0/24 。
配置脚本(以华为设备为例)
R1 配置:
[R1] bgp 100
[R1 - bgp] peer 10.0.12.2 as-number 200
[R1 - bgp] network 192.168.1.0 255.255.255.0
[R1 - bgp] network 192.168.2.0 255.255.255.0
[R1 - bgp] network 192.168.3.0 255.255.255.0
[R1 - bgp] network 192.168.4.0 255.255.255.0
[R1 - bgp] network 192.168.5.0 255.255.255.0
R2 配置:
[R2] ip ip-prefix bgp-in index 10 deny 192.168.3.0 24
[R2] ip ip-prefix bgp-in index 20 permit 0.0.0.0 0
[R2] bgp 200
[R2 - bgp] peer 10.0.12.1 as-number 100
[R2 - bgp] peer 10.0.12.1 filter-policy ip-prefix bgp-in import [R2] ip ip-prefix bgp-out index 10 deny 192.168.2.0 24
[R2] ip ip-prefix bgp-out index 20 permit 0.0.0.0 0
[R2] bgp 200
[R2 - bgp] peer 10.0.23.3 as-number 300
[R2 - bgp] peer 10.0.23.3 filter-policy ip-prefix bgp-Out export
R3 配置:
[R3] ip ip-prefix bgp-out-r3 index 10 permit 192.168.1.0 24
[R3] ip ip-prefix bgp-out-r3 index 20 permit 192.168.5.0 24
[R3] ip ip-prefix bgp-out-r3 index 30 deny 0.0.0.0 0
[R3] bgp 300
[R3 - bgp] peer 10.0.23.2 as-number 200
[R3 - bgp] peer 10.0.34.4 as-number 400
[R3 - bgp] peer 10.0.34.4 filter-policy ip-prefix bgp-out-r3 export
R4 配置:
[R4] bgp 400
[R4 - bgp] peer 10.0.34.3 as-number 300
实验二:链路状态协议(OSPF)高级过滤与路由策略结合
实验拓扑(接口配置和OSPF配置等省略)
R1、R2、R3、R4 运行 OSPF,Area 0 ,R1 引入多个直连网段(10.0.1.0/24 - 10.0.4.0/24 )和静态路由(172.16.1.0/24 ),模拟多路由场景。
实验需求
- R2 使用 Filter - Policy,入方向拒绝 10.0.2.0/24 路由加入路由表,但不影响 LSDB 。
- R3 使用 Route - Policy,修改从 R1 引入的静态路由 172.16.1.0/24 的度量值为 10,且标记为 Type - 1 外部路由。
- R4 接收 OSPF 路由时,仅允许 10.0.1.0/24 、10.0.3.0/24 ,通过 Filter - Policy 过滤。
配置脚本(华为设备)
R1 配置:
[R1] ospf 1
[R1-ospf-1] import-route direct
[R1-ospf-1] import-route static
R2 配置:
[R2] ip ip-prefix ospf-in index 10 deny 10.0.2.0 24
[R2] ip ip-prefix ospf-in index 20 permit 0.0.0.0 0
[R2] ospf 1
[R2-ospf-1] filter-policy ip-prefix ospf-in import
R3 配置:
[R3] ip ip-prefix static-route index 10 permit 172.16.1.0 24
[R3] route-policy ospf-rp permit node 10
[R3-route-policy] if-match ip-prefix static-route
[R3-route-policy] apply cost 10
[R3-route-policy] apply cost-type type-1
[R3] ospf 1
[R3-ospf-1] import-route static route-policy ospf-rp
R4 配置:
[R4] ip ip-prefix ospf-in-r4 index 10 permit 10.0.1.0 24
[R4] ip ip-prefix ospf-in-r4 index 20 permit 10.0.3.0 24
[R4] ip ip-prefix ospf-in-r4 index 30 deny 0.0.0.0 0
[R4] ospf 1
[R4-ospf-1] filter-policy ip-prefix ospf-in-r4 import
五、总结
过滤策略在路径矢量协议(BGP)中,精准控制跨自治系统路由信息的收发,助力实现自治系统间路由的精细管控;在链路状态协议里,有效作用于路由层面过滤。路由策略通过灵活匹配和动作,实现复杂路由属性调整,无论是 BGP 的 AS 路径、本地优先级等属性,还是 OSPF 的外部路由类型等,都能精准调控。进阶实验模拟真实复杂网络,验证策略有效性。掌握这些,能应对多样网络需求,优化网络性能、保障安全,为构建健壮网络架构筑牢基础 。后续可探索策略在 IPv6 网络 BGP 场景、多协议融合(BGP 与 OSPF 等结合)场景的应用,持续拓展网络技术实践深度。