• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

10-Segment Routing配置指导

目录

04-SRv6 TE Policy配置

本章节下载 04-SRv6 TE Policy配置  (905.00 KB)

04-SRv6 TE Policy配置

  录

1 SRv6 TE Policy

1.1 SRv6 TE Policy简介

1.1.1 SRv6 TE Policy标识

1.1.2 SRv6 TE Policy构成

1.1.3 SRv6 TE Policy创建方式

1.1.4 SRv6 TE Policy有效性判断

1.1.5 SRv6 TE Policy引流

1.1.6 SRv6 TE Policy选路原则

1.1.7 SRv6 TE Policy报文转发过程

1.1.8 SRv6 TE Policy CBTS

1.1.9 SRv6 TE Policy与SBFD联动

1.1.10 SRv6 TE Policy热备份功能

1.1.11 SRv6 TE Policy尾节点保护功能

1.2 SRv6 TE Policy配置任务简介

1.3 配置SID列表

1.4 创建SRv6 TE Policy

1.5 配置SRv6 TE Policy属性

1.6 配置设备允许将SRv6 TE Policy的候选路径信息上报BGP-LS

1.7 关闭SRv6 TE Policy

1.8 创建候选路径并引用SID列表

1.9 配置BGP发布BGP IPv6 SR Policy路由

1.9.1 配置限制和指导

1.9.2 开启BGP发布BGP IPv6 SR Policy路由能力

1.9.3 配置BGP引入BGP IPv6 SR Policy路由

1.9.4 配置将BGP IPv6 SR Policy路由发布给EBGP对等体

1.9.5 开启Router ID过滤功能

1.9.6 开启BGP IPv6 SR Policy路由有效性检查功能

1.9.7 控制BGP IPv6 SR Policy路由的优选和发布

1.9.8 维护BGP会话

1.10 配置SRv6 TE Policy引流

1.10.1 配置SRv6-TE的引流方式

1.10.2 配置基于Color引流

1.10.3 配置基于隧道策略引流

1.10.4 配置基于DSCP引流

1.10.5 配置基于静态路由引流

1.10.6 配置基于QoS策略引流

1.10.7 配置基于Flowspec引流

1.10.8 配置SRv6 TE Policy自动引流功能

1.11 配置SRv6 TE Policy的封装方式

1.12 开启SRv6 TE Policy的SBFD功能

1.13 开启SRv6 TE Policy的echo报文方式的BFD检测功能

1.14 开启SRv6 TE Policy的热备份功能

1.15 配置SRv6 TE Policy的慢切慢删功能

1.16 配置SRv6 TE Policy尾节点保护功能

1.16.1 配置限制和指导

1.16.2 配置End.M SID

1.16.3 开启尾节点保护功能

1.16.4 配置远端SRv6 SID与VPN实例/交叉连接/VSI映射表的延迟删除时间

1.17 配置SRv6 TE Policy对TTL的处理模式

1.18 配置SRv6 TE Policy CBTS

1.19 配置SRv6 TE Policy限速功能

1.20 开启SRv6 TE Policy在Policy失效时丢弃流量的功能

1.21 配置根据报文封装进行路由优选

1.22 配置SRv6 TE Policy的流量转发统计功能

1.23 SRv6 TE Policy显示和维护

1.24 SRv6 TE Policy典型配置举例

1.24.1 SRv6 TE Policy基本转发配置举例

1.24.2 SRv6 TE Policy尾节点保护配置举例

 


1 SRv6 TE Policy

1.1  SRv6 TE Policy简介

SRv6 TE Policy提供了灵活的转发路径选择方法,可以满足用户不同的转发需求。当Segment Routing网络的源节点和目的节点之间存在多条路径时,合理利用SRv6 TE Policy选择转发路径,不仅可以方便管理员对网络进行管理和规划,还可以有效地减轻网络设备的转发压力。

1.1.1  SRv6 TE Policy标识

SRv6 TE Policy由三部分标识:

·     BSID:入节点的SID。

·     Color:转发路径的Color属性,用于在相同的源和目的节点之间区分多个SRv6 TE Policy。

·     End-point:SRv6 TE Policy目的节点的IPv6地址。

1.1.2  SRv6 TE Policy构成

图1-1 SRv6 TE Policy构成

 

图1-1所示,一个SRv6 TE Policy由多条具有不同优先级的Candidate Paths(候选路径)组成,每个候选路径包括由Segment List(SID列表)标识的一条或多条转发路径。

·     候选路径

一个SRv6 TE Policy包含一条或多条候选路径。通过SRv6 TE Policy转发流量时,设备根据候选路径的优先级从多条候选路径中选择最优路径。

不同SRv6 TE Policy不能共享同一条候选路径。

·     SID列表

SID列表包含报文转发路径信息,由转发路径上各个节点的SID(IPv6地址)组成。

候选路径由一个SID列表或者多个带权重的SID列表组成。SRv6 TE Policy选择某条候选路径后,会根据SID列表的权重,在候选路径的多个SID列表间进行负载分担。

1.1.3  SRv6 TE Policy创建方式

SRv6 TE Policy可以通过如下方式创建:

·     通过命令行手工创建

采用该方式时,需要手工配置候选路径、候选路径的优先级、候选路径的SID列表及其权重。

·     通过SRv6 TE Policy路由学习

为了支持SRv6 TE Policy,MP-BGP定义了新的子地址族——BGP IPv6 SR Policy地址族,并新增了SRv6 TE Policy NLRI(Network Layer Reachability Information,网络层可达性信息),即BGP IPv6 SR Policy路由。BGP IPv6 SR Policy路由中包含SRv6 TE Policy的相关配置,包括BSID、Color、Endpoint、候选路径优先级、SID列表和SID列表的权重等。

在设备间建立BGP IPv6 SR Policy对等体后,设备可以将本地配置的SRv6 TE Policy通过BGP IPv6 SR Policy路由发布到对端。对端设备根据接收到的BGP IPv6 SR Policy路由生成对应的SRv6 TE Policy。

1.1.4  SRv6 TE Policy有效性判断

通过无效的SRv6 TE Policy转发流量,会导致流量转发失败。因此,只有SRv6 TE Policy有效时,才能通过该SRv6 TE Policy转发流量。

SRv6 TE Policy有效性判断规则如图1-2所示。

图1-2 SRv6 TE Policy有效性判断示意图

 

判断SID列表是否有效时,存在以下情况SID列表无效:

·     SID列表为空;

·     SID列表的权重为0;

·     SR节点无法与SID列表中的第一跳IPv6地址互通。

1.1.5  SRv6 TE Policy引流

可以通过如下方式将数据报文引流到SRv6 TE Policy,通过SRv6 TE Policy转发该报文:

·     基于BSID引流:如果接收到的报文的目的IPv6地址为某个SRv6 TE Policy的BSID,则通过该SRv6 TE Policy转发该报文。

·     基于Color引流:查找是否存在Color和Endpoint地址与BGP路由的Color扩展团体属性和下一跳地址完全相同的SRv6-TE policy。若存在,则将该BGP路由迭代到SRv6 TE Policy。当设备收到匹配该BGP路由的报文时,会通过SRv6 TE Policy转发该报文。

·     基于隧道策略引流:MPLS L3VPN、EVPN L3VPN、EVPN VPLS或EVPN VPWS组网中,通过部署隧道策略,将SRv6 TE Policy作为公网隧道来转发私网报文。隧道策略的详细介绍请参见“MPLS配置指导”中的“隧道策略”。

·     基于DSCP引流:根据报文的目的地址匹配隧道绑定策略,关联到SRv6 TE Policy组后,根据报文的DSCP值查找与其关联的Color属性,再通过Color属性匹配到SRv6 TE Policy组中的某个SRv6 TE Policy。这样,携带指定DSCP的报文可以通过指定SRv6 TE Policy转发。

·     基于静态路由引流:配置静态路由迭代到SRv6 TE Policy,如果设备收到匹配该静态路由的报文,则通过指定SRv6 TE Policy转发该报文。

·     基于QoS策略引流:通过QoS策略将流量重定向到SRv6 TE Policy,如果设备收到匹配该QoS策略流分类规则的报文,则通过指定SRv6 TE Policy转发该报文。有关QoS策略的详细介绍,请参见“ACL和QoS配置指导”中的“QoS”。

·     基于Flowspec引流:通过Flowspec路由将流量重定向到SRv6 TE Policy,如果设备收到匹配该Flowspec路由规则的报文,则通过指定SRv6 TE Policy转发该报文。有关Flowspec的详细介绍,请参见“ACL和QoS配置指导”中的“Flowspec”。

·     自引流:SRv6 TE Policy的自动引流是指将SRv6 TE Policy隧道发布到IGP(OSPFv3或IS-IS)路由中,让SRv6 TE Policy参与IGP路由的计算,使得流量可以通过SRv6 TE Policy转发。

自动引流目前仅支持IGP Shortcut方式,也称为自动路由宣告(AutoRoute Announce),该功能将SRv6 TE Policy当作一条直接连接隧道Ingress节点(头节点)和Egress节点(尾节点)的链路,在隧道的Ingress节点上进行IGP路由计算时考虑该SRv6 TE Policy。

在隧道的Ingress节点上开启IGP Shortcut功能后,只有Ingress节点计算IGP路由时会考虑SRv6 TE Policy隧道。IGP Shortcut功能不会通过IGP路由协议将SRv6 TE Policy隧道作为一条链路发布出去。因此,其他设备在路由计算时不会考虑SRv6 TE Policy隧道。

1.1.6  SRv6 TE Policy选路原则

数据报文引流到SRv6 TE Policy后,在SRv6 TE Policy中选择路径的过程为:

(1)     在SRv6 TE Policy中选择优先级取值最大的有效候选路径转发流量。

(2)     在优先级取值最大的有效候选路径的各个SID列表间进行WECMP(Weighted ECMP,权重负载分担),即基于权重对通过SRv6 TE Policy转发的流量进行负载分担。假设候选路径中包含n个有效SID列表,第x个SID列表的权重为Wight x,则第x个SID列表转发流量的比例为Weight x/(Weight 1+Weight 2+…+Weight n)。

图1-3所示,根据BSID选择有效的SRv6 TE Policy转发流量,再选取优先级取值最大的有效候选路径转发流量。该候选路径中有两个有效的SID列表:SID List 1和SID List 2,其权重分别为20和80。通过该SRv6 TE Policy转发流量时,SID List 1和SID List 2转发的流量占比分别为1/5和4/5。

图1-3 SRv6 TE Policy转发流量时选路过程示意图

 

1.1.7  SRv6 TE Policy报文转发过程

图1-4所示,以基于BSID引流为例,SRv6 TE Policy的报文转发过程为:

(1)     Device A收到目的地址为100::1的IPv6报文后,查找IPv6路由表,判断该报文的目的地址为BSID,需要通过SRv6 TE Policy转发。Device A根据SRv6 TE Policy为报文封装SRH头,SRH头携带的SID列表为{10::2, 20::2, 30::2}。其中,10::2为Device B的SID;20::2为Device C的SID;30::2为Device D的SID。

(2)     Device A将封装后的报文发送给下一跳Device B。

(3)     Device B收到报文后,根据SRH获取到下一跳为Device C,将报文发送给Device C。

(4)     Device C收到报文后,根据SRH获取到下一跳为Device D,将报文发送给Device D。

(5)     Device D收到报文后,检查SRH头中的SL值,发现SL=0。对报文进行解封装,删除封装报文头,根据原始报文的目的地址进行报文转发。

图1-4 SRv6 TE Policy转发过程示意图

 

 

1.1.8  SRv6 TE Policy CBTS

1. SRv6 TE Policy CBTS简介

SRv6 TE Policy CBTS(Class-based Tunnel Selection,基于服务类型的隧道选择)是一种SRv6 TE Policy隧道的选择方式。有别于传统的隧道选择方式,CBTS可以基于流量的转发类选择对应的隧道进行转发,以便为不同的业务提供不同的转发服务。

2. SRv6 TE Policy CBTS工作原理

SRv6 TE Policy CBTS工作原理为:

·     对需要经过SRv6 TE Policy转发的流量,通过流分类进行匹配,将不同业务的流量映射成不同的转发类。

·     配置SRv6 TE Policy的隧道转发类(Service-class属性),映射到指定转发类的业务流量可以通过具有对应转发类的SRv6 TE Policy隧道转发。

3. SRv6 TE Policy CBTS优选规则

SRv6 TE Policy CBTS的优选规则为:

·     设备会优先选择与流量的转发类值相同的SRv6 TE Policy转发该流量。

·     如果存在多条与流量的转发类值相同的SRv6 TE Policy,只有一条流且为逐流负载分担则随机选择一个SRv6 TE Policy转发流量;有一条流但是为逐包负载分担或有多条流,则流量在相同转发类的SRv6 TE Policy间进行负载分担。

·     如果没有与流量的转发类值相同的SRv6 TE Policy,则选择隧道优先级最低的SRv6 TE Policy转发流量。SRv6 TE Policy转发类的取值越小,隧道转发的优先级越低,没有配置转发类的隧道优先级最低。

4. SRv6 TE Policy CBTS示例

图1-5 SRv6 TE Policy CBTS示意图

 

图1-5所示,隧道的选择原则为:

·     从Device A到Device B转发类值为3的流量通过SRv6 TE Policy B转发。

·     从Device A到Device B转发类值为6的流量通过SRv6 TE Policy C转发。

·     从Device A到Device B转发类值为4的流量通过SRv6 TE Policy A转发。

·     从Device A到Device B未配置转发类的流量通过SRv6 TE Policy A转发。

1.1.9  SRv6 TE Policy与SBFD联动

SRv6 TE Policy不会通过设备之间互相发送的消息来维持自身状态,所以SRv6 TE Policy路径故障检测需要依靠SBFD(Seamless BFD,无缝BFD)完成。通过SBFD检测SRv6 TE Policy的连通性,为其提供毫秒级的故障检测速度,并实现快速的故障切换。

