• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

08-Segment Routing

目录

04-SRv6 TE Policy故障处理

本章节下载 04-SRv6 TE Policy故障处理  (393.21 KB)

04-SRv6 TE Policy故障处理

1 Segment Routing故障处理

1.1  SRv6 TE Policy故障处理

1.1.1  SRv6 TE Policy无法生效的定位思路

1. 故障描述

执行ping srv6-te policy命令检查指定SRv6 TE Policy的连通性时,发现报文无法通过SRv6 TE Policy正常转发。例如:

<Sysname> ping srv6-te policy policy-name p1

The SRv6-TE policy does not reference a SID list or the referenced SID list is down.

2. 常见原因

本类故障的常见原因主要包括:

·     SRv6 TE Policy状态为Shutdown。

·     SRv6 TE Policy的BSID配置错误或者冲突。

·     SRv6 TE Policy下配置缺失。

·     SRv6 TE Policy的资源超限。

·     Segment List中SID数量超限。

·     SRv6 TE Policy的SID列表与报文转发路径的规划不同。

·     SRv6 TE Policy报文转发路径上的物理链路故障。

3. 故障诊断流程

本类故障的诊断流程如图1-1所示。

图1-1 SRv6 TE Policy无法生效的故障诊断流程图

 

4. 故障处理步骤

(1)     在SRv6 TE Policy的头节点执行display segment-routing ipv6 te policy status命令初步查看SRv6 TE Policy不生效的原因。

<Sysname> display segment-routing ipv6 te policy status

Name/ID: p1/0

Status: Down

  Check admin status                  : Failed

  Check for endpoint & color          : Passed

  Check for segment list              : Passed

  Check valid candidate paths         : Failed

  Check for BSIDs                     : -

如果Check admin status字段显示为Failed,说明SRv6 TE Policy处于管理关闭状态。请进入指定SRv6 TE Policy视图下执行undo shutdown命令,设置SRv6 TE Policy为开启状态。

开启指定SRv6 TE Policy后,再次执行display segment-routing ipv6 te policy status命令,如果存在其他校验字段显示为Failed或“-”,例如Check for segment List字段显示为Failed,继续执行以下操作。

(2)     检查SRv6 TE Policy的BSID是否存在冲突。

在SRv6 TE Policy的头节点执行display segment-routing ipv6 te policy命令。显示信息中Request state字段取值为Failed表示BSID申请失败。静态指定的BSID可能不在Locator段范围内或者与已存在的SRv6 TE Policy的BSID出现重复,从而导致SRv6 TE Policy失效。建议在失效的SRv6 TE Policy下执行undo binding-sid命令删除静态手工指定BSID,由系统自动申请BSID,以避免错误和冲突。

<Sysname> display segment-routing ipv6 te policy

 

Name/ID: p1/0

 Color: 10

 Endpoint: 1000::1

 Name from BGP:

 BSID:

  Mode: Dynamic              Type: Type 2              Request state: Succeeded

  Current BSID: 8000::1      Explicit BSID: -          Dynamic BSID: 8000::1

 Reference counts: 3

 Flags: A/BS/NC

如果BSID申请成功以后,问题仍未解决,则请继续执行以下操作。

(3)     检查SRv6 TE Policy的配置是否完整。

以IS-IS作为IGP通告SID为例,在SRv6 TE Policy的头节点上执行命令display current-configuration,查看配置是否与以下实例中的一致。如果缺少任意一项,则说明遗漏了部分配置。

isis 1

address-family ipv6 unicast

  segment-routing ipv6 locator a

 

segment-routing ipv6

locator a ipv6-prefix 1000:0:0:1:: 64 static 16

traffic-engineering

  srv6-policy locator a

  segment-list sl1

   index 10 ipv6 1000::2:0:0:1:0

   index 20 ipv6 1000::2:0:0:1:3

  policy p1

   color 100 end-point ipv6 4::4

   candidate-paths

    preference 100

     explicit segment-list sl1

SRv6 TE Policy报文转发路径的各节点上,也需要在IGP视图下配置segment-routing ipv6 locator命令,以正常发布Locator段。例如:

isis 1

address-family ipv6 unicast

  segment-routing ipv6 locator b

如果配置不完整,请补充缺失配置。配置补充完整后,如果问题仍未解决,请继续执行以下操作。

(4)     检查当前SRv6 TE Policy数量和Segment List数量是否超限。

在SRv6 TE Policy头节点执行display segment-routing ipv6 te policy statistics命令,查看SRv6 TE Policy的使用数量是否达到上限。

<Sysname> display segment-routing ipv6 te policy statistics

 

         IPv6 TE Policy Database Statistics

SRv6-TE policy resource information:

  Max resources: 1024

  Used resources: 1

  Upper threshold: 512 (50%)

  Lower threshold: 102 (10%)

SID list resource information:

  Max resources: 4096

  Used resources: 1

  Upper threshold: 3277 (80%)

  Lower threshold: 1638 (40%)

¡     如果SRv6-TE policy resource information下的Used resources字段的值等于Max resources字段的值,则表示SRv6 TE Policy数量可能超限,此时请删除不需要的SRv6 TE Policy。

¡     如果SID list resource information下的Used resources字段的值等于Max resources字段的值,则表示Segment List数量可能超限,请删除不需要的Segment List。

¡     如果SRv6 TE Policy数量和Segment List数量均没有超限,请继续执行以下操作。

(5)     检查Segment List中SID数量是否超限。

