配置OSPF SR-MPLS TE隧道(使用显式路径)
如果网络中没有控制器进行路径计算,用户可以手工配置显式路径来实现SR-MPLS TE。
使能MPLS TE
在SR MPLS域的所有节点上使能MPLS TE是配置所有SR-MPLS TE特性的首要步骤。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令mpls lsr-id lsr-id,配置本节点的LSR ID。配置LSR ID时,请注意以下事项:
配置LSR ID是进行所有MPLS配置的前提。
LSR没有缺省的LSR ID,必须手工配置。
推荐使用LSR某个Loopback接口的地址做为LSR ID。
- 执行命令mpls,进入MPLS视图。
- 执行命令mpls te,全局使能本节点的MPLS TE。
- (可选)使能接口的MPLS TE能力
在控制器算路和头节点算路场景,使能接口的MPLS TE能力是必须配置。静态显式路径场景,可以忽略该步骤。
- 执行命令quit,退回系统视图。
- 执行命令interface interface-type interface-number,进入MPLS TE链路的接口视图。
- 执行命令mpls,使能接口的MPLS能力。
- 执行命令mpls te,使能接口的MPLS TE。
- 执行命令commit,提交配置。
配置SR-MPLS TE的基本功能
介绍了SR-MPLS TE的基础配置。
背景信息
SR-MPLS TE有严格路径(Strict Explicit)和松散路径(Loose Explicit)两种,严格路径主要使用Adjacency SID,松散路径使用Adjacency SID和Node SID。配置SR-MPLS TE隧道之前需要先配置生成Adjacency SID和Node SID。
操作步骤
- 配置Segment Routing全局标签范围
- 执行命令system-view,进入系统视图。
- 执行命令ospf [ process-id ],进入OSPF视图。
- 执行命令opaque-capability enable,使能opaque LSA能力。
- 执行命令segment-routing mpls命令用来使能OSPF对应拓扑的Segment Routing功能。
- 执行命令segment-routing global-block begin-value end-value命令用来配置OSPF的Segment Routing全局标签范围。
- 执行命令area area-id,进入OSPF的区域视图。
- 执行命令mpls-te enable [ standard-complying ],在当前OSPF区域使能TE。
- 执行命令commit,提交配置。
- 配置Segment Routing前缀标签
- 执行命令system-view,进入系统视图。
- 执行命令interface loopback loopback-number,创建Loopback接口并进入接口视图。
- 执行命令ospf enable [ process-id ] area area-id,使能OSPF接口。
- 执行命令ip address ip-address { mask | mask-length },配置Loopback接口的IP地址。
- 执行命令ospf prefix-sid { absolute sid-value | index index-value } [ node-disable ],配置该接口的IP地址为Segment Routing标签前缀。
- 执行命令commit,提交配置。
- (可选)配置Adjacency SID。
Adjacency SID在OSPF使能SR能力后动态生成,可以配置segment-routing auto-adj-sid disable命令关闭动态邻接标签。动态Adjacency SID在设备重启后可能会发生变化,如果显式路径使用动态邻接标签,则在设备重启之后就需要重新配置。为了方便使用显式路径,用户也可以手工配置Adjacency SID。
- 执行命令system-view,进入系统视图。
- 执行命令segment-routing,进入Segment Routing视图。
- 执行命令ipv4 adjacency local-ip-addr local-ip-address remote-ip-addr remote-ip-address sid sid-value,静态配置SR的Adjacency SID。
- 执行命令commit,提交配置。
配置SR-MPLS TE显式路径
在SR-MPLS TE隧道入节点上配置显式路径,能够指定SR-MPLS TE隧道必须经过的节点或者链路。
背景信息
显式路径由一系列节点构成,按配置的先后顺序组成一条向量路径。 既可以通过显式路径中指定下一跳标签来规划SR-MPLS TE LSP途径的路径,也可以通过显式路径中指定下一跳IP地址来规划SR-MPLS TE LSP途径的路径。显式路径中的IP地址一般使用接口的IP地址。使用中的显式路径支持更新。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令explicit-path path-name,创建显式路径,进入显式路径视图。
- 选择一种方式配置显式路径。
- 指定显式路径的下一跳标签:执行命令next sid label label-value type { adjacency | prefix }
指定显式路径的下一跳地址:
执行命令next hop ip-address [ include [ [ strict | loose ] | [ incoming | outgoing ] ] * | exclude ],指定显式路径的下一个节点。
参数include表示建立的LSP经过指定节点;参数exclude表示建立的LSP不能经过指定节点。
在配置显式路径规划SR-MPLS TE隧道的情况下,不能同时执行命令next sid label和命令next hop。
(可选)执行命令add hop ip-address1 [ include [ [ strict | loose ] | [ incoming | outgoing ] ] * | exclude ] { after | before } ip-address2,向显式路径中插入一个节点。
(可选)执行命令modify hop ip-address1 ip-address2 [ include [ [ strict | loose ] | [ incoming | outgoing ] ] * | exclude ],修改显式路径中的节点地址。
- (可选)执行命令delete hop ip-address,从显式路径中删除一个节点。
- 执行命令commit,提交配置。
配置SR-MPLS TE隧道接口
SR-MPLS TE隧道是通过Tunnel接口来建立和管理的,因此需要在隧道的入节点上配置SR-MPLS TE隧道接口。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令interface tunnel tunnel-number,创建Tunnel接口,并进入Tunnel接口视图。
- 配置隧道接口的IP地址,选择如下方式之一:
执行命令ip address ip-address { mask | mask-length } [ sub ],配置Tunnel接口的IP地址。
必须先配置主IP地址,才能为Tunnel接口配置从IP地址。
执行命令ip address unnumbered interface interface-type interface-number,配置隧道接口借用其他接口的IP地址。
MPLS TE隧道是单向的,不存在对端地址的问题,不建议为Tunnel接口单独配置IP地址,通常的做法是Tunnel接口借用Ingress节点的LSR ID作为地址。
- 执行命令tunnel-protocol mpls te,配置隧道协议为MPLS TE。
- 执行命令destination ip-address,配置隧道的目的地址,一般配置为出节点的LSR ID。
由于不同类型的隧道对于目的地址要求不同,当隧道协议从其他类型改变为MPLS TE时,原先配置的destination将被自动删除,需要重新配置。
- 执行命令mpls te tunnel-id tunnel-id,配置隧道ID。
- 执行命令mpls te signal-protocol segment-routing,使能segment routing能力。
- 执行命令mpls te path explicit-path path-name [ secondary ],配置隧道应用的显式路径。
path-name需要与命令explicit-path path-name里创建的显式路径保持一致。
- (可选)执行命令mpls te path verification enable,使能SR-MPLS TE隧道路径校验,如果标签故障,会将使用该标签的LSP联动置Down。
如果已经存在控制器或者BFD,无需配置此功能。
如果所有SR-MPLS TE隧道都要配置此功能,可以在MPLS视图全局使能命令mpls te path verification enable。
- (可选)执行命令match dscp ipv4 { default | { dscp-value1 | to dscp-value2 ] } &<1-32> },配置IPv4报文入SRTE的DSCP值。
SR-MPLS TE下的dscp配置和service-class配置互斥,不可同时配置,配置时互斥,并打出提示。
- 执行命令commit,提交配置。
(可选)配置SR-MPLS TE隧道UCMP功能
当有多条SR-MPLS TE隧道指向下游设备时,可以通过配置负载分担权重,将总流量在各SR-MPLS TE隧道上进行非等值多路径负载分担UCMP(Unequal Cost Multi-Path Loadbalance)。
检查配置结果
SR-MPLS TE隧道配置成功后,您可以查看SR-MPLS TE隧道的信息和隧道的状态统计信息。
操作步骤
- 使用display ospf [ process-id ] segment-routing routing [ ip-address [ mask | mask-length ] ]命令查看OSPF Segment Routing的路由表信息。
- 使用display mpls te tunnel [ destination ip-address ] [ lsp-id lsr-id session-id local-lsp-id | lsr-role { all | egress | ingress | remote | transit } ] [ name tunnel-name ] [ { incoming-interface | interface | outgoing-interface } interface-type interface-number ] [ verbose ]命令查看隧道信息。
- 使用display mpls te tunnel statistics或者display mpls sr-te-lsp命令查看LSP统计信息。
- 使用display mpls te tunnel-interface [ tunnel tunnel-number ]命令在隧道入节点查看隧道接口信息。