本文目录导读:

- 第一步:全局开启MPLS
- 第二步:配置路由协议(底层IGP)
- 第三步:在接口上开启MPLS
- 第四步:配置LDP(标签分发协议)
- 第五步:验证MPLS标签交换是否建立
- 第六步:(进阶)配置LSP的入口(Ingress)流量触发
- 华为设备配置差异(快速对照)
- 常见故障排查思路
- 总结配置清单
MPLS(多协议标签交换)的配置核心在于建立标签交换路径,虽然不同厂商(如Cisco、华为、Juniper)的命令细节不同,但配置逻辑高度一致。
以下是基于Cisco IOS(最通用的标准)的典型配置步骤,涵盖了从基础到LDP(标签分发协议)的完整流程,如果你使用的是华为设备,文末会补充差异点。
第一步:全局开启MPLS
在所有参与MPLS转发的路由器上,进入全局配置模式开启MPLS。
# 全局启用MPLS转发能力 ip cef # MPLS必须依赖CEF(思科快速转发)才能工作 mpls ip # 全局开启MPLS IP功能
第二步:配置路由协议(底层IGP)
MPLS的标签交换核心依赖于IP路由表(FIB,转发信息表)来知道去往某个目的地的下一跳,必须先跑通一个IGP(内部网关协议),如OSPF或IS-IS。
以OSPF为例,在每台路由器的接口上激活OSPF(或IS-IS):
interface GigabitEthernet0/0 ip address 10.1.1.1 255.255.255.252 ip router ospf 100 area 0 # 其他互联接口同样配置,保证全网路由收敛
关键点:在部署MPLS前,先用 ping 和 tracert 确认路由器之间路由可达。
第三步:在接口上开启MPLS
MPLS不会在所有接口上自动运行,需要在用于转发标签流量的接口上手动开启。
interface GigabitEthernet0/0 mpls ip # 在该接口上启用MPLS IP处理 mpls label protocol ldp # (可选)指定标签分发协议为LDP,默认通常是LDP
注意:所有参与MPLS的接口(核心链路)都需要配置 mpls ip。
第四步:配置LDP(标签分发协议)
LDP是MPLS中最常用的标签分发协议,它负责为路由表中的每条前缀分配标签,并互相通告。
配置LDP路由器ID
通常推荐使用Loopback接口地址作为LDP的Router-ID,因为Loopback地址稳定,不会物理接口Down而中断。
mpls ldp router-id Loopback0 force
(可选)配置LDP会话参数
如果网络规模较大,可能需要调整LDP的定时器或认证:
mpls ldp discovery hello interval 10 # 调整Hello间隔(默认5秒) mpls ldp session protection # 会话保护功能,防止链路抖动时标签丢失
第五步:验证MPLS标签交换是否建立
配置完成后,通过以下命令检查MPLS网络是否正常工作:
# 1. 查看LDP邻居是否建立 show mpls ldp neighbor # 2. 查看LDP分配的标签绑定(核心) show mpls ldp bindings # 3. 查看路由表的标签信息 show ip route 10.1.1.0 # 输出中应看到 "tag" 或 "mpls" 信息 # 4. 查看具体转发时的标签栈(核心) show mpls forwarding-table # 输出示例: # 10.1.1.0/24 [V] 0 ethernet0/0 Pop tag # 10.2.2.0/24 [V] 16 ethernet0/1 16
解释转发表示例:
Pop tag:这是倒数第二跳节点,表示弹出标签后转发。16:这是中间节点,表示打上标签16后从出接口转发。imp-null或Aggregate:表示该路由器是LSP的终点(Egress),标签会弹出。
第六步:(进阶)配置LSP的入口(Ingress)流量触发
如果只是为了让MPLS网络能够互相转发,上述步骤已经完成,但对于特定流量的“标签交换”,还需要在入口路由器(Ingress) 上配置策略,将特定流量引入MPLS隧道。
通过路由表自动触发 当路由器收到去往一个已有标签绑定的前缀的数据包时,会自动压入标签,这是默认行为。
通过显式配置(如静态LSP或基于策略的PBR)
# 配置静态LSP(不推荐复杂网络使用,适合小规模) mpls static binding ipv4 10.0.0.0 24 32 nexthop 10.1.1.2 # 或者使用MPLS-TE(流量工程),配置隧道接口 interface Tunnel100 ip unnumbered Loopback0 tunnel destination 10.0.0.2 tunnel mode mpls traffic-eng
华为设备配置差异(快速对照)
如果你使用的是华为/华三设备,命令略有不同,但逻辑一致:
华为开启MPLS:
[Router] mpls lsr-id 1.1.1.1 # 配置LDP的Router-ID [Router] mpls # 全局开启MPLS [Router] mpls ldp # 全局开启LDP [Router-GigabitEthernet0/0/0] mpls # 接口开启MPLS [Router-GigabitEthernet0/0/0] mpls ldp # 接口开启LDP
验证命令:
display mpls ldp peer(查邻居)display mpls lsp include 10.0.0.0 24(查标签路径)
常见故障排查思路
- 邻居Down:
show mpls ldp neighbor看不到邻居 -> 检查IP连通性(ping对端接口),确认接口的mpls ip已开启。
- 标签未分配:
show mpls ldp bindings无条目 -> 检查LDP router-id是否配置且可达(Loopback能ping通)。
- 转发时标签为空:
检查路由表是否有路由 -> MPLS依赖路由表,路由必须存在。
- Segment Routing vs LDP: 现代网络(SR-MPLS)倾向于使用Segment Routing替代LDP,它不需要LDP协议,而是通过IGP扩展分发标签,配置更简洁(不再需要
mpls ip和LDP)。
总结配置清单
| 步骤 | 配置项 | 命令(Cisco) | 关键检查点 |
|---|---|---|---|
| 1 | 全局CEF | ip cef |
必须开启 |
| 2 | 全局MPLS | mpls ip |
可选,但建议 |
| 3 | IGP路由 | OSPF/IS-IS | 全网路由收敛 |
| 4 | 接口MPLS | mpls ip |
所有核心接口 |
| 5 | LDP Router-ID | mpls ldp router-id Loopback0 force |
必须配且可达 |
| 6 | 验证LDP邻居 | show mpls ldp neighbor |
状态为 Operational |
| 7 | 验证标签 | show mpls forwarding-table |
有 Outgoing label和标签操作 |
完成上述步骤后,你的路由器之间就能建立完整的标签交换路径,数据包将会根据标签而不是IP头部进行高速转发。
标签: 标签交换