在SRv6 TE Policy头节点上进入probe视图,并执行display system internal segment-routing ipv6 te policy status命令,显示信息中MaxSIDs表示Segment List中SID的数量上限。

[Sysname-probe] display system internal segment-routing ipv6 te policy status

   MaxGroupNidNum: 1024           MaxPolicyNidNum: 1024

 MaxSeglistNidNum: 4096          MaxNexthopNidNum: 65535

        MaxOutNum: 32                  MaxEcmpNum: 16

          MaxSIDs: 10

执行display segment-routing ipv6 te segment-list命令,显示信息中的Nodes字段表示该指定Segment List中配置的SID节点数量。

<Sysname> display segment-routing ipv6 te segment-list

 

Total Segment lists: 1

 

Name/ID: A/1

 Origin: CLI

 Status: Up

 Verification State: Down

 Nodes: 11

如果配置的SID节点数量超过SID的数量上限,请删除Segment List中不必要的SID值。如果配置的SID节点数量未超过上限,庆继续执行以下操作。

(6)     检查SID列表的配置与规划是否一致。

在SRv6 TE Policy头节点执行display segment-routing ipv6 te segment-list命令,显示SID列表信息,其中自上而下依次排列的SID值表示转发路径上距离SRv6 TE Policy头节点由近到远的各节点或链路。如果Status字段为Down,表示未正常学习到该SID所属的Locator段。请参考OSPFv3故障处理手册或IS-IS故障处理手册处理。

[Sysname] display segment-routing ipv6 te segment-list

 

Total Segment lists: 1

 

Name/ID: s1/1

 Origin: CLI

 Status: Down

 Verification State: Down

 Nodes : 3

 

  Index    : 10                           SID: 1::1

  Status   : UP                    TopoStatus: Nonexistent

  Type     : Type_2                     Flags: None

  Coc Type : -           Common prefix length: 0

 

  Index    : 20                           SID: 1::2

  Status   : Down                  TopoStatus: Nonexistent

  Type     : Type_2                     Flags: None

  Coc Type : -           Common prefix length: 0

 

  Index    : 30                           SID: 1::3

  Status   : Down                  TopoStatus: Nonexistent

  Type     : Type_2                     Flags: None

  Coc Type : -           Common prefix length: 0

在SRv6 TE Policy转发路径上的各个节点上依次执行display segment-routing ipv6 local-sid命令查看SID值是否与上述命令显示的SID列表中的SID值一致。SID类型通常为End SID或End.X SID。例如,对于End SID,查看SRv6 Local SID的信息。

[Sysname] display segment-routing  ipv6  local-sid end

                    Local SID forwarding table (End)

Total SIDs: 2

 

SID           : 1000::2:0:0:1:0/64

Function type : End                             Flavor         : PSP

Locator name  : b                               Allocation type: Dynamic

Owner         : IS-IS-1                         State          : Active

Create Time   : Sep 04 16:32:03.443 2021

如果SID列表与转发路径上各节点的SID值不一致,请执行undo index index-number命令删除错误的SID,再执行index index-number ipv6 ipv6-address命令重新配置正确的SID。如果SID列表与规划一致,请继续执行以下操作。

(7)     在SRv6 TE Policy转发路径上的各个节点上通过display interface brief命令检查物理链路状态,确保转发路径上各接口的物理状态和数据链路层协议状态均为UP。如果链路正常,或链路恢复后问题仍未解决,请继续执行以下操作。

(8)     如果故障仍然未能排除,请收集如下信息,并联系技术支持人员

¡     上述步骤的执行结果。

¡     设备的配置文件、日志信息、告警信息。

5. 告警与日志

相关告警

相关日志

·     SRPV6/2/SRPV6_BSID_CONFLICT

·     SRPV6/2/SRPV6_BSID_CONFLICT_CLEAR

·     SRPV6/5/SRPV6_PATH_STATE_DOWN

·     SRPV6/4/SRPV6_POLICY_STATUS_CHG

·     SRPV6/4/SRPV6_RESOURCE_EXDCEED

·     SRPV6/4/SRPV6_RESOURCE_EXCEED_CLEAR

·     SRPV6/5/SRPV6_SEGLIST_STATE_DOWN

·     SRPV6/5/SRPV6_ SEGLIST_STATE_DOWN

·     SRPV6/2/SRPV6_STATE_DOWN

·     SRPV6/2/SRPV6_STATE_DOWN_CLEAR

1.1.2  控制器建立SRv6 TE Policy隧道失败

1. 故障描述

图1-2所示的骨干网络中,控制器建立和维护SRv6 TE Policy隧道过程如下:

(1)     PE、P和RR等转发设备通过IGP路由互通,互相发布链路拓扑和TE属性信息。

(2)     PE上的IGP将链路拓扑和TE属性发布到BGP-LS中。

(3)     控制器Controller与PE直接建立BGP-LS邻居关系,通过BGP-LS收集全网的链路拓扑和TE属性等信息。

(4)     控制器Controller上根据链路拓扑和TE属性计算可以得到一条从PE 1到PE 3的最优SRv6 TE Policy隧道作为转发路径。

(5)     控制器Controller通过BGP IPv6 SR Policy路由将SRv6 TE Policy发布给路由反射器RR,并由RR将SRv6 TE Policy发布给PE 1。

(6)     完成SRv6 TE Policy后,PE上再通过BGP-LS将SRv6 TE Policy的状态信息报告给控制器Controller,由控制器维护SRv6 TE Policy的转发路径。