图1-6所示,在Device A上配置SRv6 TE Policy,并使用SBFD检测该SRv6 TE Policy。SBFD检测SRv6 TE Policy的过程如下:

(1)     头节点作为Initiator发送SBFD报文,SBFD报文封装SRv6 TE Policy中的SID列表。

(2)     作为Reflector的尾节点收到SBFD报文后,检查报文中携带的远端标识符是否与本地配置的标识符一致。如果一致,Reflector将通过IPv6路由向Initiator发送SBFD响应报文。如果不一致,Reflector将丢弃收到的SBFD报文。

(3)     如果头节点在检测时间超时前能够收到SBFD响应报文,则认为SRv6 TE Policy的SID列表正常。否则,头节点认为SID列表故障。

图1-6 SBFD for SRv6 TE Policy检测过程

 

说明

对于同一源节点和目的节点之间不同的SRv6 TE Policy,由于SBFD回应报文时根据IP路由表进行转发,所以SBFD回应报文的转发路径是相同的。SBFD回应报文的转发路径故障将引起所有SBFD会话Down,进而导致无法通过SRv6 TE Policy转发流量。

 

1.1.10  SRv6 TE Policy热备份功能

当SRv6 TE Policy中存在多条有效候选路径时,设备通过优先级最大的候选路径转发报文。如果该候选路径发生故障,则SRv6 TE Policy需要重新选择有效候选路径转发报文。由于选择新的有效候选路径会耗费一些时间,所以在切换转发路径的过程中会造成丢包,影响业务流量转发。

SRv6 TE Policy的热备份功能可以解决上述问题。SRv6 TE Policy的热备份是指通过备份候选路径对主候选路径进行保护。如果一个SRv6 TE Policy下存在多条候选路径,则优先级最高的有效候选路径作为主路径,优先级次高的有效候选路径作为备份路径。如图1-7所示,如果主路径下所有SID列表对应的转发路径都发生故障,则将流量立即切换到备份候选路径转发,以减少对业务的影响。

图1-7 SRv6 TE Policy热备份示意图

 

SRv6 TE Policy热备份功能和SRv6 TE Policy与SBFD联动配合使用时,SBFD可以同时检测SRv6 TE Policy中优先级最高和次高的两条候选路径里的所有SID列表对应的转发路径。如果优先级最高的候选路径里所有SID列表对应的转发路径都发生故障,则将流量切换到备份路径。当流量切换到备份路径后,会再次重新计算主备路径。原备份路径将作为主路径,并重新选择一个有效的候选路径作为新的备份路径。当主备路径同时故障时,SRv6 TE Policy将重新计算主备路径。

1.1.11  SRv6 TE Policy尾节点保护功能

在MPLS L3VPN over SRv6/EVPN L3VPN over SRv6/EVPN VPLS over SRv6/EVPN VPWS over SRv6组网中,当公网隧道为SRv6 TE Policy隧道时,SRv6 TE Policy的尾节点发生故障,会导致报文转发失败,所以需要为SRv6 TE Policy的尾节点提供保护。

SRv6 TE Policy尾节点保护仅适用于双归属的网络场景,要求尾节点和对尾节点进行保护的节点上具有相同的转发表项。

提示

EVPN VPLS over SRv6/EVPN VPWS over SRv6双归属单活组网不支持SRv6 TE Policy尾节点保护功能。

 

图1-8所示,在PE 1与PE 3之间部署SRv6 TE Policy,PE 3是SRv6 TE Policy的尾节点,为了增强可靠性,PE 4为PE 3提供保护。

图1-8 SRv6 TE Policy尾节点保护示意图

 

1. End.M SID

在SRv6 TE Policy尾节点保护场景中,End.M SID用于保护指定的Locator,即保护指定Locator段内的SRv6 SID。如果远端设备发布的SRv6 SID在指定Locator段的范围内,则使用End.M SID对该SRv6 SID(称为远端SRv6 SID)进行保护。在不同组网环境中,End.M SID对应的转发动作不同:

(1)     MPLS/EVPN L3VPN over SRv6 TE Policy尾节点保护场景:End.M SID对应的转发动作为剥掉外层IPv6报文头,获取到内层报文信息,查找远端SRv6 SID。根据查找到的远端SRv6 SID查询远端SRv6 SID与VPN实例的映射表,找到对应VPN实例。在PE 4上对应VPN实例的路由表中查表转发。

(2)     EVPN VPWS over SRv6 TE Policy尾节点保护场景:End.M SID对应的转发动作为剥掉外层IPv6报文头,获取到内层报文信息,查找远端SRv6 SID。根据查找到的远端SRv6 SID查询远端SRv6 SID与交叉连接的映射表,找到对应交叉连接。在PE 4上根据该交叉连接关联的AC转发报文。远端SRv6 SID类型仅支持End.DX2 SID。

(3)     EVPN VPLS over SRv6 TE Policy尾节点保护场景:End.M SID对应的转发动作为剥掉外层IPv6报文头,获取到内层报文信息,查找远端SRv6 SID。根据查找到的远端SRv6 SID查询远端SRv6 SID与VSI的映射表,找到对应VSI。在PE 4上对应VSI内查找MAC地址表转发。远端SRv6 SID类型仅支持End.DT2U SID。

2. 远端SRv6 SID

图1-8所示,PE 4从PE 3收到BGP路由后,如果BGP路由中的SRv6 SID在PE 4上End.M SID保护的Locator范围内,则该SRv6 SID为远端SRv6 SID,同时在PE 4上生成远端SRv6 SID与VPN实例/交叉连接/VSI的映射表。

当PE 3故障时,PE 4与PE 3之间邻居中断,会导致PE 4从PE 3收到的BGP路由删除,进而导致远端SRv6 SID与VPN实例/交叉连接/VSI的映射表被删除,造成丢包。为了避免上述情况,可以在PE 4上延迟删除远端SRv6 SID与VPN实例/交叉连接/VSI的映射表,在PE 1感知到PE 3故障计算出新的转发路径前,保证流量通过PE 4转发,避免丢包。

3. 路由发布

MPLS L3VPN/EVPN L3VPN/EVPN VPWS/EVPN VPLS over SRv6 TE Policy尾节点保护场景的路由发布过程类似,以MPLS L3VPN over SRv6 TE Policy尾节点保护场景为例进行介绍。

图1-8所示,P 1上FRR路径的生成过程为:

(1)     PE 4通过IS-ISv6路由向邻居P 1发布End.M SID和被保护的Locator,同时PE 4上生成End.M SID的Local SID表。

(2)     P 1收到携带End.M SID的路由后,生成到达指定Locator的FRR路由信息,动作为压入End.M SID。该FRR路由对应的转发路径为Mirror FRR路径。

图1-8所示,PE 4上远端SRv6 SID与VPN实例的映射表生成过程为:

(1)     PE 3收到CE 2发布的私网路由之后,封装成VPNv4路由发送给PE 4,路由携带SRv6 SID、RT、RD信息。

(2)     PE 4从PE 3收到VPNv4路由后,获取到该VPN实例对应的SRv6 SID。PE 4使用该SRv6 SID和End.M SID保护的Locator段进行最长匹配。如果匹配上,则该SRv6 SID为远端SRv6 SID,在PE 4上生成远端SRv6 SID与VPN实例的映射表。

4. 报文转发

MPLS L3VPN/EVPN L3VPN/EVPN VPWS/EVPN VPLS over SRv6 TE Policy尾节点保护场景的报文转发过程类似,以MPLS L3VPN over SRv6 TE Policy尾节点保护场景为例进行介绍。

图1-9 SRv6 TE Policy尾节点保护转发示意图

 

图1-9所示,正常情况下,流量经过路径CE 1-PE 1-P 1-PE 3-CE 2转发。当尾节点PE 3故障时,报文转发过程为:

(1)     P 1上感知到下一跳PE 3不可达,切换为FRR路径。P 1为报文封装IPv6报文头,其目的地址为End.M SID,然后转发给PE 4。

(2)     PE 4解析到End.M SID,查询Local SID表,发现End.M SID对应指令为剥掉外层IPv6报文头,获取到内层报文信息,查找远端SRv6 SID。根据查找到的远端SRv6 SID查询远端SRv6 SID与VPN实例的映射表,找到对应VPN实例1。然后,在PE 4上查询该VPN实例1的路由表将流量转发给CE 2。

1.2  SRv6 TE Policy配置任务简介

SRv6 TE Policy配置任务如下:

(1)     配置通过IGP扩展通告SID

需要在所有SRv6节点执行本配置,配置方法请参见“Segment Routing配置指导”中的“SRv6”。

(2)     配置SID列表

(3)     配置SRv6 TE Policy

a.     创建SRv6 TE Policy

b.     配置SRv6 TE Policy属性

c.     创建候选路径并引用SID列表

d.     (可选)配置设备允许将SRv6 TE Policy的候选路径信息上报BGP-LS

e.     (可选)关闭SRv6 TE Policy

(4)     (可选)配置BGP发布BGP IPv6 SR Policy路由

a.     开启BGP发布BGP IPv6 SR Policy路由能力

b.     配置BGP引入BGP IPv6 SR Policy路由

c.     (可选)配置将BGP IPv6 SR Policy路由发布给EBGP对等体

d.     (可选)开启Router ID过滤功能

e.     (可选)开启BGP IPv6 SR Policy路由有效性检查功能

f.     (可选)控制BGP IPv6 SR Policy路由的优选和发布

g.     (可选)维护BGP会话

(5)     配置SRv6 TE Policy引流

(6)     (可选)配置SRv6 TE Policy的封装方式

(7)     (可选)配置SRv6 TE Policy高可靠性

¡     开启SRv6 TE Policy的SBFD功能

¡     开启SRv6 TE Policy的echo报文方式的BFD检测功能

¡     开启SRv6 TE Policy的热备份功能

¡     配置SRv6 TE Policy的慢切慢删功能

¡     配置SRv6 TE Policy尾节点保护功能

(8)     (可选)配置SRv6 TE Policy高级功能

¡     配置SRv6 TE Policy对TTL的处理模式

¡     配置SRv6 TE Policy CBTS

¡     配置SRv6 TE Policy限速功能

¡     开启SRv6 TE Policy在Policy失效时丢弃流量的功能

¡     配置根据报文封装进行路由优选

(9)     (可选)配置SRv6 TE Policy的流量转发统计功能

1.3  配置SID列表

1. 功能简介

为SRv6 TE Policy的候选路径引用手工创建的SID列表前,需要先创建SID列表,并在列表中添加节点。在SID列表中添加节点后,报文转发路径上由近到远的节点(从源节点的下一跳到目的节点)依次为SID列表中节点索引值从小到大的节点。例如,索引值最小的节点为源节点的下一跳。

为了减少SRH的开销可以在SID列表中添加G-SID,使用4个32bits G-SID代替1个普通的128bits SRv6 SID。可以在SID列表中添加携带COC标识的128bits SRv6 SID,表示当前节点的下一节点为32bits G-SID。

有关G-SID的详细介绍,请参见“Segment Routing配置指导”中的“SRv6”。

2. 配置限制和指导

在SID列表中添加G-SID时,需要保证:

·     G-SID的前一节点对应的SRv6 SID必须是End(COC32) SID或End.X(COC32) SID。

·     SID列表的最后一个节点对应的SRv6 SID不能携带COC标识,即倒数第二个节点不能通过index index-number coc32 ipv6命令指定SRv6 SID。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启SRv6功能,并进入SRv6视图。

segment-routing ipv6

缺省情况下,SRv6功能处于关闭状态。

(3)     创建SRv6-TE,并进入SRv6-TE视图。

traffic-engineering

(4)     创建SID列表,并进入SID列表视图。

segment-list segment-list-name

(5)     在SID列表中添加节点。

¡     添加普通128bits SRv6 SID。

index index-number ipv6 ipv6-address

¡     添加COC标识的128bits SRv6 SID,并指定下一个G-SID的公共前缀长度。

index index-number coc32 ipv6 ipv6-address common-prefix-length

1.4  创建SRv6 TE Policy

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     创建SRv6-TE,并进入SRv6-TE视图。

traffic-engineering

(4)     创建SRv6 TE Policy,并进入SRv6 TE Policy视图。

policy policy-name

1.5  配置SRv6 TE Policy属性

1. 功能简介

SRv6 TE Policy由BSID(入节点的SID)、Color和End-point(目的节点IP地址)标识。

BSID获取方式如下:

·     手工配置。

·     动态获取:SRv6 TE Policy下仅配置Color和End-point时,SRv6 TE Policy会自动申请一个BSID。

手工配置优先生效。

2. 配置限制和指导

BSID必须在SRv6-TE视图下引用的Locator的静态段范围内。否则,BSID对应的SRv6 TE Policy不能用于报文转发。有关Locator的详细描述,请参见“Segment Routing配置指导”中的“SRv6”。

不同SRv6 TE Policy不能配置相同Color和目的节点地址。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     配置SRv6-TE引用Locator段。

srv6-policy locator locator-name

缺省情况下,SRv6-TE未引用Locator段。

(5)     进入SRv6 TE Policy视图。

policy policy-name

(6)     手工配置BSID。

binding-sid ipv6 ipv6-address

(7)     配置Color属性和目的节点地址。

color color-value end-point ipv6 ipv6-address

缺省情况下,未配置SRv6 TE Policy的Color属性和目的节点地址。

1.6  配置设备允许将SRv6 TE Policy的候选路径信息上报BGP-LS

1. 功能简介

配置本功能后,设备将SRv6 TE Policy的候选路径信息上报BGP-LS,通过BGP-LS路由对外发布,以满足需要知道SRv6 TE Policy路径信息的应用的需求。

2. 配置准备

配置本功能前,需要开启本设备与对等体/对等体组交换LS信息的能力。有关该功能的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP LS”。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     配置设备允许将SRv6 TE Policy的候选路径信息上报BGP-LS。

distribute bgp-ls

