2. MX 平台 SR 基础配置准备

Segment Routing 在 MX 平台上并不是一个“打开开关就生效”的独立功能,它依赖三个前置条件同时成立:Junos 版本具备 SR 能力、底层 IGP 已经稳定收敛并携带 SR 扩展、MPLS 转发面与 SR 全局能力已经启用。本节的目标不是打通 SR 路径,而是搭建一个可复现、可回退、可验证的初始环境,让后续的 SRGB、Prefix-SID、Adjacency-SID 实验有一个干净的起点。

一、Junos 版本与硬件能力确认

MX 系列对 SR 的支持与 Junos 主版本、线卡类型、PIC 类型强相关。MPLS 与 SR 的转发能力由 FPC/PIC 决定,因此第一步不是敲配置,而是确认“这台设备到底支不支持”。建议在每台参与实验的 MX 上执行:

show version | match "Junos:"
show chassis hardware | match "FPC|PIC|MPC"
show configuration | display set | match "chassis fpc"

判断依据可以归纳为三点:其一,Junos 版本需为支持 SR 的版本(例如 16.1 之后的主流版本,具体以官方 SR 特性矩阵为准);其二,转发芯片需为支持 MPLS 的 MPC 或等效线卡,老式 DPC 在部分 SR 特性上受限;其三,若计划做 SR-TE 或 TI-LFA,还需确认是否具备相应许可与内存余量。教学示例中,我们假设三台 MX(MX-A、MX-B、MX-C)均为 MPC 线卡、Junos 20.4R3,属于可支持 SR 的合理假设环境。

版本确认不是形式主义:不同 Junos 版本对 SRGB 默认值、Prefix-SID 索引范围、SR-TE 支持程度不同,先确认版本可以避免后续“配置看起来对但转发不通”的排障困境。

二、接口与 IGP 基础配置

SR 的控制面信息通过 IGP 泛洪,因此 IGP 必须先稳定。以 OSPF 为例,MX-A、MX-B、MX-C 之间建立点对点链路,接口地址规划如下(示例):

设备接口地址对端
MX-Age-0/0/010.0.1.1/30MX-B ge-0/0/0
MX-Bge-0/0/010.0.1.2/30MX-A
MX-Bge-0/0/110.0.2.1/30MX-C ge-0/0/0
MX-Cge-0/0/010.0.2.2/30MX-B

接口配置需要显式启用 MPLS 家族,否则即使 IGP 通了,MPLS 标签也不会在接口上生效。以 MX-A 为例:

set interfaces ge-0/0/0 unit 0 family inet address 10.0.1.1/30
set interfaces ge-0/0/0 unit 0 family mpls
set interfaces lo0 unit 0 family inet address 10.255.0.1/32

IGP 部分,OSPF 需要开启流量工程扩展,并确保 loopback 参与泛洪。MX-A 的 OSPF 关键配置:

set protocols ospf area 0.0.0.0 interface ge-0/0/0.0
set protocols ospf area 0.0.0.0 interface lo0.0 passive
set protocols ospf traffic-engineering

配置完成后,用 show ospf neighbor 确认邻接达到 Full,用 show route protocol ospf 确认 loopback 路由已学习。只有 IGP 收敛稳定,后续 SR 扩展才能被正确泛洪。

三、MPLS 与 SR 全局启用

MPLS 是 SR 的转发底座。在 Junos 中需要同时启用接口级 MPLS 和全局 MPLS 协议:

set protocols mpls interface ge-0/0/0.0
set protocols mpls interface ge-0/0/1.0
set protocols mpls interface lo0.0

随后启用 SR 全局能力。Junos 中 SR 的启用方式与版本相关,常见形式为在 protocols source-packet-routing 下配置 SRGB 与相关参数:

set protocols source-packet-routing srgb start-label 16000 index-range 8000
set protocols source-packet-routing node-segment ipv4-index 1

这里 SRGB 起始标签 16000、范围 8000 是教学示例值,实际部署需结合现网标签规划,避免与 LDP、RSVP 标签空间冲突。node-segment 的 ipv4-index 是节点 SID 的索引,最终标签 = SRGB 起始 + index,因此 MX-A 的节点 SID 为 16001。三台设备应使用互不冲突的 index,例如 MX-A=1、MX-B=2、MX-C=3。

SRGB 一旦确定,实验过程中不要随意修改。SRGB 变化会导致所有 Prefix-SID 重新计算,已建立的 SR 路径会中断,排障时容易误判为 IGP 或 MPLS 问题。

四、验证初始环境是否就绪

完成上述配置后,按以下顺序验证,形成可复现的检查闭环:

  1. show ospf neighbor:邻接状态为 Full。
  2. show route protocol ospf:各 loopback 路由存在。
  3. show mpls interface:MPLS 已在预期接口启用。
  4. show route table inet.3:存在 MPLS 转发条目。
  5. show source-packet-routing srgb 或对应版本命令:SRGB 与 node-segment 已生效。

若第 4 步 inet.3 为空,优先检查接口是否同时启用了 family mpls 与 protocols mpls interface;若第 5 步 SRGB 未显示,检查 source-packet-routing 是否在正确的层级下配置。只有这五项全部通过,才认为 SR 基础环境搭建完成,可以进入后续 Prefix-SID 与 SR-TE 实验。

MX 平台 SR 基础环境搭建与验证链 MX-A lo0: 10.255.0.1/32 index=1 → SID 16001 MX-B lo0: 10.255.0.2/32 index=2 → SID 16002 MX-C lo0: 10.255.0.3/32 index=3 → SID 16003 10.0.1.0/30 OSPF + MPLS 10.0.2.0/30 OSPF + MPLS 配置层次(自下而上) ① 接口层 inet + mpls family 地址与 loopback ② IGP 层 OSPF area 0 traffic-engineering ③ MPLS 层 protocols mpls interface 启用 ④ SR 全局 SRGB 16000/8000 node-segment 验证链(顺序执行,全部通过才进入下一阶段) OSPF 邻接 Full OSPF 路由 loopback 可达 MPLS 接口 已启用 inet.3 MPLS 条目存在 SRGB / SID 16001/16002/16003 示例参数:Junos 20.4R3 / MPC 线卡 / SRGB 16000-23999 / OSPF area 0

这张图把本节的关键关系压缩成一条“配置层次 + 验证链”:接口与 IGP 是底座,MPLS 是转发面,SR 全局是能力开关,而右侧的验证链则给出每一步的观察点。实际实验中,只要按图中顺序逐项确认,就能把“环境是否就绪”从主观判断变成可复现的客观检查。