是否需要在每个 L1/L2 设备上开启路由渗透(Route Leaking)取决于具体的渗透方向和网络设计需求。以下是关键细节和配置原则:
一、路由渗透的默认行为
-
L1 到 L2 的渗透默认情况下,Level-1 区域的路由会自动渗透到 Level-2 区域。这意味着所有 L1/L2 路由器会将本地 L1 区域的路由(除缺省路由外)全部通告到 L2 骨干网,无需额外配置。此时,即使存在多个 L1/L2 设备,L1 到 L2 的渗透是全局生效的,无需在每个设备上单独开启。(l1-》l2默认明细路由传输)
-
L2 到 L1 的渗透 默认情况下,Level-2 区域的路由不会渗透到 L1 区域 。L1 路由器仅通过 ATT(Attachment)标志位选择最近的 L1/L2 设备作为出口,可能导致次优路径。因此,若需将 L2 路由引入 L1 区域(例如优化跨区域流量路径),必须在与外部区域相连的 L1/L2 设备上手动配置路由渗透。(l2-》l1使用 默认路由传输)
二、多 L1/L2 设备场景下的配置原则
(1)L2 到 L1 的渗透:需在相关 L1/L2 设备上逐个配置
-
配置命令在华为设备上,需在每个需要引入 L2 路由的 L1/L2 设备的 IS-IS 进程中执行以下命令:
isis [process-id]
import-route isis level-2 into level-1 [filter-policy {acl | ip-prefix | route-policy}]
例如,若区域内有两个 L1/L2 设备(DeviceC 和 DeviceD)连接到 L2 骨干网,需分别在这两台设备上启用渗透,才能让 L1 路由器学习到完整的 L2 路由。
- 案例验证在华为的典型组网中,若仅在部分 L1/L2 设备(如 DeviceD)上配置渗透,L1 路由器(如 DeviceA)会优先选择路径开销更小的渗透点,从而优化流量路径。但若未在所有相关 L1/L2 设备上配置,可能导致部分 L1 路由器无法获取完整的 L2 路由。
(2)L1 到 L2 的渗透:默认全局生效,无需额外配置
-
行为说明所有 L1/L2 路由器会自动将本地 L1 区域的路由通告到 L2 骨干网,无论有多少个 L1/L2 设备。此时,L2 路由器会通过 SPF 计算选择最优路径,无需手动干预。
-
过滤策略若需限制 L1 到 L2 的渗透(例如仅允许部分路由进入 L2),可在 L1/L2 设备上配置过滤策略(如 IP 前缀列表或路由策略)。但此操作属于精细化控制,而非基础配置。
三、厂商实现差异
-
华为设备
- L1 到 L2 的渗透默认开启,L2 到 L1 的渗透需手动配置。import isis level-2 into level1
- 支持通过策略(如 ACL、IP 前缀列表)灵活控制渗透范围。
-
Cisco 设备
- 默认情况下,L1 到 L2 的渗透也需通过策略显式配置(如
redistribute isis level-1 into level-2
)。 - L2 到 L1 的渗透同样需要手动配置策略,且默认不生效。
- 默认情况下,L1 到 L2 的渗透也需通过策略显式配置(如
-
其他厂商 通常遵循 RFC 标准,但具体配置命令可能不同。例如,Juniper 需通过
set protocols isis import
语句配置渗透策略。
四、配置示例
假设网络中有两个 L1/L2 路由器(R1 和 R2)连接 L1 区域(Area 10)和 L2 骨干网(Area 0),需将 L2 路由引入 L1 区域以优化路径:
-
在 R1 上配置
isis 1 import-route isis level-2 into level-1 filter-policy ip-prefix L2_TO_L1
-
在 R2 上配置
isis 1 import-route isis level-2 into level-1 filter-policy ip-prefix L2_TO_L1
通过在两台设备上配置,L1 路由器可同时从 R1 和 R2 获取 L2 路由,并根据 SPF 算法选择最优路径。
五、注意事项
-
ATT 标志位的影响未配置 L2 到 L1 渗透时,L1 路由器仅根据 ATT 标志位选择出口,可能导致次优路径。例如,若 L1 路由器通过 ATT 标志选择了较远的 L1/L2 设备作为出口,即使存在更近的路径,也无法感知。
-
路由环路风险不当的路由渗透可能导致环路。建议结合过滤策略(如 IP 前缀列表或 AS 路径过滤)限制渗透范围,避免引入不必要的路由。
-
性能优化若 L2 区域路由数量庞大,可通过策略仅渗透关键路由(如汇总路由),减少 L1 路由器的负担。
总结
- L1 到 L2 的渗透:默认全局生效,无需在每个 L1/L2 设备上配置。
- L2 到 L1 的渗透:需在每个需要引入 L2 路由的 L1/L2 设备上手动开启,并通过策略控制渗透范围。
- 多 L1/L2 设备场景:若需优化跨区域流量,应在所有与外部区域相连的 L1/L2 设备上配置 L2 到 L1 的渗透,以确保 L1 路由器获取完整的路由信息并选择最优路径。
明细路由的优先级高于 ATT 默认路由
-
路由来源与优先级
- 明细路由 :通过
import-route isis level-2 into level-1
命令渗透到 L1 区域的 L2 路由,属于IS-IS Level-1 内部路由 ,其协议优先级为15。 - ATT 默认路由 :L1/2 路由器通过 ATT 标志位发送的默认路由(0.0.0.0/0),属于IS-IS Level-1 外部路由 ,其协议优先级为150 (与 OSPF ASE 路由相同)。结论:明细路由的优先级(15)远高于 ATT 默认路由(150),因此 L1 路由器会优先选择明细路由。
- 明细路由 :通过
-
SPF 计算逻辑L1 路由器在计算路由时,会同时考虑明细路由和 ATT 默认路由:
- 明细路由:直接携带到目标网段的完整开销(如 L1 路由器到 L1/2 设备的链路开销 + L1/2 设备到 L2 骨干的开销)。
- ATT 默认路由:仅指向最近的 L1/2 设备,后续路径开销未知。由于明细路由的优先级更高,且能提供更精确的路径信息,L1 路由器会直接选择明细路由,即使到 ATT 设备的链路开销更小。
在华为设备上,若仅在部分 L1/2 设备开启渗透,L1 路由器的路由表会明确显示明细路由的优先级更高。例如:
配置建议
-
强制开启渗透 :在所有 L1/2 设备上配置
import-route isis level-2 into level-1
,确保 L1 路由器获取完整的 L2 路由信息。[R1] isis 1 [R1-isis-1] import-route isis level-2 into level-1
-
过滤不必要的路由:使用 IP 前缀列表或路由策略限制渗透范围,避免 L1 路由器负担过重。
[R1] ip ip-prefix L2_TO_L1 permit 5.5.5.0/24 [R1-isis-1] import-route isis level-2 into level-1 filter-policy ip-prefix L2_TO_L1
-
验证配置:通过以下命令检查 L1 路由器的路由表和 LSDB:
在 IS-IS 路由选择中,优先级(Pre)是第一判断标准,开销(Cost)是第二标准 ------ 即使明细路由的 Cost 远大于 ATT 默认路由,只要明细路由的优先级更高,L1 路由器依然会优先选择明细路由。结合你提出的 "明细路由 Cost 150,默认路由 Cost 1" 场景,结论非常明确:选择明细路由。
核心逻辑:先比 "优先级",再比 "开销"
IS-IS 路由器的路由选择遵循严格的 "层级判断顺序",不会因为某条路由的 Cost 更小就跳过优先级直接选择。具体到你的场景:
路由类型 协议优先级(Pre) 路由开销(Cost) 路由来源说明 渗透的明细路由 15(ISIS-L1) 150 L1/2 设备通过 import-route isis level-2 into level-1
渗透的 L2 路由,属于L1 内部明细路由ATT 默认路由 150(ISIS-L1-ATT) 1 L1/2 设备通过 ATT 标志位触发的默认路由(0.0.0.0/0),属于L1 外部兜底路由