配置静态MPLS TE隧道示例
本例描述了静态MPLS TE隧道的基本配置过程,包括使能MPLS TE,配置链路的MPLS TE带宽属性,配置MPLS TE隧道和创建静态CR-LSP。
组网需求
如图3-7所示,某运营商的网络中存在部分路由性能不强且处理性能偏低的设备。该运营商期望在此网络中采用MPLS TE隧道来承载业务,此时可以建立一条LSRA到LSRC和一条从LSRC到LSRA的静态TE隧道。由于是静态的TE隧道,不运行动态的信令协议,不要求存在IGP路由,因此对设备资源消耗少且对设备的性能需求也更低。
配置思路
采用如下的思路配置静态MPLS TE隧道:
配置各节点接口的IP地址及作为MPLS LSR-ID的Loopback接口的地址。
配置LSR-ID并全局使能各节点的MPLS和MPLS TE和各接口的MPLS和MPLS TE。
- 在隧道沿途的各节点出接口上配置链路的最大可预留带宽和BC0带宽。
在入节点创建隧道接口,指定隧道的IP地址、隧道协议、目的地址、隧道ID以及建立隧道使用的信令类型。
配置与隧道相关联的静态CR-LSP,在入节点上配置下一跳地址和出标签,在中间节点配置入接口、下一跳地址和出标签,在出节点上配置入标签和入接口以建立LSP。
每个节点出标签的值就是其下一个节点入标签的值。
执行命令static-cr-lsp ingress { tunnel-interface tunnel interface-number | tunnel-name } destination destination-address { nexthop next-hop-address | outgoing-interface interface-type interface-number } * out-label out-label [ bandwidth [ ct0 ] bandwidth ]配置CR-LSP入节点时需注意,参数tunnel-name必须与命令interface tunnel interface-number创建的隧道接口名称一致,且区分大小写,不支持空格。假设使用命令interface tunnel 20创建了一个的Tunnel接口,则隧道接口名称为Tunnel20,其静态CR-LSP入节点中的参数应该写作“Tunnel20”,否则隧道将不能正确建立。中间节点和出节点无此限制。
数据准备
为完成此配置例,需准备如下的数据:
各接口的IP地址
LSRA和LSRC上隧道的接口编号、隧道接口IP地址、目的地址、隧道ID、隧道信令协议(为cr-static)
- 各链路的最大可预留带宽和BC0带宽
静态CR-LSP入节点的下一跳地址和出标签
静态CR-LSP中间节点的入接口、下一跳和出标签
静态CR-LSP出节点的入接口
操作步骤
- 配置各接口的IP地址
配置各接口的IP地址和掩码,具体配置过程见配置文件。
- 配置MPLS基本能力,使能MPLS TE
# 配置LSRA。
[~LSRA] mpls lsr-id 1.1.1.1
[*LSRA] mpls
[*LSRA-mpls] mpls te
[*LSRA-mpls] quit
[*LSRA] interface gigabitethernet 0/1/0
[*LSRA-GigabitEthernet0/1/0] mpls
[*LSRA-GigabitEthernet0/1/0] mpls te
[*LSRA-GigabitEthernet0/1/0] commit
[~LSRA-GigabitEthernet0/1/0] quit
LSRB、LSRC与LSRA类似,不再赘述。
- 配置链路的MPLS TE带宽属性
# 在隧道沿途各节点出接口上配置链路的最大可预留带宽和BC0带宽。链路的BC0带宽必须大于隧道带宽(10M bit/s)。
# 配置LSRA。
[~LSRA] interface gigabitethernet 0/1/0 [~LSRA-GigabitEthernet0/1/0] mpls te bandwidth max-reservable-bandwidth 100000 [*LSRA-GigabitEthernet0/1/0] mpls te bandwidth bc0 100000 [*LSRA-GigabitEthernet0/1/0] commit [~LSRA-GigabitEthernet0/1/0] quit
# 配置LSRB。
[~LSRB] interface gigabitethernet 0/1/0 [~LSRB-GigabitEthernet0/1/0] mpls te bandwidth max-reservable-bandwidth 100000 [*LSRB-GigabitEthernet0/1/0] mpls te bandwidth bc0 100000 [*LSRB-GigabitEthernet0/1/0] quit [*LSRB] interface gigabitethernet 0/2/0 [*LSRB-GigabitEthernet0/2/0] mpls te bandwidth max-reservable-bandwidth 100000 [*LSRB-GigabitEthernet0/2/0] mpls te bandwidth bc0 100000 [*LSRB-GigabitEthernet0/2/0] commit [~LSRB-GigabitEthernet0/2/0] quit
# 配置LSRC。
[~LSRC] interface gigabitethernet 0/2/0 [~LSRC-GigabitEthernet0/2/0] mpls te bandwidth max-reservable-bandwidth 100000 [*LSRC-GigabitEthernet0/2/0] mpls te bandwidth bc0 100000 [*LSRC-GigabitEthernet0/2/0] commit [~LSRC-GigabitEthernet0/2/0] quit
- 配置MPLS TE隧道
# 在LSRA上配置LSRA至LSRC的MPLS TE隧道。
[~LSRA] interface Tunnel 10
[*LSRA-Tunnel10] ip address unnumbered interface loopback 1
[*LSRA-Tunnel10] tunnel-protocol mpls te
[*LSRA-Tunnel10] destination 3.3.3.3
[*LSRA-Tunnel10] mpls te tunnel-id 100
[*LSRA-Tunnel10] mpls te signal-protocol cr-static
[*LSRA-Tunnel10] commit
[~LSRA-Tunnel10] quit
# 在LSRC上配置LSRC至LSRA的MPLS TE隧道。
[~LSRC] interface Tunnel 20
[*LSRC-Tunnel20] ip address unnumbered interface loopback 1
[*LSRC-Tunnel20] tunnel-protocol mpls te
[*LSRC-Tunnel20] destination 1.1.1.1
[*LSRC-Tunnel20] mpls te tunnel-id 200
[*LSRC-Tunnel20] mpls te signal-protocol cr-static
[*LSRC-Tunnel20] commit
[~LSRC-Tunnel20] quit
- 创建LSRA至LSRC的静态CR-LSP
# 配置LSRA为静态CR-LSP的入节点。
[~LSRA] static-cr-lsp ingress tunnel-interface Tunnel 10 destination 3.3.3.3 nexthop 2.1.1.2 out-label 20 bandwidth ct0 10000
[*LSRA] commit
# 配置LSRB为静态CR-LSP的中间节点。
[~LSRB] static-cr-lsp transit Tunnel10 incoming-interface gigabitethernet 0/1/0 in-label 20 nexthop 3.2.1.2 out-label 30 bandwidth ct0 10000
[*LSRB] commit
# 配置LSRC为静态CR-LSP的出节点。
[~LSRC] static-cr-lsp egress Tunnel10 incoming-interface gigabitethernet 0/2/0 in-label 30
[*LSRC] commit
- 创建LSRC至LSRA的静态CR-LSP
# 配置LSRC为静态CR-LSP的入节点。
[~LSRC] static-cr-lsp ingress tunnel-interface Tunnel 20 destination 1.1.1.1 nexthop 3.2.1.1 out-label 120 bandwidth ct0 10000
[*LSRC] commit
# 配置LSRB为静态CR-LSP的中间节点。
[~LSRB] static-cr-lsp transit Tunnel20 incoming-interface gigabitethernet 0/2/0 in-label 120 nexthop 2.1.1.1 out-label 130 bandwidth ct0 10000
[*LSRB] commit
# 配置LSRA为静态CR-LSP的出节点。
[~LSRA] static-cr-lsp egress Tunnel20 incoming-interface gigabitethernet 0/1/0 in-label 130
[*LSRA] commit
- 检查配置结果
配置完成后,在LSRA上执行display interface tunnel命令,可以看到Tunnel接口的状态为Up。
在各节点上执行display mpls te tunnel命令,可以看到MPLS TE隧道的建立情况。
[~LSRA] display mpls te tunnel
------------------------------------------------------------------------------ Ingress LsrId Destination LSPID In/Out Label R Tunnel-name ------------------------------------------------------------------------------ 1.1.1.1 3.3.3.3 1 --/20 I Tunnel10 - - - 130/-- E Tunnel20
[~LSRB] display mpls te tunnel
------------------------------------------------------------------------------ Ingress LsrId Destination LSPID In/Out Label R Tunnel-name ------------------------------------------------------------------------------ - - - 20/30 T Tunnel10 - - - 120/130 T Tunnel20
[~LSRC] display mpls te tunnel
------------------------------------------------------------------------------ Ingress LsrId Destination LSPID In/Out Label R Tunnel-name ------------------------------------------------------------------------------ - - - 30/-- E Tunnel10 3.3.3.3 1.1.1.1 1 --/120 I Tunnel20
在各节点上执行display mpls lsp或display mpls static-cr-lsp命令,可以看到静态CR-LSP的建立情况。
# 在LSRA上查看配置结果。
[~LSRA] display mpls static-cr-lsp
TOTAL : 2 STATIC CRLSP(S)
UP : 2 STATIC CRLSP(S)
DOWN : 0 STATIC CRLSP(S)
Name FEC I/O Label I/O If Status
Tunnel10 3.3.3.3/32 NULL/20 -/GE0/1/0 Up
Tunnel20 -/- 130/NULL GE0/1/0/- Up
# 在LSRB上查看。
[~LSRB] display mpls static-cr-lsp
TOTAL : 2 STATIC CRLSP(S)
UP : 2 STATIC CRLSP(S)
DOWN : 0 STATIC CRLSP(S)
Name FEC I/O Label I/O If Status
Tunnel10 -/- 20/30 GE0/1/0/GE0/2/0 Up
Tunnel20 -/- 120/130 GE0/2/0/GE0/1/0 Up
# 在LSRC上查看。
[~LSRC] display mpls static-cr-lsp
TOTAL : 2 STATIC CRLSP(S)
UP : 2 STATIC CRLSP(S)
DOWN : 0 STATIC CRLSP(S)
Name FEC I/O Label I/O If Status
Tunnel20 1.1.1.1/32 NULL/120 -/GE0/2/0 Up
Tunnel10 -/- 30/NULL GE0/2/0/- Up
使用静态CR-LSP建立MPLS TE隧道时,Transit节点和Egress节点直接根据配置的入标签和出标签进行转发,因此,LSRB和LSRC的相关显示信息中,FEC等内容为空。
配置文件
LSRA的配置文件
# sysname LSRA # mpls lsr-id 1.1.1.1 # mpls mpls te # static-cr-lsp ingress tunnel-interface Tunnel10 destination 3.3.3.3 nexthop 2.1.1.2 out-label 20 bandwidth ct0 10000 # static-cr-lsp egress Tunnel20 incoming-interface GigabitEthernet0/1/0 in-label 130 # interface GigabitEthernet0/1/0 undo shutdown ip address 2.1.1.1 255.255.255.0 mpls mpls te mpls te bandwidth max-reservable-bandwidth 100000 mpls te bandwidth bc0 100000 # interface LoopBack1 ip address 1.1.1.1 255.255.255.255 # interface Tunnel10 ip address unnumbered interface LoopBack1 tunnel-protocol mpls te destination 3.3.3.3 mpls te signal-protocol cr-static mpls te tunnel-id 100 # return
LSRB的配置文件
# sysname LSRB # mpls lsr-id 2.2.2.2 # mpls mpls te # static-cr-lsp transit Tunnel10 incoming-interface GigabitEthernet0/1/0 in-label 20 nexthop 3.2.1.2 out-label 30 bandwidth ct0 10000 # static-cr-lsp transit Tunnel20 incoming-interface GigabitEthernet0/2/0 in-label 120 nexthop 2.1.1.1 out-label 130 bandwidth ct0 10000 # interface GigabitEthernet0/2/0 undo shutdown ip address 3.2.1.1 255.255.255.0 mpls mpls te mpls te bandwidth max-reservable-bandwidth 100000 mpls te bandwidth bc0 100000 # interface GigabitEthernet0/1/0 undo shutdown ip address 2.1.1.2 255.255.255.0 mpls mpls te mpls te bandwidth max-reservable-bandwidth 100000 mpls te bandwidth bc0 100000 # interface LoopBack1 ip address 2.2.2.2 255.255.255.255 # return
LSRC的配置文件
# sysname LSRC # mpls lsr-id 3.3.3.3 # mpls mpls te # static-cr-lsp ingress tunnel-interface Tunnel20 destination 1.1.1.1 nexthop 3.2.1.1 out-label 120 bandwidth ct0 10000 # static-cr-lsp egress Tunnel10 incoming-interface GigabitEthernet0/2/0 in-label 30 # interface GigabitEthernet0/2/0 undo shutdown ip address 3.2.1.2 255.255.255.0 mpls mpls te mpls te bandwidth max-reservable-bandwidth 100000 mpls te bandwidth bc0 100000 # interface GigabitEthernet0/1/0 undo shutdown # interface LoopBack1 ip address 3.3.3.3 255.255.255.255 # interface Tunnel20 ip address unnumbered interface LoopBack1 tunnel-protocol mpls te destination 1.1.1.1 mpls te signal-protocol cr-static mpls te tunnel-id 200 # return