正常情况下,PE 1可以根据控制器下发的BGP IPv6 SR Policy路由学习并创建PE 1到PE 3的SRv6 TE Policy。但在PE 1上执行display segment-routing ipv6 te policy命令发现不存在任何SRv6 TE Policy隧道或者不存在通过由控制器BGP路由建立的SRv6 TE Policy。

图1-2 控制器下发SRv6 TE Policy隧道的典型组网架构示意图

 

2. 常见原因

本类故障的常见原因主要分为两个方面,包括:

·     控制器Controller未能通过BGP-LS正常收集链路拓扑和TE属性等信息,导致无法计算出SRv6 TE Policy。BGP-LS收集信息异常的可能原因可能如下。

¡     PE与控制器的BGP-LS邻居未正常建立;

¡     IGP未正常将链路拓扑信息发布到BGP-LS,IGP链路的网络类型不是P2P,无法配合BGP-LS自动发现链路;

¡     IGP未发布的链路TE属性信息或者发布的属性不正确;

¡     BGP-LSNLRI中的IPv6 TE Router ID不唯一;

·     控制器Controller下发的BGP IPv6 SR Policy路由未能正常反射到PE 1上。可能原因如下。

¡     BGP IPv6 SR Policy邻居未正常建立;

¡     BGP IPv6 SR Policy路由被过滤了;

3. 故障诊断流程

本类故障的诊断流程如图1-1所示。

图1-3 控制器建立SRv6 TE Policy隧道失败的故障诊断流程图

 

4. 故障处理步骤

(1)     在SRv6 TE Policy的头节点PE 1执行display segment-routing ipv6 te policy命令查看SRv6 TE Policy是否正常建立。正常情况下,通过BGP建立的SRv6 TE Policy的显示信息中应该包含如下信息:

¡     BGP paths字段标识BGP建立的候选路径数量。显示取值为0时,则不存在BGP建立的候选路径;

¡     ProtoOrigin字段显示为BGP,表示该候选路径由BGP协议生成。显示为非BGP,则不是BGP建立的候选路径;

<PE1> display segment-routing ipv6 te policy

 

Name/ID: test1/0

 Color: 10

 End-point: 3::3

 Name from BGP: test1

 Name from PCE:

 Candidate paths statistics:

  CLI paths: 0          BGP paths: 2          PCEP paths: 0          ODN paths: 0

  Preference : 100

   Network slice ID: -

   CPathName: test1

   CPathPolicyName:

   ProtoOrigin: BGP        Discriminator: 100

  Preference : 200

   Network slice ID: -

   CPathName: test1

   CPathPolicyName:

   ProtoOrigin: BGP        Discriminator: 200

如果display segment-routing ipv6 te policy命令无显示,或者上述字段显示不符合预期则表示不存在BGP发布的SRv6 TE Policy,请继续执行以下操作。

(2)     检查PE与控制器的BGP-LS邻居是否正常建立。

在SRv6 TE Policy的头节点PE 1执行display bgp peer link-state命令。控制器Controller作为PE 1的BGP-LS对等体,State字段应该显示为Established,表示PE 1与控制器正常建立了BGP-LS邻居。如果State字段显示不是Established,则表示邻居建立不正常,请参见“BGP故障处理”中的“BGP会话无法进入Established状态”排除故障。

<PE1> display bgp peer link-state

 

 BGP local router ID: 1.1.1.1

 Local AS number: 100

 Total number of peers: 1                 Peers in established state: 1

 

 * - Dynamically created peer

 Peer                    AS  MsgRcvd  MsgSent OutQ  PrefRcv Up/Down  State

 

 4::4                   100     1504     1609    0        2 22:26:58 Established

如果PE与控制器的BGP-LS邻居正常建立,问题仍未解决,则请继续执行以下操作。

(3)     检查IGP是否将链路拓扑信息发布到BGP-LS。

在SRv6 TE Policy的头节点PE 1上执行命令display bgp link-state,查看BGP-LS链路信息是否正常。在骨干网中BGP-LS显示的链路信息中Network字段中的链路信息类型通常包括[V]标识网络节点信息、[E]标识网络链路信息、[T6]标识网络IPv6前缀信息、[T4]标识网络IPv4前缀信息、[TEPOLICY]标识网络中的SRv6 TE Policy信息、[SD]标识网络中的SRv6 SID信息等。检查域内的各节点、链路、前缀、SRv6 SID以及SRv6 TE Policy等是否完整包含在BGP LS信息中。

<PE1> display bgp link-state

 

 Total number of routes: 39

 

 BGP local router ID is 1.1.1.1

 Status codes: * - valid, > - best, d - dampened, h - history,

               s - suppressed, S - stale, i - internal, e - external

               a - additional-path

       Origin: i - IGP, e - EGP, ? - incomplete

 Prefix codes: E link, V node, T4 IPv4 route, T6 IPv6 route, SD SRv6 SID desc

               u/U unknown,

               I Identifier, N local node, R remote node, L link, P prefix,

               L1/L2 ISIS level-1/level-2, O OSPF, O3 OSPFv3,

               D direct, S static, B BGP, SS SRv6 SID,

               a area-ID, l link-ID, t topology-ID, s ISO-ID,

               c confed-ID/ASN, b bgp-identifier, r router-ID,

               i if-address, n peer-address, o OSPF Route-type, p IP-prefix

               d designated router address/interface, ID Link Descriptor Identifer

 

* >  Network : [V][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0001.00]]/328

     NextHop : 0.0.0.0                                  LocPrf    :

     PrefVal : 32768                                    OutLabel  : NULL

     MED     :

     Path/Ogn: i

 