缺省情况下,不允许将SRv6 TE Policy的候选路径信息上报BGP-LS。

1.7  关闭SRv6 TE Policy

1. 功能简介

通过本功能控制SRv6 TE Policy的开启和关闭状态,从而控制该SRv6 TE Policy是否可以转发流量。

当设备存在多个SRv6 TE Policy时,可以配置本命令,关闭一些不需要的SRv6 TE Policy,避免影响流量转发。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     进入SRv6 TE Policy视图。

policy policy-name

(5)     关闭SRv6 TE Policy。

shutdown

缺省情况下,SRv6 TE Policy处于开启状态。

1.8  创建候选路径并引用SID列表

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     进入SRv6 TE Policy视图。

policy policy-name

(5)     创建SRv6 TE Policy候选路径,并进入SRv6 TE Policy候选路径视图。

candidate-paths

(6)     配置候选路径的优先级,并进入SRv6 TE Policy候选路径优先级视图。

preference preference-value

不同的优先级代表不同的候选路径。

(7)     为指定优先级的SRv6 TE Policy候选路径配置SID列表。

explicit segment-list segment-list-name [ weight weight-value ]

一条候选路径可以引用多个SID列表。

1.9  配置BGP发布BGP IPv6 SR Policy路由

1.9.1  配置限制和指导

BGP相关命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“BGP”。

1.9.2  开启BGP发布BGP IPv6 SR Policy路由能力

(1)     进入系统视图。

system-view

(2)     配置全局Router ID。

router id router-id

缺省情况下,未配置全局Router ID。

(3)     启动BGP实例,并进入BGP实例视图。

bgp as-number [ instance instance-name ]

缺省情况下,系统没有运行BGP。

(4)     配置对等体。

peer { group-name | ipv6-address [ prefix-length ] } as-number as-number

(5)     创建BGP IPv6 SR Policy地址族,并进入BGP IPv6 SR Policy地址族视图。

address-family ipv6 sr-policy

(6)     使能本地路由器与指定对等体/对等体组交换BGP IPv6 SR Policy路由的能力。

peer { group-name | ipv6-address [ prefix-length ] } enable

缺省情况下,本地路由器不能与对等体/对等体组交换BGP IPv6 SR Policy路由。

1.9.3  配置BGP引入BGP IPv6 SR Policy路由

1. 功能简介

通过配置本功能,设备可以将本地的BGP IPv6 SR Policy路由引入到BGP路由表中,并将BGP IPv6 SR Policy路由发布给IBGP对等体,以便对等体根据SRv6 TE Policy转发流量。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP IPv6 SR Policy地址族视图。

address-family ipv6 sr-policy

(4)     将BGP IPv6 SR Policy路由引入到BGP路由表中。

import-route sr-policy

缺省情况下,BGP不会引入BGP IPv6 SR Policy路由。

1.9.4  配置将BGP IPv6 SR Policy路由发布给EBGP对等体

1. 功能简介

缺省情况下,BGP IPv6 SR Policy路由只能在IBGP对等体之间发布。如果需要将BGP IPv6 SR Policy路由发布给EBGP对等体,则需要执行本配置。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP IPv6 SR Policy地址族视图。

address-family ipv6 sr-policy

(4)     配置将BGP IPv6 SR Policy路由发布给EBGP对等体。

advertise ebgp enable

缺省情况下,BGP IPv6 SR Policy路由不发布给EBGP对等体。

1.9.5  开启Router ID过滤功能

1. 功能简介

当网络中存在大量的BGP IPv6 SR Policy路由,而设备仅希望处理部分路由时,可以通过本配置过滤接收到的BGP IPv6 SR Policy路由。

开启Router ID过滤功能后,设备将检查接收到的BGP IPv6 SR Policy路由中携带的Route Target属性。如果该属性中包含本地设备的Router ID,则接收该路由,并生成对应的SRv6 TE Policy;否则:

·     执行本命令时,如果未指定bgp-rib-only参数,则丢弃该路由。

·     执行本命令时,如果指定bgp-rib-only参数,则仅接收该路由,不生成对应的SRv6 TE Policy。

当控制器需要通过多台中间设备将BGP IPv6 SR Policy路由发布到源节点时,控制器与源节点之间的中间设备仅需要转发BGP IPv6 SR Policy路由,不需要生成SRv6 TE Policy,以节省中间设备的资源。这种情况下,可以在中间设备上配置router-id filter bgp-rib-only命令,当中间设备收到BGP IPv6 SR Policy路由后,即使该路由携带的Route Target属性中不包含本地设备的Router ID,也不会丢弃该路由,仍对该路由进行转发。同时,也不会在中间设备上生成SRv6 TE Policy,避免影响报文转发。

2. 配置限制和指导

为了正确使用本功能,需要通过路由策略等方式为BGP IPv6 SR Policy路由合理添加Route Target属性。否则,可能会导致错误地学习或丢弃BGP IPv6 SR Policy路由。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP IPv6 SR Policy地址族视图。

address-family ipv6 sr-policy

(4)     开启Router ID过滤功能。

router-id filter [ bgp-rib-only ]

缺省情况下,Router ID过滤功能处于关闭状态。

1.9.6  开启BGP IPv6 SR Policy路由有效性检查功能

1. 功能简介

开启本功能后,设备会对BGP IPv6 SR Policy路由进行检查。如果BGP IPv6 SR Policy路由中既没有IPv4地址格式的RT扩展团体属性,又没有NO_ADVERTISE团体属性,则该路由无效,不会被优选。

在控制器与RR(Router Reflector,路由反射器)建立BGP邻居关系,RR再与多个不同SRv6 TE Policy的源节点建立BGP邻居关系的组网场景中,可以在RR上配置本功能,RR将检查控制器下发的多条BGP IPv6 SR Policy路由是否携带IPv4地址格式的RT属性或者NO_ADVERTISE团体属性,如果携带上述属性之一,则RR接收这些路由,并将不带NO_ADVERTISE的路由反射给多个不同SRv6 TE Policy的源节点。在不同SRv6 TE Policy的源节点可以配置router-id filter命令来开启Router ID过滤功能,源节点将本地的Router ID与BGP IPv6 SR Policy路由RT属性中的IPv4地址进行对比。如果相同,则接收该路由,否则,丢弃该路由。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP IPv6 SR Policy地址族视图。

address-family ipv6 sr-policy

(4)     开启BGP IPv6 SR Policy路由有效性检查功能。

validation-check enable

缺省情况下,BGP IPv6 SR Policy路由有效性检查功能处于关闭状态,即设备不会检查对等体/对等体组接收到的BGP IPv6 SR Policy路由的有效性。

 

1.9.7  控制BGP IPv6 SR Policy路由的优选和发布

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP IPv6 SR Policy地址族视图。

address-family ipv6 sr-policy

(4)     配置向对等体/对等体组发布路由时,将下一跳属性修改为自身的地址。

peer { group-name | ipv6-address [ prefix-length ] } next-hop-local

缺省情况下,向EBGP对等体/对等体组发布路由时,将下一跳属性修改为自身的地址;向IBGP对等体/对等体组发布路由时,不修改下一跳属性。

(5)     配置对于从对等体/对等体组接收的BGP消息,允许本地AS号在该消息的AS_PATH属性中出现,并配置允许出现的次数。

peer { group-name | ipv6-address [ prefix-length ] } allow-as-loop [ number ]

缺省情况下,不允许本地AS号在接收消息的AS_PATH属性中出现。

(6)     为从对等体/对等体组接收的路由分配首选值。

peer { group-name | ipv6-address [ prefix-length ] } preferred-value value

缺省情况下,从对等体/对等体组接收的路由的首选值为0。

(7)     配置允许从对等体/对等体组接收的路由的最大数量。

peer { group-name | ipv6-address [ prefix-length ] } route-limit prefix-number [ { alert-only | discard | reconnect reconnect-time } | percentage-value ] *

缺省情况下,不限制从对等体/对等体组接收的路由数量。

(8)     配置本机作为路由反射器,对等体/对等体组作为路由反射器的客户机。

peer { group-name | ipv6-address [ prefix-length ] } reflect-client

缺省情况下,没有配置路由反射器及其客户机。

(9)     为对等体/对等体组设置基于IPv6地址前缀列表的路由发布和接收过滤策略。

peer { group-name | ipv6-address [ prefix-length ] } prefix-list ipv6-prefix-list-name { export | import }

缺省情况下,不对发布和接收的路由信息进行过滤。

(10)     对来自对等体/对等体组的路由或发布给对等体/对等体组的路由应用路由策略。

peer { group-name | ipv6-address [ prefix-length ] } route-policy route-policy-name { export | import }

缺省情况下,没有为对等体/对等体组指定路由策略。

(11)     配置向对等体/对等体组发布团体属性。

peer { group-name | ipv6-address [ prefix-length ] } advertise-community

缺省情况下,不向对等体/对等体组发布团体属性。

(12)     配置向对等体/对等体组发布扩展团体属性。

peer { group-name | ipv6-address [ prefix-length ] } advertise-ext-community

缺省情况下,不向对等体/对等体组发布扩展团体属性。

(13)     为指定对等体/对等体组设置高优先级,路由选路时优选从该对等体/对等体组学习到的路由。

peer { group-name | ipv6-address [ prefix-length ] } high-priority [ preferred ]

缺省情况下,BGP不为指定对等体/对等体组设置高优先级,选路规则不发生变化。

(14)     配置BGP路由的下一跳地址类型影响路由优选。

bestroute nexthop-priority { ipv4 | ipv6 } [ preferred ]

缺省情况下,BGP优选下一跳地址为IPv4地址的路由。

1.9.8  维护BGP会话

请在用户视图下执行如下命令,复位或软复位BGP会话。

·     复位BGP IPv6 SR Policy地址族下的BGP会话。

reset bgp [ instance instance-name ] { as-number | ipv6-address [ prefix-length ] | all | external | group group-name | internal } ipv6 sr-policy

·     手工对BGP IPv6 SR Policy地址族下的BGP会话进行软复位。

refresh bgp [ instance instance-name ] { ipv6-address [ prefix-length ] | all | external | group group-name | internal } { export | import } ipv6 sr-policy

1.10  配置SRv6 TE Policy引流

1.10.1  配置SRv6-TE的引流方式

1. 配置限制和指导

在L2VPN组网环境中,本功能不生效。

2. 配置准备

采用基于Color的引流方式时,需要通过路由策略等方式为IPv6单播路由添加Color扩展团体属性。路由策略的配置方法请参见“三层技术-IP路由配置指导”中的“路由策略”。

采用基于隧道策略的引流方式时,需要配置绑定隧道、首选隧道策略或负载分担隧道策略,详细配置方法请参见“MPLS配置指导”中的“隧道策略”。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     配置引流到SRv6 TE Policy的方式。

sr-policy steering { disable | policy-based }

缺省情况下,基于Color将数据报文引流到SRv6 TE Policy。

指定policy-based参数后,按照基于隧道绑定策略进行引流->基于Color引流->基于隧道负载分担策略进行引流的优先级顺序引流方式。

1.10.2  配置基于Color引流

1. 功能简介

基于Color引流到SRv6 TE Policy时,如果设备接收到的路由未携带Color扩展团体属性,可以通过如下两种方式为路由指定Color扩展团体属性:

·     通过配置路由策略为路由添加Color值。

·     为路由指定缺省Color值。

路由优先采用路由策略中指定的Color值。

2. 配置限制和指导

通过缺省Color值引流时,Color值仅在SRv6 TE Policy隧道引流时生效,路由向外发布时不生效。通过缺省Color值引流只对从远端PE学习到的VPN或公网实例路由生效。

3. 通过配置路由策略为路由添加Color属性

(1)     进入系统视图。

system-view

(2)     进入路由策略视图。

route-policy route-policy-name { deny | permit } node node-number

(3)     配置BGP路由的Color扩展团体属性。

apply extcommunity color color [ additive ]

缺省情况下,未配置BGP路由属性。

(4)     退回系统视图。

quit

(5)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(6)     进入BGP IPv4单播地址族视图、BGP IPv6单播地址族视图、BGP VPNv4地址族视图、BGP VPNv6地址族视图或BGP EVPN地址族视图。

¡     进入BGP IPv4单播地址族视图。

address-family ipv4 [ unicast ]

¡     进入BGP IPv6单播地址族视图。

address-family ipv6 [ unicast ]

¡     进入BGP VPNv4地址族视图。

address-family vpnv4

¡     进入BGP VPNv6地址族视图。

address-family vpnv6

¡     进入BGP EVPN地址族视图。

address-family l2vpn evpn

(7)     对来自对等体/对等体组的路由或发布给对等体/对等体组的路由应用路由策略。

peer { group-name | ipv6-address [ prefix-length ] } route-policy route-policy-name { export | import }

缺省情况下,没有为对等体/对等体组指定路由策略。

4. 为VPN路由配置缺省Color值

(1)     进入系统视图。

system-view

(2)     进入VPN实例视图。

ip vpn-instance vpn-instance-name

(3)     进入VPN实例IPv4地址族视图或VPN实例IPv6地址族视图。

¡     进入VPN实例IPv4地址族视图。

address-family ipv4

¡     进入VPN实例IPv6地址族视图。

address-family ipv6

(4)     配置L3VPN业务迭代SRv6 TE Policy隧道时使用指定的缺省Color值。

default-color color-value [ evpn ]

缺省情况下,未指定L3VPN业务迭代SRv6 TE Policy隧道时使用的缺省Color值。

 

5. 为公网路由配置缺省Color值

(1)     进入系统视图。

system-view

(2)     进入公网实例视图。

ip public-instance

(3)     进入公网实例IPv4地址族视图或公网实例IPv6地址族视图。

¡     进入公网实例IPv4地址族视图。

address-family ipv4

¡     进入公网实例IPv6地址族视图。

address-family ipv6

(4)     配置公网业务迭代SRv6 TE Policy隧道时使用指定的缺省Color值。

