«

HCIE-MPLS

myluzh 发布于 阅读:22 Huawei


0x00 介绍

0x01 MPLS 静态 LSP

graph LR
    %% 定义设备节点(去除了多余的占位符,保持代码整洁)
    R1((" R1 "))
    R2((" R2 "))
    R3((" R3 "))
    R4((" R4 "))
    R5((" R5 "))

    %% 定义华为风格的蓝色节点样式,通过进一步增大字体 (24px) 来自然撑大圆圈
    classDef router fill:#5DA8DB,stroke:#2C6A9E,stroke-width:2px,color:#fff,font-weight:bold,font-size:24px;
    class R1,R2,R3,R4,R5 router;

    %% 物理链路及接口标识
    R1 ---|"GE 0/0/0 ⟷ GE 0/0/1"| R2
    R2 ---|"GE 0/0/2 ⟷ GE 0/0/1"| R3
    R2 ---|"GE 0/0/0 ⟷ GE 0/0/1"| R5
    R5 ---|"GE 0/0/0 ⟷ GE 0/0/0"| R3
    R3 ---|"GE 0/0/2 ⟷ GE 0/0/0"| R4

前置条件(确保 IP 路由互通)

MPLS 静态 LSP 配置之前,必须满足:

  1. 全网路由互通 — 所有设备之间能通过 IP 路由互相到达
  2. Ingress 设备必须有目的网段的路由 — 因为 Ingress 的转发逻辑是先查 FIB 表匹配目的地址,再根据 TunnelID 走 MPLS 转发。没有路由就不会生成对应的 FIB 条目,LSP 无法生效

本实验用 RIP 实现路由互通(实际工作中多用 OSPF)

# 所有设备配置
rip
 version 2
 network 10.0.0.0
 network 4.4.4.0      <!-- 只在各路由器上宣告自己直连的网段 -->

验证

能 ping 通说明路由收敛完成,可以开始配置 MPLS。

<r1>ping -a 1.1.1.1 4.4.4.4

MPLS 静态 LSP 实现

1 所有设备开 MPLS(LSR ID + 全局 + 接口)
2 沿路径逐跳配标签映射,ingress 压入、transit 交换、egress 弹出
3 标签值随便定,只要上下游衔接一致就行(R1 出 102 → R2 入 102,以此类推)

[r1]mpls lsr-id 1.1.1.1
[r1]mpls
[r1-GigabitEthernet0/0/0]mpls

[r1]static-lsp ingress 1 destination 4.4.4.0 24 nexthop 10.1.12.2  outgoing-interface g0/0/0  out-label 102

[r1]dis mpls static-lsp 
TOTAL          :    1       STATIC LSP(S)
UP             :    1       STATIC LSP(S)
DOWN           :    0       STATIC LSP(S)
Name                FEC                I/O Label    I/O If                Status
1                   4.4.4.0/24         NULL/102     -/GE0/0/0             Up    

[r2]mpls lsr-id 2.2.2.2
[r2]mpls
[r2-GigabitEthernet0/0/0]mpls
[r2-GigabitEthernet0/0/1]mpls
[r2-GigabitEthernet0/0/2]mpls

[r2]static-lsp transit 1 incoming-interface g0/0/1 in-label 102 outgoing-interface g0/0/0  nexthop 10.1.25.5 out-label 205

[r5]mpls lsr-id 5.5.5.5
[r5]mpls
[r5-GigabitEthernet0/0/0]mpls
[r5-GigabitEthernet0/0/1]mpls

[r5]static-lsp transit 1 incoming-interface g0/0/1 in-label 205 outgoing-interface g0/0/0 nexthop 10.1.35.3 out-label 503

[r3]mpls lsr-id 3.3.3.3
[r3]mpls

[r3-GigabitEthernet0/0/0]mpls
[r3-GigabitEthernet0/0/1]mpls
[r3-GigabitEthernet0/0/2]mpls

[r3]static-lsp transit 1 incoming-interface g0/0/0 in-label 503outgoing-interface g0/0/2 nexthop 10.1.34.4  out-label 304