* >  Network : [E][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0001.00]][R[c100][b1.1.1.1][s0000.0000.0002.00]][L[i12::1][n12::2]]/888

     NextHop : 0.0.0.0                                  LocPrf    :

     PrefVal : 32768                                    OutLabel  : NULL

     MED     :

     Path/Ogn: i

 

* >  Network : [T6][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0001.00]][P[p12::/120]]/488

     NextHop : 0.0.0.0                                  LocPrf    :

     PrefVal : 32768                                    OutLabel  : NULL

     MED     :

     Path/Ogn: i

 

* >  Network : [T6][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0002.00]][P[p200:A:B:C::/64]]/432

     NextHop : 0.0.0.0                                  LocPrf    :

     PrefVal : 32768                                    OutLabel  : NULL

     MED     :

     Path/Ogn: i

 

* >  Network : [TEPOLICY][SEGMENT-ROUTING][I0x0][N[c100][bgp-ls-identifier1.1.1.1][bgp-router-id1.1.1.1][ipv4-router-id0.0.0.0][ipv6-router-id1::1]][TE[protocol-origin2][Flag192][endpoint3::3][color10][originator-as100][originator-address4::4][discriminator100]]/952

     NextHop : 0.0.0.0                                  LocPrf    :

     PrefVal : 32768                                    OutLabel  : NULL

     MED     :

     Path/Ogn: i

 

* >  Network : [SD][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0001.00]][SS100:A:B:C:0:1::]/488

     NextHop : 0.0.0.0                                  LocPrf    :

     PrefVal : 32768                                    OutLabel  : NULL

     MED     :

     Path/Ogn: i

 

* >  Network : [SD][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0002.00]][SS200:A:B:C:0:1::]/488

     NextHop : 0.0.0.0                                  LocPrf    :

     PrefVal : 32768                                    OutLabel  : NULL

     MED     :

     Path/Ogn: i

……

如果缺少节点的信息链路,则可能是PE 1上IGP配置不完整,IGP未正常将链路拓扑发布到BGP-LS。

¡     如果IGP是IS-IS,则在IS-IS视图下执行distribute bgp-ls命令将IS-IS收集的链路拓扑信息发布到BGP-LS。

¡     如果IGP是OSPFv3,则在OSPFv3视图下执行distribute bgp-ls命令将OSPFv3收集的链路拓扑信息发布到BGP-LS。

(4)     检查IGP链路的网络类型是否为P2P。

在所有PE、P设备上启动IGP进程的链路接口下执行display this命令检查是否配置了网络类型为P2P,网络类型不是P2P,则无法配合BGP-LS自动发现链路。

¡     对于IS-IS,在接口下执行isis circuit-type p2p命令将链路的网络类型修改为P2P。

¡     对于OSPFv3,在接口下执行ospfv3 network-type p2p命令将链路的网络类型修改为P2P。

[Sysname-GigabitEthernet2/0/1] disp this

#

interface GigabitEthernet2/0/1

 isis ipv6 enable 1

 isis circuit-type p2p

 isis link-delay average 10

 mpls te enable

 ipv6 address 12::1/120

#

如果IGP链路的网络类型均为P2P,故障仍存在,请继续执行以下操作。

(5)     检查IGP未发布的链路TE属性信息或者发布的属性是否正确。

在PE 1节点上执行display bgp link-state命令查看某条链路的详细信息,查看LS字段显示的链路属性信息是否完整。

[PE1] display bgp link-state [E][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0001.00]]

[R[c100][b1.1.1.1][s0000.0000.0002.00]][L[i12::1][n12::2]]/888

 

 BGP local router ID: 1.1.1.1

 Local AS number: 100

 

 Paths:   1 available, 1 best

 

 BGP LS information of [E][L2][I0x0][N[c100][b1.1.1.1][s0000.0000.0001.00]][R[c100][b1.1.1.1][s0000.0000.0002.00]][L[i12::1][n12::2]]/888:

 Imported route.

 Original nexthop: 0.0.0.0

 Out interface   : NULL0

 Route age       : 04h22m11s

 OutLabel        : NULL

 LS              : TE maximum bandwidth (kbits/sec): 0, TE maximum reservable b

                   andwidth (kbits/sec): 0, TE unreserved bandwidth (kbits/sec)

                   : 0 0 0 0 0 0 0 0, TE Metric: 10, Metric: 10 SRv6 End.X SID:

                    100:A:B:C:0:1:3:0, function Type=End.X with PSP, algorithm=

                   0, weight=0, flags(B/S/P/C)=0/0/0/0 SRv6 End.X SID: 100:A:B:

                   C:0:1:4:0, function Type=End.X (NO-FLAVOR), algorithm=0, wei

                   ght=0, flags(B/S/P/C)=0/0/0/0 SRv6 End.X SID: 100:A:B:C:0:1:

                   5:0, function Type=End.X with PSP, USP & USD, algorithm=0, w

                   eight=0, flags(B/S/P/C)=0/0/0/0 Delay flag:0, Average delay:

                   10, Link loss flag: 0, Link loss: 0.000003%

 RxPathID        : 0x0

 TxPathID        : 0x0

 Org-validation  : Valid

 AS-path         : (null)

 Origin          : igp

 Attribute value : pref-val 32768

 State           : valid, local, best

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

如果LS字段中不存在完整的链路TE属性信息,可能导致控制器收集到的拓扑链路信息不全,计算出的路径不合理。请执行以下操作保证链路TE属性发布正常:

¡     系统视图下执行mpls te命令,开启MPLS TE功能。