default-color color-value

缺省情况下,未指定公网路由迭代SRv6 TE Policy隧道时使用的缺省Color值。

 

1.10.3  配置基于隧道策略引流

1. 创建隧道策略

(1)     进入系统视图。

system-view

(2)     创建隧道策略,并进入隧道策略视图。

tunnel-policy tunnel-policy-name [ default ]

(3)     配置隧道策略。请至少选择其中一项进行配置。

¡     配置绑定的隧道类型为SRv6 TE Policy隧道。

binding-destination dest-ipv6-address srv6-policy { name policy-name | end-point ipv6 ipv6-address color color-value } [ ignore-destination-check ] [ down-switch ]

缺省情况下,未配置绑定隧道。

¡     配置指定的SRv6 TE Policy隧道为首选隧道。

preferred-path srv6-policy name sr-policy-name

缺省情况下,未配置首选隧道。

¡     配置SRv6 TE Policy隧道的负载分担策略。

select-seq srv6-policy load-balance-number number

缺省情况下,未配置负载分担策略。

本命令的详细描述,请参见“MPLS命令参考”中的“隧道策略”。

2. 配置VPN实例引用隧道策略

(1)     进入系统视图。

system-view

(2)     进入VPN实例视图、VPN实例IPv4地址族视图或VPN实例IPv6地址族视图。

¡     进入VPN实例视图。

ip vpn-instance vpn-instance-name

¡     请依次执行以下命令进入VPN实例IPv4地址族视图。

ip vpn-instance vpn-instance-name

address-family ipv4

¡     请依次执行以下命令进入VPN实例IPv6地址族视图。

ip vpn-instance vpn-instance-name

address-family ipv6

(3)     配置VPN实例的隧道策略。

tnl-policy tunnel-policy-name

缺省情况下,未配置VPN实例的隧道策略。

本命令的详细描述,请参见“MPLS命令参考”中的“MPLS L3VPN”。

1.10.4  配置基于DSCP引流

1. 功能简介

SRv6 TE Policy组中不同SRv6 TE Policy的Color属性不同。配置Color与DSCP的映射关系后,在一个SRv6 TE Policy组内,可以形成DSCP->Color->SRv6 TE Policy的映射关系,从而实现通过IP报文的DSCP值将报文引流到指定的SRv6 TE Policy。

2. 配置限制和指导

只有SRv6 TE Policy有效时,才能将其Color值与DSCP关联。

IPv4和IPv6地址族可以分别指定Color与DSCP的映射关系,但是对于同一个地址族的报文,每个DSCP值仅支持关联一个Color值。

可以通过color match dscp default命令来配置某个SRv6 TE Policy作为指定地址族报文的缺省SRv6 TE Policy。当SRv6 TE Policy组内某个DSCP没有关联到SRv6 TE Policy时,可以使用该缺省SRv6 TE Policy转发报文。一个SRv6 TE Policy组内,一个地址族只能有一个缺省SRv6 TE Policy。

当设备收到未匹配SRv6 TE Policy组内Color和DSCP映射关系的IPv4/IPv6地址族报文时,依次按照如下原则选择报文转发方式:

(1)     如果本地址族已配置缺省的SRv6 TE Policy,且该SRv6 TE Policy有效,则采用该SRv6 TE Policy转发报文。

(2)     如果另一地址族已配置缺省的SRv6 TE Policy,且该SRv6 TE Policy有效,则采用该SRv6 TE Policy转发报文。

(3)     如果本地址族下配置了Color和DSCP映射关系,且最小DSCP对应的SRv6 TE Policy有效,则采用该SRv6 TE Policy转发。

(4)     如果另一地址族下配置了Color和DSCP映射关系,且最小DSCP对应的SRv6 TE Policy有效,则采用该SRv6 TE Policy转发。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     创建SRv6 TE Policy组,并进入SRv6 TE Policy组视图。

policy-group group-id

(5)     配置SRv6 TE Policy组的目的节点地址。

end-point ipv6 ipv6-address

缺省情况下,未配置SRv6 TE Policy组的目的节点地址。

SRv6 TE Policy组中每个Color对应的SRv6 TE Policy的目的节点地址必须与该SRv6 TE Policy组的目的节点地址相同。

(6)     配置SRv6 TE Policy组的Color和DSCP映射关系。

color color-value match dscp { ipv4 | ipv6 } dscp-value-list

color color-value match dscp { ipv4 | ipv6 } default

缺省情况下,未配置SRv6 TE Policy组的Color和DSCP映射关系。

未配置Color和DSCP映射关系时,无法根据报文的DSCP值进行引流。

(7)     退回系统视图。

quit

(8)     创建隧道策略,并进入隧道策略视图。

tunnel-policy tunnel-policy-name [ default ]

(9)     配置隧道绑定策略,指定目的地址与SRv6 TE Policy组绑定。

binding-destination dest-ipv6-address srv6-policy group srv6-policy-group-id [ ignore-destination-check ] [ down-switch ]

缺省情况下,未将目的IP地址与任何隧道绑定。

本命令的详细描述,请参见“MPLS命令参考”中的“隧道策略”。

1.10.5  配置基于静态路由引流

1. 配置限制和指导

在公网IP over SRv6场景中,配置本功能后,需要在公网实例IPv4/IPv6地址族下使用route-replicate命令将指定VPN实例的路由信息引入到公网中,从而使公网获取指定VPN的路由,以便转发用户流量。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置静态路由迭代到指定SRv6 TE Policy。

¡     配置IPv4静态路由迭代到指定SRv6 TE Policy。

(公网)

ip route-static dest-address { mask-length | mask } srv6-policy { color color-value end-point ipv6 ipv6-address | name policy-name } [ preference preference ] [ tag tag-value ] [ description text ]

(VPN网络)

ip route-static vpn-instance s-vpn-instance-name dest-address { mask-length | mask } srv6-policy { color color-value end-point ipv6 ipv6-address | name policy-name } [ preference preference ] [ tag tag-value ] [ description text ]

缺省情况下,未配置IPv4静态路由。

本命令的详细描述,请参见“三层技术-IP路由命令参考”中的“静态路由”。

¡     配置IPv6静态路由迭代到指定SRv6 TE Policy。

(公网)

ipv6 route-static ipv6-address prefix-length srv6-policy { color color-value end-point ipv6 ipv6-address | name policy-name } [ preference preference ] [ tag tag-value ] [ description text ]

(VPN网络)

ipv6 route-static vpn-instance s-vpn-instance-name ipv6-address prefix-length srv6-policy { color color-value end-point ipv6 ipv6-address | name policy-name } [ preference preference ] [ tag tag-value ] [ description text ]

缺省情况下,未配置IPv6静态路由。

本命令的详细描述,请参见“三层技术-IP路由命令参考”中的“IPv6静态路由”。

1.10.6  配置基于QoS策略引流

1. 功能简介

当网络中某些IPv6公网流量发生拥塞时,可以通过流分类进行识别,然后将流量重定向到SRv6 TE Policy中,解决拥塞问题。IPv6公网流量重定向到SRv6 TE Policy的重定向因子是Endpoint + Color,如果重定向规则匹配不成功,则流分类失效,流量进行普通IPv6转发。如果SRv6 TE Policy出现故障,流分类同样失效,流量也进行普通IPv6转发。

2. 配置限制和指导

QoS策略相关命令的详细介绍,请参见“ACL和QoS命令参考”中的“QoS策略”。

3. 配置步骤

(1)     定义类

a.     进入系统视图。

system-view

b.     创建一个类,并进入类视图。

traffic classifier classifier-name [ operator { and | or } ]

c.     定义匹配数据包的规则。

if-match [ not ] match-criteria

缺省情况下,未定义匹配数据包的规则。

具体规则的介绍,请参见“QoS命令”中的if-match命令。

(2)     定义流行为

a.     创建一个流行为,并进入流行为视图。

traffic behavior behavior-name

b.     配置流量重定向到SRv6 TE Policy。

redirect srv6-policy endpoint color [ { sid | vpnsid } sid ]

缺省情况下,未配置流量重定向动作。

(3)     定义并应用策略

a.     创建一个策略,并进入策略视图。

qos policy policy-name

b.     在策略中为类指定采用的流行为。

classifier classifier-name behavior behavior-name

缺省情况下,未指定类对应的流行为。

c.     退回系统视图。

quit

d.     应用QoS策略。

具体配置请参见“ACL和QoS配置指导”中的“QoS策略”。

缺省情况下,未应用QoS策略。

1.10.7  配置基于Flowspec引流

1. 创建并激活IPv6 Flowspec路由

(1)     进入系统视图。

system-view

(2)     创建IPv6 Flowspec路由。

flow-route flowroute-name ipv6

(3)     定义Flowspec路由的报文匹配规则。

if-match match-criteria

(4)     配置流量重定向到SRv6 TE Policy动作。

apply redirect next-hop ipv6-address color color [ sid sid-value ]

缺省情况下,Flowspec路由中未配置流量动作。

(5)     激活Flowspec路由中的匹配规则及流量动作。

commit

缺省情况下,Flowspec路由下配置的匹配规则及流量动作未生效。

2. 在公网中应用IPv6 Flowspec路由

(1)     进入系统视图。

system-view

(2)     进入Flowspec视图。

flowspec

(3)     创建Flowspec IPv6地址族。

address-family ipv6

(4)     应用已创建的普通IPv6 Flowspec路由。

flow-route flowroute-name

缺省情况下,公网中未应用IPv6 Flowspec路由。

3. 在VPN实例中应用IPv6 Flowspec路由

(1)     进入系统视图。

system-view

(2)     配置VPN实例。

a.     创建VPN实例,并进入VPN实例视图。

ip vpn-instance vpn-instance-name

b.     配置VPN实例的RD。

route-distinguisher route-distinguisher

缺省情况下,未配置VPN实例的RD。

c.     配置VPN实例的Route Target。

vpn-target { vpn-target&<1-8> [ both | export-extcommunity | import-extcommunity ] }

缺省情况下,未配置VPN实例的Route Target。

关于ip vpn-instanceroute-distinguishervpn-target命令的详细介绍,请参见“MPLS命令参考”中的“MPLS L3VPN”。

(3)     进入VPN实例IPv6 Flowspec地址族视图。

address-family ipv6 flowspec

(4)     配置VPN实例下IPv6 Flowspec地址族的RD。

route-distinguisher route-distinguisher

缺省情况下,未配置VPN实例下IPv6 Flowspec地址族的RD。

(5)     配置VPN实例下IPv6 Flowspec地址族的VPN target。

vpn-target vpn-target&<1-8> [ both | export-extcommunity | import-extcommunity ]

缺省情况下,未配置VPN实例下IPv6 Flowspec地址族的VPN target。

VPN实例IPv6 Flowspec地址族的VPN target必须与之前配置的VPN实例的Route target保持一致。

(6)     依次执行以下命令退回系统视图。

a.     quit

b.     quit

(7)     进入Flowspec视图。

flowspec

(8)     创建Flowspec IPv6 VPN实例地址族并关联已创建的VPN实例。

address-family ipv6 vpn-instance vpn-instance-name

(9)     应用已创建的IPv6 Flowspec路由。

flow-route flowroute-name

缺省情况下,VPN实例中未应用IPv6 Flowspec路由。

4. 配置BGP发布IPv6 Flowspec路由

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP IPv6 Flowspec地址族视图、BGP-VPN IPv6 Flowspec地址族视图或BGP VPNv6 Flowspec地址族视图。

¡     进入BGP IPv6 Flowspec地址族视图发布公网IPv6 Flowspec路由。

address-family ipv6 flowspec

¡     依次执行以下命令进入BGP-VPN IPv6 Flowspec地址族视图发布私网IPv6 Flowspec路由。

ip vpn-instance vpn-instance-name

address-family ipv6 flowspec

¡     进入BGP VPNv6 Flowspec地址族视图发布VPNv6 Flowspec路由。

address-family vpnv6 flowspec

(4)     允许BGP Flowspec邻居间交换路由信息。

peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } enable

缺省情况下,BGP Flowspec邻居间不能交换路由信息。

1.10.8  配置SRv6 TE Policy自动引流功能

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     进入SRv6 TE Policy视图。

policy policy-name

(5)     开启SRv6 TE Policy的自动引流功能。

autoroute enable [ isis | ospfv3 ]

缺省情况下,SRv6 TE Policy的自动引流功能处于关闭状态。

(6)     配置SRv6 TE Policy隧道的度量值。

autoroute metric { absolute value | relative value }

缺省情况下,SRv6 TE Policy隧道的度量值等于其IGP度量值。

(7)     退回系统视图。

quit

quit

quit

(8)     配置SRv6 TE Policy隧道参与IGP路由计算。

¡     依次执行以下命令,开启IS-IS的SRv6 TE Policy自动引流功能。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

address-family ipv6 [ unicast ]

srv6-policy autoroute enable [ level-1 | level-2 ]

缺省情况下,SRv6 TE Policy自动引流功能处于关闭状态。

1.11  配置SRv6 TE Policy的封装方式

1. 功能简介

通过BSID引流时,如果报文的目的IPv6地址和BSID相同,则报文通过对应的SRv6 TE Policy转发。此时,需要为报文封装SRv6 TE Policy的SID列表,封装模式包括:

·     Encaps方式:普通封装模式。在原始报文的基础上封装新的IPv6头和SRH,且SRv6 TE Policy的SID列表中的所有SID均封装在SRH中。

¡     新IPv6头的目的IPv6地址为SRv6 TE Policy的SID列表中的第一个IPv6地址,源IPv6地址为encapsulation source-address命令指定的IPv6地址。

¡     SRH包含SRv6 TE Policy的SID列表中所有SID信息。

·     Encaps.Red方式:普通封装的简化模式。在原始报文的基础上封装新的IPv6头和SRH,且SRv6 TE Policy的SID列表中的第一个SID不封装在SRH中,其他SID封装到SRH中,以便减少SRH的长度。