[r4]mpls lsr-id 4.4.4.4
[r4]mpls
[r4-GigabitEthernet0/0/0]mpls

[r4]static-lsp egress 1 incoming-interface g0/0/0 in-label 304

原理解析

静态 LSP 已经配通了。路径是: R1 (ingress) → R2 (transit) → R5 (transit) → R3 (transit) → R4 (egress)
标签交换路径:NULL/102 → 102/205 → 205/503 → 503/304 → 304/NULL
这是 R1 到 R4(4.4.4.0/24)的单向 LSP。

graph LR
    %% 定义设备及其在 MPLS 域中的角色
    R1(("R1<br/>(Ingress)"))
    R2(("R2<br/>(Transit)"))
    R3(("R3<br/>(Transit)"))
    R4(("R4<br/>(Egress)"))
    R5(("R5<br/>(Transit)"))

    classDef router fill:#5DA8DB,stroke:#2C6A9E,stroke-width:2px,color:#fff,font-weight:bold;
    class R1,R2,R3,R4,R5 router;

    %% LSP 数据转发路径与标签动作 (采用最稳定的标准连线语法,用双引号包裹含冒号的文本)
    R1 -->|"Push: 102"| R2
    R2 -->|"Swap: 102 ➔ 205"| R5
    R5 -->|"Swap: 205 ➔ 503"| R3
    R3 -->|"Swap: 503 ➔ 304"| R4

    %% 未通过数据的备用/其他物理链路(虚线)
    R2 -.- R3

    %% 更改 LSP 路径链路的颜色为显眼的橙红色并加粗 (去除了分号,增强兼容性)
    linkStyle 0 stroke:#E95420,stroke-width:3px,color:#E95420
    linkStyle 1 stroke:#E95420,stroke-width:3px,color:#E95420
    linkStyle 2 stroke:#E95420,stroke-width:3px,color:#E95420
    linkStyle 3 stroke:#E95420,stroke-width:3px,color:#E95420
    linkStyle 4 stroke:#cccccc,stroke-width:2px

三个角色:


#ingress设备 首先通过报文目标地址 查询 fib转发表,TunnelID如果是 0x0就走ip转发,4.4.4.0/24  的TunnelID为 0x1
<r1>dis fib
Route Flags: G - Gateway Route, H - Host Route,    U - Up Route
             S - Static Route,  D - Dynamic Route, B - Black Hole Route
--------------------------------------------------------------------------------
 FIB Table:
 Total number of Routes : 9 

Destination/Mask   Nexthop         Flag  TimeStamp     Interface      TunnelID
10.1.12.1/32       127.0.0.1       HU    t[91]         InLoop0        0x0
127.0.0.1/32       127.0.0.1       HU    t[6]          InLoop0        0x0
127.0.0.0/8        127.0.0.1       U     t[6]          InLoop0        0x0
10.1.12.0/24       10.1.12.1       U     t[91]         GE0/0/0        0x0
10.1.25.0/24       10.1.12.2       DGU   t[1730]       GE0/0/0        0x0
10.1.23.0/24       10.1.12.2       DGU   t[1730]       GE0/0/0        0x0
10.1.34.0/24       10.1.12.2       DGU   t[1772]       GE0/0/0        0x0
10.1.35.0/24       10.1.12.2       DGU   t[1772]       GE0/0/0        0x0
4.4.4.0/24         10.1.12.2       DGUT  t[2651]       GE0/0/0        0x1

#根据TunnelID  0x1  查询nhlfe表 push标签 给下一跳
[r1-diagnose]dis mpls nhlfe
OUTINTERFACE        TUNNELID   OPER     NEXTHOP         DEEP STACK      
------------------------------------------------------------------------
GE0/0/0             0x1        PUSH     10.1.12.2       1    102        
    1 Record(s) Found

#transit中间设备 收到有标签的报文  查询ilm表,拿到 TUNNELID 
[r2]diagnose 
[r2-diagnose]dis mpls ilm
INLABEL IN-INTERFACE        TUNNELID   VRFINDEX   OPER    LSPTYPE  ACKFLAG 
--------------------------------------------------------------------------
102     GE0/0/1             0x1        0          NULL    STATIC   0       
    1 Record(s) Found