¡     在IGP通告的链路接口上执行mpls te enable命令,开启接口的MPLS TE能力。

¡     对于IS-IS,请在IS-IS视图下执行te attribute enable命令,保证IS-IS发布链路属性。同时在IS-IS IPv6地址族视图下执行advertise link-attributes命令router-id命令保证链路属性正确,配合BGP-LS自动发现拓扑。

¡     对于OSPFv3,请在OSPFv3视图下执行router-id命令te-router-id命令,配合BGP-LS自动发现拓扑。

如果上述配置正确,故障仍存在,请继续执行以下操作。

(6)     检查BGP-LSNLRIIPv6 TE Router ID是否唯一。

SRv6 TE Policy头节点PE 1需要将SRv6 TE Policy状态信息通过BGP-LS上报给控制器,以便控制器根据SRv6 TE Policy状态信息对转发路径进行维护更新。因此,在SRv6 TE视图下,要执行distribute bgp-ls命令。

如果IPv6 TE Router ID正常,故障仍存在,请继续执行以下操作。

(7)     检查PE、RR和控制器之间的BGP IPv6 SR Policy邻居是否正常建立。

控制器和PE是RR路由反射器的客户端。在PE和RR上执行display bgp peer ipv6 sr-policy命令查看BGP IPv6 SR Policy邻居建立的状态。State字段应该显示为Established,表示PE、RR和控制器正常建立了BGP-LS邻居。如果State字段显示不是Established,则表示邻居建立不正常,请参见“BGP故障处理”中的“BGP会话无法进入Established状态”排除故障。

[PE1] display bgp peer ipv6 sr-policy

 

 BGP local router ID: 1.1.1.1

 Local AS number: 100

 Total number of peers: 1                 Peers in established state: 1

 

 * - Dynamically created peer

 Peer                    AS  MsgRcvd  MsgSent OutQ  PrefRcv Up/Down  State

 

 4::4                   100     1596     1704    0        2 23:49:58 Established

如果邻居建立正常,或链路恢复后问题仍未解决,请继续执行以下操作。

(8)     在RR上检查BGP IPv6 SR Policy路由是否被过滤。

在RR上BGP IPv6 SR Policy视图下执行display this命令,查看客户端是否存在过滤路由条目的路由策略。保证BGP IPv6 SR Policy路由可以正常反射到PE 1上。

[RR-bgp-default-srpolicy-ipv6] disp this

#

 #

 address-family ipv6 sr-policy

  peer 2::2 enable

  peer 2::2 reflect-client

  peer 3::3 enable

  peer 3::3 reflect-client

  peer 4::4 enable

如果BGP IPv6 SR Policy路由未被过滤,并且正常反射到PE 1上,即PE 1上执行display bgp routing-table ipv6 sr-policy命令,可以查看到正常BGP IPv6 SR Policy路由条目。例如[100][10][3::3]分别表示SRv6 TE Policy的候选路径优先级为100,SRv6 TE Policy的Color为10,Endpoint为3::3,则该路由条目为有效且最佳。

[PE1] display bgp routing-table ipv6 sr-policy

 

 Total number of routes: 2

 

 BGP local router ID is 1.1.1.1

 Status codes: * - valid, > - best, d - dampened, h - history,

               s - suppressed, S - stale, i - internal, e - external

               a - additional-path

       Origin: i - IGP, e - EGP, ? - incomplete

 

* >i Network : [100][10][3::3]/192

     NextHop : 4::4                                     LocPrf    : 100

     PrefVal : 0                                        OutLabel  : NULL

     MED     : 0

     Path/Ogn: i

 

* >i Network : [200][10][3::3]/192

     NextHop : 4::4                                     LocPrf    : 100

     PrefVal : 0                                        OutLabel  : NULL

     MED     : 0

     Path/Ogn: i

如果存在路由策略过滤了BGP IPv6 SR Policy路由,则在系统视图下执行route-policy命令修改路由策略。如果BGP IPv6 SR Policy路由未被过滤,PE 1仍未能正常学习到BGP IPv6 SR Policy路由,请继续执行以下操作。

(9)     如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。

¡     上述步骤的执行结果。

¡     设备的配置文件、日志信息、告警信息。

5. 告警与日志

相关告警

相关日志

·     SRPV6/2/SRPV6_BSID_CONFLICT

·     SRPV6/2/SRPV6_BSID_CONFLICT_CLEAR

·     SRPV6/5/SRPV6_PATH_STATE_DOWN

·     SRPV6/4/SRPV6_POLICY_STATUS_CHG

·     SRPV6/4/SRPV6_RESOURCE_EXDCEED

·     SRPV6/4/SRPV6_RESOURCE_EXCEED_CLEAR

·     SRPV6/5/SRPV6_SEGLIST_STATE_DOWN

·     SRPV6/5/SRPV6_ SEGLIST_STATE_DOWN

·     SRPV6/2/SRPV6_STATE_DOWN

·     SRPV6/2/SRPV6_STATE_DOWN_CLEAR

1.1.3  基于DSCP引流到SRv6 TE Policy隧道失败

1. 故障描述

图1-4所示的骨干网络中,在头端PE 1和尾端PE 3之间已建立SRv6 TE Policy Group,SRv6 TE Policy Group基于DSCP值引流,正常情况下,DSCP为10的VPN业务流量被引入到SRv6 TE Policy隧道A中转发,DSCP为20的VPN业务流量被引入到SRv6 TE Policy隧道B中转发。