¡     新IPv6头的目的IPv6地址为SRv6 TE Policy的SID列表中的第一个SID,源IPv6地址为encapsulation source-address命令指定的IPv6地址。

¡     SRH包含SRv6 TE Policy的SID列表中除第一个SID外所有SID信息。

·     Insert方式:插入封装模式。在原始IPv6报文头后插入SRH,且SRv6 TE Policy的SID列表中的所有SID均封装在SRH中。

¡     IPv6头的目的IPv6地址改为SRv6 TE Policy的SID列表中的第一个IPv6地址,原始IPv6报文头的源IPv6地址不变。

¡     SRH包含SRv6 TE Policy的SID列表中所有SID信息。

·     Insert.Red方式:插入封装的简化模式。在原始IPv6报文头后插入SRH,且SRv6 TE Policy的SID列表中的第一个SID不封装在SRH中,其他SID封装到SRH中,以便减少SRH的长度。

¡     IPv6头的目的IPv6地址改为SRv6 TE Policy的SID列表中的第一个SID,原始IPv6报文头的源IPv6地址不变。

¡     SRH包含SRv6 TE Policy的SID列表中除第一个SID外所有SID信息。

通过BSID方式引流到SRv6 TE Policy时,缺省情况下,如果头节点的SRv6 SID是End.X SID,则不会将该SID封装到SRH中。为了通过报文中的SRH获取完整的路径信息,即获取到SRv6转发路径上所有SRv6节点的信息,在封装SRH时可以添加本地的End.X SID。

2. 配置限制和指导

SRv6-TE视图和SRv6 TE Policy视图下均可以配置SRv6 TE Policy的封装方式。SRv6-TE视图的配置对所有SRv6 TE Policy都有效,而SRv6 TE Policy视图的配置只对当前SRv6 TE Policy有效。对于一个SRv6 TE Policy来说,优先采用该SRv6 TE Policy内的配置,只有该SRv6 TE Policy内未进行配置时,才采用SRv6-TE视图的配置。

普通封装模式与插入封装模式互斥:配置普通封装模式后,系统会自动删除已配置的插入封装模式;配置插入封装模式后,系统会自动删除已配置的普通封装模式。

配置Insert方式或Insert.Red方式后,如果设备收到IPv4报文,则设备将按照Encaps方式封装报文。

在SRv6-TE视图下,同时配置了普通封装的简化模式和普通封装模式时SRH中包含本地End.X SID,普通封装模式时SRH中包含本地End.X SID生效。

在SRv6-TE视图下,同时配置了插入封装的简化模式和插入封装模式时SRH中包含本地End.X SID,插入封装模式时SRH中包含本地End.X SID生效。

在SRv6 TE Policy视图下,同时配置了普通封装的简化模式和普通封装模式时SRH中包含本地End.X SID,普通封装模式时SRH中包含本地End.X SID生效。

在SRv6 TE Policy视图下,同时配置了插入封装的简化模式和插入封装模式时SRH中包含本地End.X SID,插入封装模式时SRH中包含本地End.X SID生效。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     全局配置SRv6 TE Policy的封装模式。请选择其中一项进行配置。

¡     全局配置SRv6 TE Policy的封装模式为普通封装的简化模式。

srv6-policy encapsulation-mode encaps reduced

¡     全局配置SRv6 TE Policy的封装模式为插入封装模式或插入封装的简化模式。

srv6-policy encapsulation-mode insert

srv6-policy encapsulation-mode insert reduced

缺省情况下,SRv6 TE Policy的封装模式为Encaps模式。

(5)     全局配置通过SRv6 TE Policy转发报文时SRH中包含本地End.X SID。请选择其中一项进行配置。

¡     全局配置通过SRv6 TE Policy转发报文采用普通封装模式时SRH中包含本地End.X SID。

srv6-policy encapsulation-mode encaps include local-end.x

¡     全局配置通过SRv6 TE Policy转发报文采用插入封装模式时SRH中包含本地End.X SID。

srv6-policy encapsulation-mode insert include local-end.x

缺省情况下,通过SRv6 TE Policy转发报文时封装的SRH中不包含本地End.X SID。

(6)     进入SRv6 TE Policy视图。

policy policy-name

(7)     配置SRv6 TE Policy的封装模式。请选择其中一项进行配置。

¡     配置SRv6 TE Policy的封装模式为普通封装的简化模式。

encapsulation-mode encaps reduced [ disable ]

¡     配置SRv6 TE Policy的封装模式为插入封装模式或插入封装的简化模式。

encapsulation-mode insert

encapsulation-mode insert reduced [ disable ]

缺省情况下,未配置SRv6 TE Policy的封装模式,以SRv6-TE视图下的配置为准。

(8)     配置通过SRv6 TE Policy转发报文时SRH中是否包含本地End.X SID。请选择其中一项进行配置。

¡     配置通过SRv6 TE Policy转发报文采用普通封装模式时SRH中是否包含本地End.X SID。

encapsulation-mode encaps include local-end.x [ disable ]

¡     配置通过SRv6 TE Policy转发报文采用插入封装模式时SRH中是否包含本地End.X SID。

encapsulation-mode insert include local-end.x [ disable ]

缺省情况下,未配置通过SRv6 TE Policy转发报文时SRH中是否包含本地End.X SID,以SRv6-TE视图下的配置为准。

 

1.12  开启SRv6 TE Policy的SBFD功能

1. 配置限制和指导

SRv6-TE视图和SRv6 TE Policy视图下均可以配置SRv6 TE Policy的SBFD功能。SRv6-TE视图的配置对所有SRv6 TE Policy都有效,而SRv6 TE Policy视图的配置只对当前SRv6 TE Policy有效。对于一个SRv6 TE Policy来说,优先采用该SRv6 TE Policy内的配置,只有该SRv6 TE Policy内未进行配置时,才采用SRv6-TE视图的配置。

指定的远端标识符必须与Reflector端sbfd local-discriminator命令指定的标识符一致,否则Reflector端不会发送应答报文给Initiator端。

目前,支持通过BFD echo报文和SBFD两种方式检测SRv6 TE Policy。在同一SRv6 TE Policy下同时配置以上两种检测方式时,SBFD检测生效。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置Initiator发送SBFD报文使用的源IPv6地址。

sbfd source-ipv6 ipv6-address

缺省情况下,未配置Initiator发送SBFD报文使用的源IPv6地址。

本命令的详细介绍,请参见“可靠性命令参考”中的“SBFD”。

(3)     进入SRv6视图。

segment-routing ipv6

(4)     进入SRv6-TE视图。

traffic-engineering

(5)     全局开启SRv6 TE Policy的SBFD功能并配置相关参数。

srv6-policy sbfd remote remote-id [ template template-name ] [ backup-template backup-template-name ]

缺省情况下,SRv6 TE Policy的SBFD功能处于关闭状态。

(6)     进入SRv6 TE Policy视图。

policy policy-name

(7)     配置SRv6 TE Policy的SBFD功能。

sbfd { disable | enable [ remote remote-id ] [ template template-name ] [ backup-template backup-template-name ] [ oam-sid sid ] }

缺省情况下,未配置SRv6 TE Policy的SBFD功能,以SRv6-TE视图下的配置为准。

1.13  开启SRv6 TE Policy的echo报文方式的BFD检测功能

1. 配置限制和指导

SRv6-TE视图和SRv6 TE Policy视图下均可以配置SRv6 TE Policy的echo报文方式的BFD功能。SRv6-TE视图的配置对所有SRv6 TE Policy都有效,而SRv6 TE Policy视图的配置只对当前SRv6 TE Policy有效。对于一个SRv6 TE Policy来说,优先采用该SRv6 TE Policy内的配置,只有该SRv6 TE Policy内未进行配置时,才采用SRv6-TE视图的配置。

目前,支持通过BFD echo报文和SBFD两种方式检测SRv6 TE Policy。在同一SRv6 TE Policy下同时配置以上两种检测方式时,SBFD检测生效。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     全局开启SRv6 TE Policy的echo报文方式的BFD检测功能并配置相关参数。

srv6-policy bfd echo source-ipv6 ipv6-address [ template template-name ] [ backup-template backup-template-name ]

缺省情况下,SRv6 TE Policy的echo报文方式的BFD检测功能处于关闭状态。

(5)     进入SRv6 TE Policy视图。

policy policy-name

(6)     配置SRv6 TE Policy的echo报文方式的BFD检测功能。

bfd echo { disable | enable [ source-ipv6 ipv6-address ] [ template template-name ] [ backup-template backup-template-name ] [ oam-sid sid ] }

缺省情况下,未配置SRv6 TE Policy的echo报文方式的BFD检测功能,以SRv6-TE视图下的配置为准。

1.14  开启SRv6 TE Policy的热备份功能

1. 配置限制和指导

SRv6-TE视图和SRv6 TE Policy视图下均可以配置SRv6 TE Policy的热备份功能。SRv6-TE视图的配置对所有SRv6 TE Policy都有效,而SRv6 TE Policy视图的配置只对当前SRv6 TE Policy有效。对于一个SRv6 TE Policy来说,优先采用该SRv6 TE Policy内的配置,只有该SRv6 TE Policy内未进行配置时,才采用SRv6-TE视图的配置。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     全局开启SRv6 TE Policy的热备份功能。

srv6-policy backup hot-standby enable

缺省情况下,SRv6 TE Policy的热备份功能处于关闭状态。

(5)     进入SRv6 TE Policy视图。

policy policy-name

(6)     配置SRv6 TE Policy的热备份功能。

backup hot-standby { disable | enable }

缺省情况下,未配置SRv6 TE Policy的热备份功能,以SRv6-TE视图下的配置为准。

1.15  配置SRv6 TE Policy的慢切慢删功能

1. 功能简介

为了防止SID列表切换导致流量转发失败,在SRv6 TE Policy的SID列表切换过程中,流量先保持按照老的SID列表转发,切换延迟时间超时后再按照新的SID列表转发流量,并在删除延迟时间超时后将老的SID列表删除。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     配置SRv6 TE Policy中转发路径的切换延迟时间和删除延迟时间。

srv6-policy switch-delay switch-delay-time delete-delay delete-delay-time

缺省情况下,SRv6 TE Policy中转发路径的切换延迟时间为5000毫秒,删除延迟时间为20000毫秒。

1.16  配置SRv6 TE Policy尾节点保护功能

1.16.1  配置限制和指导

在SRv6 TE Policy尾节点保护组网环境中,报文经过的所有节点均需支持SRv6功能。

1.16.2  配置End.M SID

1. 配置限制和指导

请在对尾节点进行保护的节点上配置End.M SID。

本节所有命令的详细介绍,请参见“Segment Routing命令参考”中的“SRv6”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     配置Locator段,并进入SRv6 Locator视图。

locator locator-name [ ipv6-prefix ipv6-address prefix-length [ args args-length | static static-length ] * ]

(4)     配置End.M SID,指定被保护的Locator段。

opcode opcode end-m mirror-locator ipv6-address prefix-length

1.16.3  开启尾节点保护功能

1. 功能简介

在某个SRv6节点上开启尾节点保护功能后,该节点可以根据收到的IS-ISv6路由或OSPFv3路由中携带的End.M SID,计算到达尾节点的备份路径信息,即Mirror FRR路径信息。当尾节点故障后,中间节点可以根据End.M SID,将流量转发到对尾节点进行保护的节点处理,避免流量丢失。

切换到Mirror FRR路径后,流量沿着Mirror FRR路径转发,当中间节点完成路由收敛后,会删除Mirror FRR路径。如果此时头节点未完成路径切换,仍将流量转发给中间节点,由于中间节点上不存在Mirror FRR路径,流量会被丢弃。

为了避免上述情况,可以在中间节点上配置Mirror FRR的延迟删除时间,延迟删除Mirror FRR路由,使流量沿着Mirror FRR路径转发,避免丢包。

2. 开启IS-IS尾节点保护功能

(1)     进入系统视图。

system-view

(2)     进入IS-IS视图。

isis [ process-id ] [ vpn-instance vpn-instance-name ]

(3)     进入IS-IS IPv6地址族视图。

address-family ipv6 [ unicast ]

(4)     开启IS-IS尾节点保护功能。

fast-reroute mirror enable

缺省情况下,IS-IS尾节点保护功能处于关闭状态。

(5)     (可选)配置Mirror FRR的延迟删除时间。

fast-reroute mirror delete-delay delete-delay-time

缺省情况下,Mirror FRR延迟删除时间为60秒。

3. 开启OSPFv3尾节点保护功能

(1)     进入系统视图。

system-view

(2)     进入OSPFv3视图。

ospfv3 [ process-id | vpn-instance vpn-instance-name ] *

(3)     开启OSPFv3尾节点保护功能。

fast-reroute mirror enable

缺省情况下,OSPFv3尾节点保护功能处于关闭状态。

(4)     (可选)配置Mirror FRR的延迟删除时间。

fast-reroute mirror delete-delay delete-delay-time

缺省情况下,Mirror FRR延迟删除时间为60秒。

1.16.4  配置远端SRv6 SID与VPN实例/交叉连接/VSI映射表的延迟删除时间

1. 功能简介

在尾节点保护场景中,当尾节点故障时,保护节点与尾节点之间邻居中断,会导致保护节点从尾节点收到的BGP路由删除,进而导致远端SRv6 SID与VPN实例/交叉连接/VSI映射表被删除,造成丢包。为了避免上述情况,可以在对尾节点进行保护的节点上延迟删除远端SRv6 SID与VPN实例/交叉连接/VSI映射表,在头节点感知到尾节点故障计算出新的转发路径前,保证流量通过保护节点转发,避免丢包。

2. 配置限制和指导

请在对尾节点进行保护的节点上配置本功能。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     配置远端SRv6 SID与VPN实例/交叉连接/VSI映射表的延迟删除时间。

mirror remote-sid delete-delay delete-delay-time

缺省情况下,远端SRv6 SID与VPN实例/交叉连接/VSI映射表的延迟删除时间为60秒。