#然后通过 TUNNELID 查询nhlfe表 交换标签 给下一跳
[r2-diagnose]dis mpls nhlfe
OUTINTERFACE        TUNNELID   OPER     NEXTHOP         DEEP STACK      
------------------------------------------------------------------------
GE0/0/0             0x1        SWAP     10.1.25.5       1    205        
    1 Record(s) Found

#egress设备 POP 弹出标签 然后查ip路由表走ip转发了
[r4-diagnose]dis mpls ilm
INLABEL IN-INTERFACE        TUNNELID   VRFINDEX   OPER    LSPTYPE  ACKFLAG 
--------------------------------------------------------------------------
304     GE0/0/0                        0          POP     STATIC   0       
    1 Record(s) Found

#工作中直接dis mpls nhlfe就可以了

[r2]dis mpls nhlfe
OUTINTERFACE        TUNNELID   OPER     NEXTHOP         DEEP STACK      
------------------------------------------------------------------------
GE0/0/0             0x1        SWAP     10.1.25.5       1    205        
    1 Record(s) Found

[r2-diagnose]dis mpls ls
-------------------------------------------------------------------------------
                 LSP Information: STATIC LSP
-------------------------------------------------------------------------------
FEC                In/Out Label  In/Out IF                      Vrf Name       
-/-                102/205       GE0/0/1/GE0/0/0                               
[r2-diagnose]

LDP动态标签分发

默认情况下,LDP协议只会为非物理接口的主机路由建立LSP。

# 确保都有LoopBack并且都是/32
[r1-LoopBack0]ip add 1.1.1.1 32
[r2-LoopBack0]ip add 2.2.2.2 32
[r3-LoopBack0]ip add 3.3.3.3 32
[r4-LoopBack0]ip add 4.4.4.4 32
[r5-LoopBack0]ip add 5.5.5.5 32
# 都宣告自己的网段
[r1-rip-1]dis this
rip 1
 version 2
 network 10.0.0.0
 network 1.0.0.0

开启ldp

# 全局使能ldp,接口使能ldp。
[r1]mpls ldp
[r1-GigabitEthernet0/0/0]mpls ldp
[r2]mpls ldp
[r2-GigabitEthernet0/0/0]mpls ldp
[r2-GigabitEthernet0/0/1]mpls ldp
[r2-GigabitEthernet0/0/2]mpls ldp
[r5]mpls ldp
[r5-GigabitEthernet0/0/0]mpls ldp
[r5-GigabitEthernet0/0/1]mpls ldp
[r3]mpls ldp
[r3-GigabitEthernet0/0/0]mpls ldp
[r3-GigabitEthernet0/0/1]mpls ldp
[r3-GigabitEthernet0/0/2]mpls ldp
[r4]mpls ldp
[r4-GigabitEthernet0/0/0]mpls ldp
[r1]dis mpls lsp
-------------------------------------------------------------------------------
                 LSP Information: LDP LSP
-------------------------------------------------------------------------------
FEC                In/Out Label  In/Out IF                      Vrf Name       
1.1.1.1/32         3/NULL        -/-                                           
2.2.2.2/32         NULL/3        -/GE0/0/0                                     
2.2.2.2/32         1024/3        -/GE0/0/0                                     
5.5.5.5/32         NULL/1025     -/GE0/0/0                                     
5.5.5.5/32         1025/1025     -/GE0/0/0                                     
3.3.3.3/32         NULL/1026     -/GE0/0/0                                     
3.3.3.3/32         1026/1026     -/GE0/0/0                                     
4.4.4.4/32         NULL/1027     -/GE0/0/0                                     
4.4.4.4/32         1027/1027     -/GE0/0/0      


正文到此结束
版权声明:若无特殊注明,本文皆为 Myluzh Blog 原创,转载请保留文章出处。
文章内容:https://itho.cn/huawei/592.html
文章标题:《HCIE-MPLS