在隧道头节点PE 1上,通过QoS策略,将源地址为11.11.11.11/32,目的地址为22.22.22.22/32的VPN业务流量标记DSCP值10。将源地址为10.10.10.10/32,目的地址为20.20.20.20/32的VPN业务流量标记DSCP值20。

在PE 1上多个直连出接口抓包发现存在DSCP为10的报文,但SRv6 TE Policy隧道A的转发路径上抓包时,DSCP为10的流量未通过SRv6 TE Policy隧道A的转发。

图1-4 基于DSCP引流到SRv6 TE Policy隧道组网示意图

 

2. 常见原因

本类故障的常见原因主要包括:

·     SRv6 TE Policy Group状态为Down,无法用于转发。

·     流量没有正确迭代到SRv6 TE Policy Group中转发。

·     SRv6 TE Policy Group中配置的DSCP映射关系错误。

3. 故障诊断流程

本类故障的诊断流程如图1-5所示。

图1-5 基于DSCP引流到SRv6 TE Policy隧道失败的故障诊断流程图

 

4. 故障处理步骤

(1)     检查SRv6 TE Policy Group的状态。

在SRv6 TE Policy的头节点PE 1执行display segment-routing ipv6 te policy-group verbose命令查看SRv6 TE Policy Group的状态是否正常。正常情况下,SRv6 TE Policy Group的显示信息中GroupState字段为Up,表示该SRv6 TE Policy Group状态正常,且Group type显示为Static DSCP或Dynamic DSCP,表示该SRv6 TE Policy Group配置为基于DSCP引流。

<PE1> display segment-routing ipv6 te policy-group verbose

Total number of policy groups: 1

 

GroupID: 10                         GroupState: Up

GroupNID: 2151677953                Referenced: 1

Flags:  None                        Group type: Static DSCP

Group color: 100

StateChangeTime: 2024-04-23 16:22:03

Endpoint: 3::3

BSID:

  Explicit BSID: -                       Request state: -

Best-effort NID: 2160066561

Drop upon mismatch: Disabled

UP/Total Mappings: 3/3

IPv4 Best-effort: Configured      IPv6 Best-effort: Not configured

  Color       Type       DSCP

  10          IPv4       10

  20          IPv4       20

  Best-effort IPv4       default

如果GroupState字段为Down,请执行display segment-routing ipv6 te policy-group last-down-reason命令检查SRv6 TE Policy Group状态不正常的原因。

<PE1> display segment-routing ipv6 te policy-group last-down-reason

 

Group ID   : 1                         Group type : Static DSCP

Group color: 100                       Endpoint   : 3::3

Group NID  : 2151677953

Created at : 2024-04-23 15:31:44

Up time    : 2024-04-23 15:31:55

Down time  : 2024-04-23 15:31:44

Down reason: No endpoint

  Color: 10

    Up time    : 2024-04-23 15:31:50

    Down time  : 2024-04-23 15:31:44

    Down reason: SRv6-TE policy down

  Color: 20

    Up time    : 2024-04-23 15:31:55

    Down time  : 2024-04-23 15:31:44

    Down reason: SRv6-TE policy down

根据显示字段Down reason的取值,判断引起SRv6 TE Policy Group状态不正常的原因:

¡     如果Down reason显示为No endpoint,表示SRv6 TE Policy Group没有配置目的节点地址,请在SRv6 TE Policy组视图下执行end-point ipv6命令,为SRv6 TE Policy Group指定目的节点为PE 3的Loopback口地址。ODN动态创建的SRv6 TE Policy Group无需手动配置SRv6 TE Policy Group的目的节点地址。

¡     如果Down reason显示为No color-DSCP mappings,表示没有配置Color和DSCP映射关系。对于静态创建的SRv6 TE Policy Group,请在SRv6 TE Policy组视图下执行color match dscp命令合理配置ColorDSCP映射关系。对于ODN动态创建的SRv6 TE Policy Group,请在DSCP转发类型视图下执行color match dscp命令合理配置ColorDSCP映射关系。

¡     如果Down reason显示为No active SRv6-TE policies,表示SRv6 TE Policy Group中不存在有效的SRv6 TE Policy。请根据“SRv6 TE Policy无法生效的定位思路”或者“控制器建立SRv6 TE Policy隧道失败”故障处理方式排查SRv6 TE Policy的问题。

¡     如果Down reason显示为Forwarding down,表示没有转发表项。可能是由于设备转发资源不足造成SRv6 TE Policy Group无法正常生效。请按照步骤(4)处理。

如果SRv6 TE Policy Group状态恢复正常,抓包发现基于DSCP引流到SRv6 TE Policy仍存在问题,请继续执行以下步骤排查故障。

(2)     检查VPN业务流量迭代情况。

在SRv6 TE Policy的头节点PE 1执行display bgp routing-table ipv4 vpn-instance命令查看PE 3发布的VPN路由22.22.22.22/32的详细信息,正常情况下,VPN路由的迭代的隧道ID信息Rely tunnel IDs等于2151677953,即与display segment-routing ipv6 te policy-group verbose命令中SRv6 TE Policy Group的GroupNID相同。