1.17  配置SRv6 TE Policy对TTL的处理模式

1. 功能简介

SRv6 TE Policy对TTL的处理有两种模式:

·     Uniform模式:入节点为IP报文添加新的IPv6头时,将原IP报文中的TTL值复制到新IPv6头的IPv6 Hop Limit字段。使用SRv6 TE Policy转发报文时,对新IPv6头的Hop Limit值逐跳减一。设备解封装报文时,将新IPv6头的Hop Limit值复制回IP报文。使用这种方式时,公网中的节点对用户网络的报文可见。报文沿着SRv6 TE Policy传输的过程中,TTL逐跳递减,Tracert的结果将反映报文实际经过的路径。

·     Pipe模式:入节点为IP报文添加新的IPv6头时,不会将原IP报文中的TTL值复制到新IPv6头的IPv6 Hop Limit字段,新IPv6头的Hop Limit取值为255。使用SRv6 TE Policy转发报文时,对新IPv6头的Hop Limit值逐跳减一。设备解封装报文时,不修改IPv6 Hop Limit的值。使用这种方式时,公网中的节点对用户网络的报文不可见。Tracert的结果不包括公网中的每一跳,从而隐藏公网的结构。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     配置SRv6 TE Policy对TTL的处理模式。

ttl-mode { pipe | uniform }

缺省情况下,SRv6 TE Policy对TTL的处理模式为Pipe模式。

1.18  配置SRv6 TE Policy CBTS

1. 配置准备

配置SRv6 TE Policy CBTS前需要先通过remark service-class命令配置QoS流行为,标记流量的隧道转发类,具体请参见“ACL和QoS命令参考”中的“QoS策略”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     进入SRv6 TE Policy视图。

policy policy-name

(5)     配置SRv6 TE Policy的转发类。

service-class service-class-value

缺省情况下,未配置SRv6 TE Policy的转发类,该SRv6 TE Policy的转发类值为255,转发优先级最低。

1.19  配置SRv6 TE Policy限速功能

1. 功能简介

配置本功能后,通过SRv6 TE Policy转发的报文速率超过限速值时,超过速率限制的报文会被丢弃。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     进入SRv6 TE Policy视图。

policy policy-name

(5)     配置SRv6 TE Policy限速功能。

rate-limit kbps

缺省情况下,不对SRv6 TE Policy的流量速率进行限制。

1.20  开启SRv6 TE Policy在Policy失效时丢弃流量的功能

1. 功能简介

如果希望限定流量仅通过SRv6 TE Policy隧道转发,可以开启本功能。

缺省情况下,转发报文的SRv6 TE Policy的所有候选路径都失效时,设备会通过传统IPv6转发方式转发报文,即根据目的IPv6地址查找IPv6路由表转发报文。

当配置本功能后,如果用于转发报文的SRv6 TE Policy的所有候选路径都失效,设备会丢弃该报文,不会通过传统IPv6转发方式转发报文。

2. 配置限制和指导

display segment-routing ipv6 te policy命令中Request state字段显示为Falied(即BSID申请失败)、Conflicted(BSID冲突)或者Forwarding index字段显示为0(即SRv6 TE Policy无效)时,drop-upon-invalid enable命令不生效。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     进入SRv6 TE Policy视图。

policy policy-name

(5)     开启SRv6 TE Policy在Policy失效时丢弃流量的功能。

drop-upon-invalid enable

缺省情况下,Policy失效时丢弃流量的功能处于关闭状态。

1.21  配置根据报文封装进行路由优选

1. 功能简介

图1-10所示,PE 4作为RR,分别和PE 1、PE 2、PE 3建立IBGP连接。PE 1和PE 3具备SRv6功能,PE 2不具备SRv6功能,PE 1、PE 2和PE 3上均部署MPLS L3VPN功能。PE 1和PE 2上、PE 2和PE 3上的VPN用户通过MPLS L3VPN互访,PE 1和PE 3上VPN用户需要通过EVPN L3VPN over SRv6互访。PE 1和PE 3之间同时存在MPLS L3VPN和EVPN L3VPN over SRv6,处理PE 1和PE 3之间的业务流量时优选SRv6封装的路由。

图1-10 MPLS L3VPN和EVPN L3VPN over SRv6共存环境示意图

 

配置本功能后,设备会根据本功能的配置优选SRv6封装或MPLS封装的路由。关于本功能的配置在BGP选路规则中的详细生效顺序,请参见“三层技术-IP路由配置指导”中的“BGP概述”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入BGP实例视图。

bgp as-number [ instance instance-name ]

(3)     进入BGP-VPN实例视图。

ip vpn-instance vpn-instance-name

(4)     配置根据报文封装进行路由优选。

bestroute encap-type { mpls | srv6 }

缺省情况下,不根据报文封装进行路由优选。

1.22  配置SRv6 TE Policy的流量转发统计功能

1. 功能简介

配置本功能后,可以统计通过SRv6 TE Policy转发的流量的信息。

2. 配置限制和指导

SRv6-TE视图和SRv6 TE Policy视图下均可以配置SRv6 TE Policy的流量转发统计功能。SRv6-TE视图的配置对所有SRv6 TE Policy都有效,而SRv6 TE Policy视图的配置只对当前SRv6 TE Policy有效。对于一个SRv6 TE Policy来说,优先采用该SRv6 TE Policy内的配置,只有该SRv6 TE Policy内未进行配置时,才采用SRv6-TE视图的配置。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入SRv6视图。

segment-routing ipv6

(3)     进入SRv6-TE视图。

traffic-engineering

(4)     全局开启SRv6 TE Policy的流量转发统计功能。

srv6-policy forwarding statistics [ service-class ] enable

缺省情况下,SRv6 TE Policy的流量转发统计功能处于关闭状态。

(5)     (可选)全局配置SRv6 TE Policy流量转发统计信息收集的时间间隔。

srv6-policy forwarding statistics interval interval

缺省情况下,SRv6 TE Policy流量转发统计信息收集的时间间隔为30秒。

(6)     进入SRv6 TE Policy视图。

policy policy-name

(7)     配置SRv6 TE Policy的流量转发统计功能。

forwarding statistics { disable | [ service-class ] enable }

缺省情况下,未配置SRv6 TE Policy的流量转发统计功能,以SRv6-TE视图下的配置为准。

1.23  SRv6 TE Policy显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后SRv6 TE Policy的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除SRv6 TE Policy的统计信息。

表1-1 SRv6 TE Policy显示和维护

操作

命令

显示通过Mirror SID保护的远端SRv6 SID

display bgp [ instance instance-name ] mirror remote-sid [ end-dt4 | end-dt46 | end-dt6 ] [ sid ]

显示BGP对等体或对等体组的状态和统计信息

display bgp [ instance instance-name ] peer ipv6 [ sr-policy ] [ ipv6-address prefix-length | { ipv6-address | group-name group-name } log-info | [ ipv6-address ] verbose ]

显示BGP SRv6 TE Policy路由信息

display bgp [ instance instance-name ] routing-table ipv6 sr-policy [ sr-policy-prefix [ advertise-info ] | peer ipv6-address { advertised-routes | received-routes } [ statistics ] | statistics ]

显示BGP对等体组的信息

display bgp [ instance instance-name ] group ipv6 sr-policy [ group-name group-name ]

显示BGP打包组的相关信息

display bgp [ instance instance-name ] update-group ipv6 sr-policy [ ipv6-address ]

显示SRv6 TE Policy的BFD信息

display segment-routing ipv6 te bfd [ down | policy { { color color-value | end-point ipv6 ipv6-address } * | name policy-name } | up ]

显示SRv6 TE的转发信息

display segment-routing ipv6 te forwarding [ policy { name policy-name | { color color-value | end-point ipv6 ipv6-address } * } ] [ verbose ]

显示SRv6 TE Policy信息

display segment-routing ipv6 te policy [ name policy-name | down | up | { color color-value | end-point ipv6 ip-address } * ]

显示SRv6 TE Policy最近一次down的原因

display segment-routing ipv6 te policy last-down-reason [ binding-sid bsid | color color-value endpoint ipv6 ipv6-address | policy-name policy-name ]

显示SRv6 TE Policy的统计信息

display segment-routing ipv6 te policy statistics

显示SRv6 TE Policy的状态

display segment-routing ipv6 te policy status [ policy-name policy-name ]

显示SRv6 TE Policy组的信息

display segment-routing ipv6 te policy-group [ group-id ] [ verbose ]

显示SRv6 TE Policy的SBFD信息

display segment-routing ipv6 te sbfd [ down | policy { { color color-value | end-point ipv6 ipv6-address } * | name policy-name } | up ]

显示SRv6-TE的SID列表信息

display segment-routing ipv6 te segment-list [ name seglist-name | id id-value ]

清除SRv6 TE Policy流量转发统计信息

reset segment-routing ipv6 te forwarding statistics [ binding-sid binding-sid | color color-value endpoint endpoint-ipv6 | name name-value ]

 

1.24  SRv6 TE Policy典型配置举例

1.24.1  SRv6 TE Policy基本转发配置举例

1. 组网需求

通过在IGP网络中部署SRv6 TE Policy,实现根据用户需求制定合理的转发路径。如图1-11所示,用户需要流量分别经过Device A、Device B、Device C、Device D转发。通过部署以下功能可以实现该需求:

·     Device A~Device D设备之间运行IS-IS实现三层互通。

·     在Device A上配置SRv6 TE Policy,限定用户流量的转发路径为Device A->Device B->Device C->Device D。

2. 组网图

图1-11 SRv6 TE Policy基本转发配置组网图

设备

接口

IP地址

设备

接口

IP地址

Device A

Loop1

1::1/128

Device B

Loop1

2::2/128

 

GE2/0/1

1000::1/64

 

GE2/0/1

1000::2/64

 

GE2/0/2

4000::1/64

 

GE2/0/2

2000::2/64

Device C

Loop1

3::3/128

Device D

Loop1

4::4/128

 

GE2/0/1

3000::3/64

 

GE2/0/1

3000::4/64

 

GE2/0/2

2000::3/64

 

GE2/0/2

4000::4/64

 

3. 配置步骤

(1)     请按照图1-11配置各接口的IPv6地址和前缀长度,具体配置过程略

(2)     配置Device A

# 配置SID列表。

[DeviceA] segment-routing ipv6

[DeviceA-segment-routing-ipv6] encapsulation source-address 1::1

[DeviceA-segment-routing-ipv6] locator a ipv6-prefix 5000:: 64 static 32

[DeviceA-segment-routing-ipv6-locator-a] opcode 1 end

[DeviceA-segment-routing-ipv6-locator-a] quit

[DeviceA-segment-routing-ipv6] traffic-engineering

[DeviceA-srv6-te] srv6-policy locator a

[DeviceA-srv6-te] segment-list s1

[DeviceA-srv6-te-sl-s1] index 10 ipv6 6000::1

[DeviceA-srv6-te-sl-s1] index 20 ipv6 7000::1

[DeviceA-srv6-te-sl-s1] index 30 ipv6 8000::1

[DeviceA-srv6-te-sl-s1] quit

# 创建SRv6 TE Policy,并配置SRv6 TE Policy属性。

[DeviceA-srv6-te] policy p1

[DeviceA-srv6-te-policy-p1] binding-sid ipv6 5000::2

[DeviceA-srv6-te-policy-p1] color 10 end-point ipv6 4::4

[DeviceA-srv6-te-policy-p1] candidate-paths

[DeviceA-srv6-te-policy-p1-path] preference 10

[DeviceA-srv6-te-policy-p1-path-pref-10] explicit segment-list s1

[DeviceA-srv6-te-policy-p1-path-pref-10] quit

[DeviceA-srv6-te-policy-p1-path] quit

[DeviceA-srv6-te-policy-p1] quit

[DeviceA-srv6-te] quit

[DeviceA-segment-routing-ipv6] quit

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceA> system-view

[DeviceA] isis 1

[DeviceA-isis-1] network-entity 00.0000.0000.0001.00

[DeviceA-isis-1] cost-style wide

[DeviceA-isis-1] address-family ipv6 unicast

[DeviceA-isis-1-ipv6] segment-routing ipv6 locator a

[DeviceA-isis-1-ipv6] quit

[DeviceA-isis-1] quit

[DeviceA] interface gigabitethernet 2/0/1

[DeviceA-GigabitEthernet2/0/1] isis ipv6 enable 1

[DeviceA-GigabitEthernet2/0/1] quit

[DeviceA] interface gigabitethernet 2/0/2

[DeviceA-GigabitEthernet2/0/2] isis ipv6 enable 1

[DeviceA-GigabitEthernet2/0/2] quit

[DeviceA] interface loopback 1

[DeviceA-LoopBack1] isis ipv6 enable 1

[DeviceA-LoopBack1] quit

(3)     配置Device B

# 配置SRv6 End.SID。

[DeviceB] segment-routing ipv6

[DeviceB-segment-routing-ipv6] locator b ipv6-prefix 6000:: 64 static 32

[DeviceB-segment-routing-ipv6-locator-b] opcode 1 end

[DeviceB-segment-routing-ipv6-locator-b] quit

[DeviceB-segment-routing-ipv6] quit

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceB> system-view

[DeviceB] isis 1

[DeviceB-isis-1] network-entity 00.0000.0000.0002.00

[DeviceB-isis-1] cost-style wide

[DeviceB-isis-1] address-family ipv6 unicast

[DeviceB-isis-1-ipv6] segment-routing ipv6 locator b

[DeviceB-isis-1-ipv6] quit

[DeviceB-isis-1] quit

[DeviceB] interface gigabitethernet 2/0/1

[DeviceB-GigabitEthernet2/0/1] isis ipv6 enable 1

[DeviceB-GigabitEthernet2/0/1] quit

[DeviceB] interface gigabitethernet 2/0/2

[DeviceB-GigabitEthernet2/0/2] isis ipv6 enable 1

