04-SRv6 TE Policy故障处理
本章节下载: 04-SRv6 TE Policy故障处理 (393.21 KB)
执行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.
本类故障的常见原因主要包括:
· SRv6 TE Policy状态为Shutdown。
· SRv6 TE Policy的BSID配置错误或者冲突。
· SRv6 TE Policy下配置缺失。
· SRv6 TE Policy的资源超限。
· Segment List中SID数量超限。
· SRv6 TE Policy的SID列表与报文转发路径的规划不同。
· SRv6 TE Policy报文转发路径上的物理链路故障。
本类故障的诊断流程如图1-1所示。
图1-1 SRv6 TE Policy无法生效的故障诊断流程图
(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) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
· 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-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隧道的典型组网架构示意图
本类故障的常见原因主要分为两个方面,包括:
· 控制器Controller未能通过BGP-LS正常收集链路拓扑和TE属性等信息,导致无法计算出SRv6 TE Policy。BGP-LS收集信息异常的可能原因可能如下。
¡ PE与控制器的BGP-LS邻居未正常建立;
¡ IGP未正常将链路拓扑信息发布到BGP-LS,IGP链路的网络类型不是P2P,无法配合BGP-LS自动发现链路;
¡ IGP未发布的链路TE属性信息或者发布的属性不正确;
¡ BGP-LS的NLRI中的IPv6 TE Router ID不唯一;
· 控制器Controller下发的BGP IPv6 SR Policy路由未能正常反射到PE 1上。可能原因如下。
¡ BGP IPv6 SR Policy邻居未正常建立;
¡ BGP IPv6 SR Policy路由被过滤了;
本类故障的诊断流程如图1-1所示。
图1-3 控制器建立SRv6 TE Policy隧道失败的故障诊断流程图
(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-LS的NLRI中IPv6 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) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
· 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-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隧道组网示意图
本类故障的常见原因主要包括:
· SRv6 TE Policy Group状态为Down,无法用于转发。
· 流量没有正确迭代到SRv6 TE Policy Group中转发。
· SRv6 TE Policy Group中配置的DSCP映射关系错误。
本类故障的诊断流程如图1-5所示。
图1-5 基于DSCP引流到SRv6 TE Policy隧道失败的故障诊断流程图
(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命令合理配置Color和DSCP映射关系。对于ODN动态创建的SRv6 TE Policy Group,请在DSCP转发类型视图下执行color match dscp命令合理配置Color和DSCP映射关系。
¡ 如果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) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
· 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-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逃生组网示意图
本类故障的常见原因主要包括:
· 配置的BGP路由迭代方式不正确。
本类故障的诊断流程如图1-7所示。
图1-7 SRv6 TE Policy故障无法切换到SRv6 BE逃生的故障诊断流程图
·
(1) 检查PE 1和PE 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) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
· 无
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!