<PE1> display bgp routing-table ipv4 vpn-instance vpn1 22.22.22.22

 

 BGP local router ID: 1.1.1.1

 Local AS number: 100

 

 Paths:   1 available, 1 best

 

 BGP routing table information of 22.22.22.22/32:

 From            : 3::3 (3.3.3.3)

 Rely nexthop    : FE80::A2C3:E2FF:FEB5:306

 Original nexthop: 3::3

 Out interface   : GigabitEthernet2/0/2

 Route age       : 00h17m14s

 OutLabel        : 3

 Ext-Community   : <RT: 100:1>, <CO-Flag:Color(00:100)>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.DT4 SID <300:1::1:2>

  SRv6 Service TLV (37 bytes):

   Type: SRV6 L3 Service TLV (5)

   Length: 34 bytes, Reserved: 0x0

   SRv6 Service Information Sub-TLV (33 bytes):

    Type: 1 Length: 30, Rsvdl: 0x0

    SID Flags: 0x0  Endpoint behavior: 0x13 Rsvd2: 0x0

    SRv6 SID Sub-Sub-TLV:

     Type: 1 Len: 6

     BL: 64 NL: 0 FL: 64 AL: 0 TL: 0 TO: 0

 AS-path         : 300

 Origin          : incomplete

 Attribute value : MED 0, localpref 100, pref-val 0

 State           : valid, internal, best, remoteredist

 Source type     : evpn remote-import

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : a

 Rely tunnel IDs : 2151677953

如果Rely tunnel IDs显示为空或者Rely tunnel IDs与SRv6 TE Policy Group的GroupNID不同,则表示业务迭代隧道不正确。请在PE 1上执行display current-configuration | begin bgp检查BGP的VPN业务路由迭代配置是否包括segment-routing ipv6 traffic-engineering命令,如果PE之间通过EVPN传递VPN私网路由,segment-routing ipv6 traffic-engineering命令和segment-routing ipv6 locator命令还需要指定evpn参数。

#

 ip vpn-instance vpna

  peer 10.1.1.2 as-number 65410

  #

  address-family ipv4 unicast

   segment-routing ipv6 traffic-engineering best-effort

   segment-routing ipv6 locator aaa

   peer 10.1.1.2 enable

如果上述路由迭代配置正常,则进一步检查路由迭代到SRv6 TE Policy Group的配置是否正常。本例中业务路由迭代到SRv6 TE Policy Group通过Color匹配方式进行。

当BGP路由中通过路由策略携带的扩展团体属性Color与SRv6 TE Policy Group的Color属性一致时,BGP路由的下一跳与SRv6 TE Policy Group的Endpoint相同,路由可以迭代到SRv6 TE Policy Group。如果采用本方式实现路由迭代,请在PE 1执行display bgp routing-table ipv4 vpn-instance命令查看PE 3发布的VPN路由22.22.22.22/32的详细信息,检查BGP路由的Ext-Community字段中包括Color扩展团体属性00:100,其中Color值为100,应该与SRv6 TE Policy Group的Color属性一致。

<PE1> display bgp routing-table ipv4 vpn-instance vpn1 22.22.22.22

 

 BGP local router ID: 1.1.1.1

 Local AS number: 100

 

 Paths:   1 available, 1 best

 

 BGP routing table information of 22.22.22.22/32:

 From            : 3::3 (3.3.3.3)

 Rely nexthop    : FE80::A2C3:E2FF:FEB5:306

 Original nexthop: 3::3

 Out interface   : GigabitEthernet2/0/2

 Route age       : 00h17m14s

 OutLabel        : 3

 Ext-Community   : <RT: 100:1>, <CO-Flag:Color(00:100)>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.DT4 SID <300:1::1:2>

  SRv6 Service TLV (37 bytes):

   Type: SRV6 L3 Service TLV (5)

   Length: 34 bytes, Reserved: 0x0

   SRv6 Service Information Sub-TLV (33 bytes):

    Type: 1 Length: 30, Rsvdl: 0x0

    SID Flags: 0x0  Endpoint behavior: 0x13 Rsvd2: 0x0

    SRv6 SID Sub-Sub-TLV:

     Type: 1 Len: 6

     BL: 64 NL: 0 FL: 64 AL: 0 TL: 0 TO: 0

 AS-path         : 300

 Origin          : incomplete

 Attribute value : MED 0, localpref 100, pref-val 0

 State           : valid, internal, best, remoteredist

 Source type     : evpn remote-import

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : a

 Rely tunnel IDs : 2151677953

如果BGP路由中携带的扩展团体属性Color与SRv6 TE Policy Group的Color属性不一致或者BGP路由未携带扩展团体属性Color,则执行route-policy命令在路由策略视图下执行apply extcommunity color命令,配置或修改扩展团体属性Color。再将路由策略应用到PE之间。

#

bgp 100

 #

 address-family vpnv4

  peer 3::3 enable

  peer 3::3 route-policy a export

  peer 3::3 prefix-sid

 #

#

route-policy a permit node 10

 apply extcommunity color 00:100 additive

#

如果VPN业务流量迭代正常,问题仍然存在,请继续执行以下步骤。

(3)     检查SRv6 TE Policy Group中配置的DSCP和Color映射关系。

在SRv6 TE Policy的头节点PE 1执行display segment-routing ipv6 te policy-group verbose命令查看SRv6 TE Policy Group中引流配置的DSCP和Color映射关系是否正确。

<PE1> display segment-routing ipv6 te policy-group verbose

Total number of policy groups: 1

 

GroupID: 10                         GroupState: Up

GroupNID: 2151677953                Referenced: 1

Flags:  None                        Group type: Static DSCP

Group color: 100

StateChangeTime: 2024-04-23 16:22:03

Endpoint: 3::3

BSID:

  Explicit BSID: -                       Request state: -

Best-effort NID: 2160066561

Drop upon mismatch: Disabled

UP/Total Mappings: 3/3