[DeviceB-GigabitEthernet2/0/2] quit

[DeviceB] interface loopback 1

[DeviceB-LoopBack1] isis ipv6 enable 1

[DeviceB-LoopBack1] quit

(4)     配置Device C

# 配置SRv6 End.SID。

[DeviceC] segment-routing ipv6

[DeviceC-segment-routing-ipv6] locator c ipv6-prefix 7000:: 64 static 32

[DeviceC-segment-routing-ipv6-locator-c] opcode 1 end

[DeviceC-segment-routing-ipv6-locator-c] quit

[DeviceC-segment-routing-ipv6] quit

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceC> system-view

[DeviceC] isis 1

[DeviceC-isis-1] network-entity 00.0000.0000.0003.00

[DeviceC-isis-1] cost-style wide

[DeviceC-isis-1] address-family ipv6 unicast

[DeviceC-isis-1-ipv6] segment-routing ipv6 locator c

[DeviceC-isis-1-ipv6] quit

[DeviceC-isis-1] quit

[DeviceC] interface gigabitethernet 2/0/1

[DeviceC-GigabitEthernet2/0/1] isis ipv6 enable 1

[DeviceC-GigabitEthernet2/0/1] quit

[DeviceC] interface gigabitethernet 2/0/2

[DeviceC-GigabitEthernet2/0/2] isis ipv6 enable 1

[DeviceC-GigabitEthernet2/0/2] quit

[DeviceC] interface loopback 1

[DeviceC-LoopBack1] isis ipv6 enable 1

[DeviceC-LoopBack1] quit

(5)     配置Device D

# 配置SRv6 End.SID。

[DeviceD] segment-routing ipv6

[DeviceD-segment-routing-ipv6] locator d ipv6-prefix 8000:: 64 static 32

[DeviceD-segment-routing-ipv6-locator-d] opcode 1 end

[DeviceD-segment-routing-ipv6-locator-d] quit

[DeviceD-segment-routing-ipv6] quit

# 配置IS-IS协议实现网络层互通,开销值类型为wide。

<DeviceD> system-view

[DeviceD] isis 1

[DeviceD-isis-1] network-entity 00.0000.0000.0004.00

[DeviceD-isis-1] cost-style wide

[DeviceD-isis-1] address-family ipv6 unicast

[DeviceD-isis-1-ipv6] segment-routing ipv6 locator d

[DeviceD-isis-1-ipv6] quit

[DeviceD-isis-1] quit

[DeviceD] interface gigabitethernet 2/0/1

[DeviceD-GigabitEthernet2/0/1] isis ipv6 enable 1

[DeviceD-GigabitEthernet2/0/1] quit

[DeviceD] interface gigabitethernet 2/0/2

[DeviceD-GigabitEthernet2/0/2] isis ipv6 enable 1

[DeviceD-GigabitEthernet2/0/2] quit

[DeviceD] interface loopback 1

[DeviceD-LoopBack1] isis ipv6 enable 1

[DeviceD-LoopBack1] quit

4. 验证配置

# 在Device A上查看SRv6 TE Policy的配置情况,可以看到SRv6 TE Policy处于激活状态,设备可以通过SRv6 TE Policy转发流量。

[DeviceA] display segment-routing ipv6 te policy

 

Name/ID: p1/0

 Color: 10

 Endpoint: 4::4

 Name from BGP:

 BSID:

  Mode: Explicit           Type: Type_2              Request state: Succeeded

  Current BSID: 5000::2    Explicit BSID: 5000::2    Dynamic BSID: -

 Reference counts: 4

 Flags: A/BS/NC

 Status: Up

 AdminStatus: Not configured

 Up time: 2020-04-02 16:08:03

 Down time: 2020-04-02 16:03:48

 Hot backup: Not configured

 Statistics: Not configured

  Statistics by service class: Not configured

 Drop-upon-invalid: Disabled

 BFD trigger path-down: Disabled

 SBFD: Not configured

 BFD Echo: Not configured

 Forwarding index: 2150629377

 Service-class: -

 Rate-limit: -

 Service-class: -

 Encapsulation mode: -

 Candidate paths state: Configured

 Candidate paths statistics:

  CLI paths: 1          BGP paths: 0          PCEP paths: 0

 Candidate paths:

  Preference : 10

   CPathName:

   Instance ID: 0          ASN: 0          Node address: 0.0.0.0

   Peer address:  ::

   Optimal: Y              Flags: V/A

   Explicit SID list:

    ID: 1                     Name: s1

    Weight: 1                 Forwarding index: 2149580801

    State: Up                 State(SBFD): -

    Active path MTU: 1428 bytes

# 在Device A上查看SRv6 TE Policy的转发信息。

[DeviceA] display segment-routing ipv6 te forwarding verbose

Total forwarding entries: 1

 

Policy name/ID: p1/0

 Binding SID: 5000::2

 Policy forwording index: 2150629377

 Main path:

   Seglist ID: 1

     Seglist forwording index: 2149580801

     Weight: 1

     Outgoing forwording index: 2148532225

       Interface: GE2/0/1

       Nexthop: FE80::54CB:70FF:FE86:316

         Path ID: 0

         SID list: {6000::1, 7000::1, 8000::1}

# 在Device A上查看LSP转发路径信息,可以看到SRv6 TE Policy对应的转发路径信息。

[DeviceA] display segment-routing ipv6 forwarding

Total SRv6 forwarding entries: 3

 

Flags: T - Forwarded through a tunnel

       N - Forwarded through the outgoing interface to the nexthop IP address

       A - Active forwarding information

       B - Backup forwarding information

 

ID            FWD-Type      Flags   Forwarding info

--------------------------------------------------------------------------------

2148532225    SRv6PSIDList  NA      GE2/0/1

                                    FE80::54CB:70FF:FE86:316

                                    {6000::1, 7000::1, 8000::1}

2149580801    SRv6PCPath    TA      2148532225

2150629377    SRv6Policy    TA      2149580801

1.24.2  SRv6 TE Policy尾节点保护配置举例

1. 组网需求

图1-12所示,在PE 1和PE 2之间建立双向SRv6 TE Policy,承载L3VPN业务。PE 2是SRv6 TE Policy的尾节点,为了增强可靠性,PE 3为PE 2提供保护。

2. 组网图

图1-12 SRv6 TE Policy尾节点保护配置组网图

设备

接口

IP地址

设备

接口

IP地址

CE 1

GE2/0/1

10.1.1.2/24

PE 2

Loop0

3::3/128

PE 1

Loop0

1::1/128

 

GE2/0/1

10.2.1.1/24

 

GE2/0/1

10.1.1.1/24

 

GE2/0/2

2002::1/64

 

GE2/0/2

2001::1/96

 

GE2/0/3

2004::2/96

P

Loop0

2::2/128

PE 3

Loop0

4::4/128

 

GE2/0/1

2001::2/96

 

GE2/0/1

10.3.1.1/24

 

GE2/0/2

2002::2/64

 

GE2/0/2

2003::1/96

 

GE2/0/3

2003::2/96

 

GE2/0/3

2004::1/96

 

 

 

CE 2

GE2/0/1

10.2.1.2/24

 

 

 

 

GE2/0/2

10.3.1.2/24

 

3. 配置准备

图1-12配置各CE的接口IP地址,配置过程略。

4. 配置步骤

(1)     配置CE 1

# 与PE建立EBGP对等体,引入VPN路由。

<CE1> system-view

[CE1] bgp 65410

[CE1-bgp-default] peer 10.1.1.1 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.1 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

(2)     配置PE 1

# 配置IPv6 IS-IS,实现骨干网互通。

<PE1> system-view

[PE1] isis 1

[PE1-isis-1] is-level level-1

[PE1-isis-1] cost-style wide

[PE1-isis-1] network-entity 10.1111.1111.1111.00

[PE1-isis-1] address-family ipv6 unicast

[PE1-isis-1-ipv6] quit

[PE1-isis-1] quit

[PE1] interface loopback 0

[PE1-LoopBack0] ipv6 address 1::1 128

[PE1-LoopBack0] isis ipv6 enable 1

[PE1-LoopBack0] quit

[PE1] interface gigabitethernet 2/0/2

[PE1-GigabitEthernet2/0/2] ipv6 address 2001::1 96

[PE1-GigabitEthernet2/0/2] isis ipv6 enable 1

[PE1-GigabitEthernet2/0/2] quit

# 配置VPN实例,将CE接入PE。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 100:1

[PE1-vpn-instance-vpn1] vpn-target 111:1

[PE1-vpn-instance-vpn1] quit

[PE1] interface gigabitethernet 2/0/1

[PE1-GigabitEthernet2/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet2/0/1] ip address 10.1.1.1 24

[PE1-GigabitEthernet2/0/1] quit

# 与CE建立EBGP对等体,引入VPN路由。

[PE1] bgp 100

[PE1-bgp-default] router-id 1.1.1.1

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 10.1.1.2 as-number 65410

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.2 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

# 在PE之间建立MP-IBGP对等体。

[PE1] bgp 100

[PE1-bgp-default] peer 3::3 as-number 100

[PE1-bgp-default] peer 4::4 as-number 100

[PE1-bgp-default] peer 3::3 connect-interface loopback 0

[PE1-bgp-default] peer 4::4 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 3::3 enable

[PE1-bgp-default-vpnv4] peer 4::4 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# 配置L3VPN over SRv6 TE Policy。

[PE1] segment-routing ipv6

[PE1-segment-routing-ipv6] encapsulation source-address 1::1

[PE1-segment-routing-ipv6] locator aaa ipv6-prefix 1:2::1:0 96 static 8

[PE1-segment-routing-ipv6-locator-aaa] opcode 1 end-dt4 vpn-instance vpn1

[PE1-segment-routing-ipv6-locator-aaa] quit

[PE1-segment-routing-ipv6] quit

[PE1] bgp 100

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 3::3 prefix-sid

[PE1-bgp-default-vpnv4] peer 4::4 prefix-sid

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] segment-routing ipv6 traffic-engineering best-effort

[PE1-bgp-default-ipv4-vpn1] segment-routing ipv6 locator aaa

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

[PE1] isis 1

[PE1-isis-1] address-family ipv6 unicast

[PE1-isis-1-ipv6] segment-routing ipv6 locator aaa

[PE1-isis-1-ipv6] quit

[PE1-isis-1] quit

# 配置SRv6 TE Policy。

[PE1] segment-routing ipv6

[PE1-segment-routing-ipv6] traffic-engineering

[PE1-srv6-te] srv6-policy locator aaa

[PE1-srv6-te] segment-list s1

[PE1-srv6-te-s1-s1] index 10 ipv6 100:abc:1::1

[PE1-srv6-te-s1-s1] index 20 ipv6 6:5::1:2

[PE1-srv6-te-s1-s1] quit

[PE1-srv6-te] policy p1

[PE1-srv6-te-policy-p1] binding-sid ipv6 1:2::1:2

[PE1-srv6-te-policy-p1] color 10 end-point ipv6 3::3

[PE1-srv6-te-policy-p1] candidate-paths

[PE1-srv6-te-policy-p1-path] preference 10

[PE1-srv6-te-policy-p1-path-pref-10] explicit segment-list s1

[PE1-srv6-te-policy-p1-path-pref-10] quit

[PE1-srv6-te-policy-p1-path] quit

[PE1-srv6-te-policy-p1] quit

[PE1-srv6-te] quit

[PE1-segment-routing-ipv6] quit

(3)     配置P

# 配置IPv6 IS-IS,实现骨干网互通。

<P> system-view

[P] isis 1

[P-isis-1] is-level level-1

[P-isis-1] cost-style wide

[P-isis-1] network-entity 10.2222.2222.2222.00

[P-isis-1] address-family ipv6 unicast

[P-isis-1-ipv6] quit

[P-isis-1] quit

[P] interface loopback 0

[P-LoopBack0] ipv6 address 2::2 128

[P-LoopBack0] isis ipv6 enable 1

[P-LoopBack0] quit

[P] interface gigabitethernet 2/0/1

[P-GigabitEthernet2/0/1] ipv6 address 2001::2 96

[P-GigabitEthernet2/0/1] isis ipv6 enable 1

[P-GigabitEthernet2/0/1] quit

[P] interface gigabitethernet 2/0/2

[P-GigabitEthernet2/0/2] ipv6 address 2002::2 96

[P-GigabitEthernet2/0/2] isis ipv6 enable 1

[P-GigabitEthernet2/0/2] quit

[P] interface gigabitethernet 2/0/3

[P-GigabitEthernet2/0/3] ipv6 address 2003::2 96

[P-GigabitEthernet2/0/3] isis ipv6 enable 1

[P-GigabitEthernet2/0/3] quit

# 配置SRv6功能。

[P] segment-routing ipv6

[P-segment-routing-ipv6] locator p ipv6-prefix 100:abc:1::0 96 static 8

[P-segment-routing-ipv6-locator-p] opcode 1 end

[P-segment-routing-ipv6-locator-p] quit

[P-segment-routing-ipv6] quit

[P] isis 1

[P-isis-1] address-family ipv6 unicast

[P-isis-1-ipv6] segment-routing ipv6 locator p

# 配置快速重路由的备份下一跳信息,并开启尾节点保护功能。

[P-isis-1-ipv6] fast-reroute lfa level-1

[P-isis-1-ipv6] fast-reroute ti-lfa

[P-isis-1-ipv6] fast-reroute mirror enable

[P-isis-1-ipv6] quit

[P-isis-1] quit

(4)     配置PE 2

# 配置IPv6 IS-IS,实现骨干网互通。

<PE2> system-view

[PE2] isis 1

[PE2-isis-1] is-level level-1

[PE2-isis-1] cost-style wide

[PE2-isis-1] network-entity 10.3333.3333.3333.00

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

[PE2] interface loopback 0

[PE2-LoopBack0] ipv6 address 3::3 128

[PE2-LoopBack0] isis ipv6 enable 1

[PE2-LoopBack0] quit