IPv4 Best-effort: Configured      IPv6 Best-effort: Not configured

  Color       Type       DSCP

  10          IPv4       10

  20          IPv4       20

  Best-effort IPv4       default

上述显示字段表示对于IPv4地址族的私网VPN流量,携带DSCP 10的报文通过Color 10标识的SRv6 TE Policy转发,携带DSCP 20的报文通过Color 20标识的SRv6 TE Policy转发。

如果上述映射关系不正确,对于静态创建的SRv6 TE Policy Group,请在SRv6 TE Policy组视图下执行color match dscp命令修改Color和DSCP映射关系。对于ODN动态创建的SRv6 TE Policy Group,请在DSCP转发类型视图下执行color match dscp命令修改Color和DSCP映射关系。

如果SRv6 TE Policy Group中配置的DSCP和Color映射关系正确,抓包发现基于DSCP引流到SRv6 TE Policy仍存在问题,请继续执行以下步骤排查故障。

(4)     如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。

¡     上述步骤的执行结果。

¡     设备的配置文件、日志信息、告警信息。

5. 告警与日志

相关告警

相关日志

·     SRPV6/2/SRPV6_BSID_CONFLICT

·     SRPV6/2/SRPV6_BSID_CONFLICT_CLEAR

·     SRPV6/5/SRPV6_PATH_STATE_DOWN

·     SRPV6/4/SRPV6_POLICY_STATUS_CHG

·     SRPV6/4/SRPV6_RESOURCE_EXDCEED

·     SRPV6/4/SRPV6_RESOURCE_EXCEED_CLEAR

·     SRPV6/5/SRPV6_SEGLIST_STATE_DOWN

·     SRPV6/5/SRPV6_ SEGLIST_STATE_DOWN

·     SRPV6/2/SRPV6_STATE_DOWN

·     SRPV6/2/SRPV6_STATE_DOWN_CLEAR

1.1.4  SRv6 TE Policy故障无法切换到SRv6 BE逃生

1. 故障描述

在如图1-6所示的SRv6骨干网络中,VPN流量通过PE 1和PE 3之间的SRv6 TE Policy正常转发,当SRv6 TE Policy故障后,期望流量通过SRv6 BE方式逃生。实测当SRv6 TE Policy故障后,流量没有切换到SRv6 BE方式转发,导致业务中断和丢包。

在PE 1上执行display ip routing-table vpn-instance命令检查到VPN私网路由2.2.2.2/32没有正常学习到对应的VPN路由表中。

[PE1] display ip routing-table vpn-instance vpna

 

Destinations : 6        Routes : 6

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

1.1.1.1/32         BGP     255 0           10.1.1.2        GE2/0/1

10.1.1.0/24        Direct  0   0           10.1.1.1        GE2/0/1

10.1.1.1/32        Direct  0   0           127.0.0.1       GE2/0/1

10.1.1.255/32      Direct  0   0           10.1.1.1        GE2/0/1

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

图1-6 SRv6 TE Policy故障无法切换到SRv6 BE逃生组网示意图

 

2. 常见原因

本类故障的常见原因主要包括:

·     配置的BGP路由迭代方式不正确。

3. 故障诊断流程

本类故障的诊断流程如图1-7所示。

图1-7 SRv6 TE Policy故障无法切换到SRv6 BE逃生的故障诊断流程图

·      

4. 故障处理步骤

(1)     检查PE 1PE 3之间传递的BGP VPNv4或BGP EVPN路由是否正常。

在PE 1上执行display bgp routing-table vpnv4命令或display bgp l2vpn evpn命令查看私网路由是否有效且最佳。以BGP VPNv4路由为例,显示信息中VPN路由2.2.2.2/32不存在“*”和“>”标记,“*”标记表示该路由有效,“>”标记表示该路由最佳。因此,VPN路由2.2.2.2/32不是最佳且有效的。

[PE1] display bgp routing-table vpnv4

 

 BGP local router ID is 1.1.1.1

 Status codes: * - valid, > - best, d - dampened, h - history,

               s - suppressed, S - stale, i - internal, e - external

               a - additional-path

       Origin: i - IGP, e - EGP, ? - incomplete

 

 Total number of VPN routes: 4

 Total number of routes from all PEs: 2

 

 Route distinguisher: 100:1(vpna)

 Total number of routes: 4

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >e 1.1.1.1/32         10.1.1.2        0                     0       65410i

   i 2.2.2.2/32         4::4            0          100        0       65420i

* >e 10.1.1.0/24        10.1.1.2        0                     0       65410?

   i 10.2.1.0/24        4::4            0          100        0       65420?

由于该VPN路由SRv6 TE Policy故障后没有迭代到SRv6 BE转发导致。请在BGP-VPN IPv4视图下执行display this命令查看VPN路由迭代配置,正常情况下路由迭代配置如下:

[PE1-bgp-default-vpna] disp this

#

 #

 ip vpn-instance vpna

  peer 10.1.1.2 as-number 65410

  #

  address-family ipv4 unicast

   segment-routing ipv6 traffic-engineering best-effort

   segment-routing ipv6 locator aaa

   peer 10.1.1.2 enable

#

命令segment-routing ipv6 traffic-engineering best-effort表示优先迭代到SRv6 TE Policy中转发,如果SRv6 TE Policy故障则流量使用SRv6 BE方式逃生。

如果配置正确,问题仍然存在,请继续执行下一步。

(2)     如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。

¡     上述步骤的执行结果。

¡     设备的配置文件、日志信息、告警信息。

5. 告警与日志

相关告警

相关日志

·     无

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们