[PE2] interface gigabitethernet 2/0/2

[PE2-GigabitEthernet2/0/2] ipv6 address 2002::1 96

[PE2-GigabitEthernet2/0/2] isis ipv6 enable 1

[PE2-GigabitEthernet2/0/2] quit

[PE2] interface gigabitethernet 2/0/3

[PE2-GigabitEthernet2/0/3] ipv6 address 2004::2 96

[PE2-GigabitEthernet2/0/3] isis ipv6 enable 1

[PE2-GigabitEthernet2/0/3] quit

# 配置VPN实例,将CE接入PE。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 100:1

[PE2-vpn-instance-vpn1] vpn-target 111:1

[PE2-vpn-instance-vpn1] quit

[PE2] interface gigabitethernet 2/0/1

[PE2-GigabitEthernet2/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet2/0/1] ip address 10.2.1.1 24

[PE2-GigabitEthernet2/0/1] quit

# 与CE建立EBGP对等体,引入VPN路由。

[PE2] bgp 100

[PE2-bgp-default] router-id 2.2.2.2

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] peer 10.2.1.2 as-number 65420

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] peer 10.2.1.2 enable

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

# 在PE之间建立MP-IBGP对等体。

[PE2] bgp 100

[PE2-bgp-default] peer 1::1 as-number 100

[PE2-bgp-default] peer 4::4 as-number 100

[PE2-bgp-default] peer 1::1 connect-interface loopback 0

[PE2-bgp-default] peer 4::4 connect-interface loopback 0

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 1::1 enable

[PE2-bgp-default-vpnv4] peer 4::4 enable

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] quit

# 配置L3VPN over SRv6 TE Policy。

[PE2] segment-routing ipv6

[PE2-segment-routing-ipv6] encapsulation source-address 3::3

[PE2-segment-routing-ipv6] locator bbb ipv6-prefix 6:5::1:0 96 static 8

[PE2-segment-routing-ipv6-locator-bbb] opcode 1 end-dt4 vpn-instance vpn1

[PE2-segment-routing-ipv6-locator-bbb] opcode 2 end

[PE2-segment-routing-ipv6-locator-bbb] quit

[PE2-segment-routing-ipv6] quit

[PE2] bgp 100

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 1::1 prefix-sid

[PE2-bgp-default-vpnv4] peer 4::4 prefix-sid

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 traffic-engineering best-effort

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 locator bbb

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

[PE2] isis 1

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] segment-routing ipv6 locator bbb

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

(5)     配置PE 3

# 配置IPv6 IS-IS,实现骨干网互通。

<PE3> system-view

[PE3] isis 1

[PE3-isis-1] is-level level-1

[PE3-isis-1] cost-style wide

[PE3-isis-1] network-entity 10.4444.4444.4444.00

[PE3-isis-1] address-family ipv6 unicast

[PE3-isis-1-ipv6] quit

[PE3-isis-1] quit

[PE3] interface loopback 0

[PE3-LoopBack0] ipv6 address 4::4 128

[PE3-LoopBack0] isis ipv6 enable 1

[PE3-LoopBack0] quit

[PE3] interface gigabitethernet 2/0/2

[PE3-GigabitEthernet2/0/2] ipv6 address 2003::1 96

[PE3-GigabitEthernet2/0/2] isis ipv6 enable 1

[PE3-GigabitEthernet2/0/2] quit

[PE3] interface gigabitethernet 2/0/3

[PE3-GigabitEthernet2/0/3] ipv6 address 2004::1 96

[PE3-GigabitEthernet2/0/3] isis ipv6 enable 1

[PE3-GigabitEthernet2/0/3] quit

# 配置VPN实例,将CE接入PE。

[PE3] ip vpn-instance vpn1

[PE3-vpn-instance-vpn1] route-distinguisher 100:1

[PE3-vpn-instance-vpn1] vpn-target 111:1

[PE3-vpn-instance-vpn1] quit

[PE3] interface gigabitethernet 2/0/1

[PE3-GigabitEthernet2/0/1] ip binding vpn-instance vpn1

[PE3-GigabitEthernet2/0/1] ip address 10.3.1.1 24

[PE3-GigabitEthernet2/0/1] quit

# 与CE建立EBGP对等体,引入VPN路由。

[PE3] bgp 100

[PE3-bgp-default] router-id 3.3.3.3

[PE3-bgp-default] ip vpn-instance vpn1

[PE3-bgp-default-vpn1] peer 10.3.1.2 as-number 65420

[PE3-bgp-default-vpn1] address-family ipv4 unicast

[PE3-bgp-default-ipv4-vpn1] peer 10.3.1.2 enable

[PE3-bgp-default-ipv4-vpn1] quit

[PE3-bgp-default-vpn1] quit

# 在PE之间建立MP-IBGP对等体。

[PE3] bgp 100

[PE3-bgp-default] peer 1::1 as-number 100

[PE3-bgp-default] peer 3::3 as-number 100

[PE3-bgp-default] peer 1::1 connect-interface loopback 0

[PE3-bgp-default] peer 3::3 connect-interface loopback 0

[PE3-bgp-default] address-family vpnv4

[PE3-bgp-default-vpnv4] peer 1::1 enable

[PE3-bgp-default-vpnv4] peer 3::3 enable

[PE3-bgp-default-vpnv4] quit

[PE3-bgp-default] quit

# 配置SRv6封装的IPv6报文头的源地址。

[PE3] segment-routing ipv6

[PE3-segment-routing-ipv6] encapsulation source-address 4::4

# 配置End.M SID来保护PE 2。

[PE3-segment-routing-ipv6] locator ccc ipv6-prefix 9:7::1:0 96 static 8

[PE3-segment-routing-ipv6-locator-ccc] opcode 1 end-m mirror-locator 6:5::1:0 96

[PE3-segment-routing-ipv6-locator-ccc] quit

[PE3-segment-routing-ipv6] quit

# 配置将私网路由迭代到End.M SID的路由条目上。

[PE3] bgp 100

[PE3-bgp-default] address-family vpnv4

[PE3-bgp-default-vpnv4] peer 1::1 prefix-sid

[PE3-bgp-default-vpnv4] peer 3::3 prefix-sid

[PE3-bgp-default-vpnv4] quit

[PE3-bgp-default] ip vpn-instance vpn1

[PE3-bgp-default-vpn1] address-family ipv4 unicast

[PE3-bgp-default-ipv4-vpn1] segment-routing ipv6 locator ccc

[PE3-bgp-default-ipv4-vpn1] quit

[PE3-bgp-default-vpn1] quit

[PE3-bgp-default] quit

[PE3] isis 1

[PE3-isis-1] address-family ipv6 unicast

[PE3-isis-1-ipv6] segment-routing ipv6 locator ccc

[PE3-isis-1-ipv6] quit

[PE3-isis-1] quit

(6)     配置CE 2

# 与PE建立EBGP对等体,引入VPN路由。

<CE2> system-view

[CE2] bgp 65420

[CE2-bgp-default] peer 10.2.1.1 as-number 100

[CE2-bgp-default] peer 10.3.1.1 as-number 100

[CE2-bgp-default] address-family ipv4 unicast

[CE2-bgp-default-ipv4] peer 10.2.1.1 enable

[CE2-bgp-default-ipv4] peer 10.3.1.1 enable

[CE2-bgp-default-ipv4] import-route direct

[CE2-bgp-default-ipv4] quit

[CE2-bgp-default] quit

5. 验证配置

# 在PE 1上查看SRv6 TE Policy的配置情况,可以看到SRv6 TE Policy处于激活状态,设备可以通过SRv6 TE Policy转发流量。

[PE1] display segment-routing ipv6 te policy

 

Name/ID: p1/0

 Color: 10

 End-point: 3::3

 Name from BGP:

 BSID:

  Mode: Explicit            Type: Type_2              Request state: Succeeded

  Current BSID: 1:2::1:2    Explicit BSID: 1:2::1:2   Dynamic BSID: -

 Reference counts: 4

 Flags: A/BS/NC

 Status: Up

 AdminStatus: Not configured

 Up time: 2020-10-28 09:10:33

 Down time: 2020-10-28 09:09:32

 Hot backup: Not configured

 Statistics: Not configured

  Statistics by service class: Not configured

 Drop-upon-invalid: Disabled

 BFD trigger path-down: Disabled

 SBFD: Not configured

 BFD Echo: Not configured

 Forwarding index: 2150629377

 Service-class: -

 Rate-limit: -

 Service-class: -

 Encapsulation mode: -

 Candidate paths state: Configured

 Candidate paths statistics:

  CLI paths: 1          BGP paths: 0          PCEP paths: 0

 Candidate paths:

  Preference : 10

   CPathName:

   Instance ID: 0          ASN: 0          Node address: 0.0.0.0

   Peer address:  ::

   Optimal: Y              Flags: V/A

   Explicit SID list:

    ID: 1                     Name: s1

    Weight: 1                 Forwarding index: 2149580801

    State: Up                 State(-): -

    Active path MTU: 1428 byte

# 在PE 1设备上查看SRv6 TE Policy的转发信息。

[PE1] display segment-routing ipv6 te forwarding verbose

Total forwarding entries: 1

 

Policy name/ID: p1/0

 Binding SID: 1:2::1:2

 Forwarding index: 2150629377

 Main path:

   Seglist ID: 1

     Seglist forwarding index: 2149580801

     Weight: 1

     Outgoing forwarding index: 2148532225

       Interface: GE2/0/2

       Nexthop: FE80::988A:B5FF:FED9:316

         Path ID: 0

         SID list: {100:ABC:1::1, 6:5::1:2}

# 在PE 1上查看转发路径信息,可以看到SRv6 TE Policy对应的转发路径信息。

[PE1] display segment-routing ipv6 forwarding

Total SRv6 forwarding entries: 3

 

Flags: T - Forwarded through a tunnel

       N - Forwarded through the outgoing interface to the nexthop IP address

       A - Active forwarding information

       B - Backup forwarding information

 

ID            FWD-Type      Flags   Forwarding info

              Attri-Val             Attri-Val

--------------------------------------------------------------------------------

2148532225    SRv6PSIDList  NA      GE2/0/2

                                    FE80::988A:B5FF:FED9:316

                                    {100:ABC:1::1, 6:5::1:2}

2149580801    SRv6PCPath    TA      2148532225

2150629377    SRv6Policy    TA      2149580801

              p1

# 在PE 3上查看End.M SID所保护的远端SRv6 SID信息。

[PE3] display bgp mirror remote-sid

 

Remote SID: 6:5::1:1

Remote SID type: End.DT4

Mirror locator: 6:5::1:0/96

Vpn instance name: vpn1

# 在P上查看IS-IS IPv6路由中End.M SID信息。

[P] display isis route ipv6 6:5::1:0 96 verbose

 

                         Route information for IS-IS(1)

                         ------------------------------

 

                         Level-1 IPv6 forwarding table

                         -----------------------------

 

 IPv6 dest   : 6:5::/96

 Flag        : R/-/-                       Cost        : 10

 Admin tag   : -                           Src count   : 3

 Nexthop     : FE80::988A:BDFF:FEB6:417

 Interface   : GE2/0/2

 Mirror FRR:

  Interface : GE2/0/3

  BkNextHop : FE80::988A:C6FF:FE0D:517

  LsIndex    : 0x80000001

  Backup label stack(top->bottom): {9:7::1:1}

 Nib ID      : 0x24000006

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

# 正常情况下,流量经过路径CE 1-PE 1-P-PE 2-CE 2发布到私网。当PE 2节点故障时,P设备上感知PE 2下一跳不可达,切换为FRR路径,使SRv6 TE Policy正常转发路由表项。将设备P与PE 2的接口断开,可以发现P设备上下一跳接口变为备用接口,PE 1上的SRv6 TE Policy仍然处于激活状态。

[P] interface gigabitethernet 2/0/2

[P-GigabitEthernet2/0/2] shut

[P-GigabitEthernet2/0/2] quit

[P] display isis route ipv6 6:5::1:0 96 verbose

 

                         Route information for IS-IS(1)

                         ------------------------------

 

                         Level-1 IPv6 forwarding table

                         -----------------------------

 

 IPv6 dest   : 6:5::/96

 Flag        : R/-/-                       Cost        : 20

 Admin tag   : -                           Src count   : 3

 Nexthop     : FE80::988A:C6FF:FE0D:517

 Interface   : GE2/0/3

 Nib ID      : 0x24000007

 

      Flags: D-Direct, R-Added to Rib, L-Advertised in LSPs, U-Up/Down Bit Set

[PE1] display segment-routing ipv6 te policy

 

Name/ID: p1/0

 Color: 10

 End-point: 3::3

 Name from BGP:

 BSID:

  Mode: Explicit            Type: Type_2              Request state: Succeeded

  Current BSID: 1:2::1:2    Explicit BSID: 1:2::1:2   Dynamic BSID: -

 Reference counts: 4

 Flags: A/BS/NC

 Status: Up

 AdminStatus: Not configured

 Up time: 2020-10-28 09:10:33

 Down time: 2020-10-28 09:09:32

 Hot backup: Not configured

 Statistics: Not configured

  Statistics by service class: Not configured

 Drop-upon-invalid: Disabled

 BFD trigger path-down: Disabled

 SBFD: Not configured

 BFD Echo: Not configured

 Forwarding index: 2150629377

 Service-class: -

 Rate-limit: -

 Service-class: -

 Encapsulation mode: -

 Candidate paths state: Configured

 Candidate paths statistics:

  CLI paths: 1          BGP paths: 0          PCEP paths: 0

 Candidate paths:

  Preference : 10

   CPathName:

   Instance ID: 0          ASN: 0          Node address: 0.0.0.0

   Peer address:  ::

   Optimal: Y              Flags: V/A

   Explicit SID list:

    ID: 1                     Name: s1

    Weight: 1                 Forwarding index: 2149580801

    State: Up                 State(-): -

    Active path MTU: 1428 bytes

 

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们