05-SRv6 OAM命令
本章节下载: 05-SRv6 OAM命令 (281.76 KB)
目 录
ping ipv6-sid命令用来检测SRv6转发路径的连通性。
【命令】
ping ipv6-sid [ -a source-ipv6 | -c count | -m interval | -q | -s packet-size | -t timeout | -tc traffic-class | -v ] * [ segment-by-segment ] { sid | coc32 sid common-prefix-length }&<1-n> [ network-slice slice-id [ slice-prefix ipv6-address ] [ force-match-slice ] ] [ path-segment ipv6-address ]
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
-a source-ipv6:指定ICMPv6回显请求报文中的源IPv6地址。该地址必须是设备上已配置的合法IPv6地址。未指定本参数时,如果配置了encapsulation source-address命令,则ICMPv6回显请求报文的源IPv6地址为encapsulation source-address命令配置的源地址;否则,ICMPv6回显请求报文的源IPv6地址为该报文出接口的地址。
-c count:指定发送的ICMPv6回显请求报文的数目,取值范围为1~4294967295,缺省值为5。
-m interval:指定发送ICMPv6回显请求报文的时间间隔,取值范围为1~65535,单位为毫秒,缺省值为1000。
-q:只显示统计信息。如果未指定该参数,则系统将显示包括统计信息在内的全部信息。
-s packet-size:指定发送的ICMPv6回显请求报文的长度(不包括IPv6和ICMPv6报文头),取值范围为20~9600,单位为字节,缺省值为56。
-t timeout:指定ICMPv6回显应答报文的超时时间,取值范围为0~65535,单位为毫秒,缺省值为2000。
-tc traffic-class:指定ICMPv6报文中的Traffic Class域的值,取值范围为0~255,缺省值为0。
-v:显示ICMPv6回显应答报文的详细信息。如果未指定该参数,则显示ICMPv6回显应答报文的简要信息。
segment-by-segment:采用逐段方式检测SRv6转发路径的连通性。如果未指定本参数,则采用非逐段检测方式检测SRv6转发路径的连通性。
{ sid | coc32 sid common-prefix-length }&<1-n>:指定SRv6 SID列表。&<1-n>表示前面的参数最多可以输入n次。n的取值为11。如果采用逐段检测方式,则不能通过本参数指定End.OP SID。如果采用非逐段检测方式,则必须通过本参数指定End.OP SID。其中,
· sid:指定普通的SRv6 SID。
· coc32 sid common-prefix-length:指定G-SID。sid为G-SID值,common-prefix-length为下一个G-SID的公共前缀长度。
network-slice slice-id:指定网络切片实例ID,取值范围为0~4294967295。指定本参数后,将为ICMPv6回显请求报文封装IPv6逐跳扩展头(Hop-by-Hop Extension Header),并且在IPv6逐跳扩展头中添加网络切片实例ID信息。如果不指定本参数,则ICMPv6回显请求报文不封装带网络切片实例ID的IPv6逐跳扩展头。
slice-prefix ipv6-address:指定源地址切片方式网络切片报文的IPv6源地址前缀。指定本参数后,将ICMPv6回显请求报文中的源地址最高位修改为本命令指定的IPv6源地址前缀,源地址的最低32位修改为本命令指定的网络切片实例ID。如果IPv6源地址前缀和网络切片实例ID的总长度小于128位,则在IPv6源地址前缀后,填充0来补齐。如果未指定本参数,则按照HBH切片方式封装ICMPv6报文。
force-match-slice:强制匹配网络切片实例ID。指定本参数后,本命令指定的网络切片实例ID必须与报文出接口网络切片通道的网络切片实例ID相同,设备才能发送ICMPv6回显请求报文,否则设备直接丢弃ICMPv6回显请求报文,导致ping不通。如果未指定本参数,则不校验ICMPv6回显请求报文的网络切片实例ID,设备正常发送ICMPv6回显请求报文。
path-segment ipv6-address:表示使用Path Segment(即End.PSID)对应的SID列表作为ICMPv6报文的回程路径。其中ipv6-address表示取值为IPv6地址的End.PSID。
【使用指导】
进行非逐段检测必须满足以下条件:
· 目的节点必须支持End.OP SID,且已经配置End.OP SID。
· 通过参数指定SRv6 SID列表时,End.OP SID必须在目的SRv6 SID之前。
例如,转发路径为A—>B—>C,其中源节点为A,中间节点为B,目的节点为C。中间节点B的SRv6 SID为1010::1:0:1b,目的节点C的End.OP SID为1020::32,目的节点C的SRv6 SID为1020::1:0:3。在源节点A通过非逐段方式检测到达目的节点C的连通性,则需要执行命令ping ipv6-sid 1010::1:0:1b 1020::32 1020::1:0:3。
如果源节点到目的节点之间存在多条SRv6转发路径,可以指定某条路径上多个节点的SRv6 SID,以达到只检测该SRv6转发路径连通性的目的。
Path Segment是一种SID列表的BSID,用于将流量引入到SID列表所代表的转发路径上。当指定path-segment参数时,ICMPv6报文将封装IPv6报文头和SRH扩展报文头,在SRH扩展头中Flags字段中的第五位P-flag置位,表示该SRH扩展报文头中将携带Path Segment,且Path Segment封装在SID列表中首个SID之前。ICMPv6报文抵达目的节点时,如果该节点上SRv6 TE Policy中某个SID列表通过explicit segment-list命令指定了reverse-path-segment参数,且指定的反向Path Segment和本命令指定的Path Segment相同,则目的节点根据SRv6 TE Policy的反向Path Segment所关联的SID列表封装回程的ICMPv6报文,使得ICMPv6报文按照SRv6 TE Policy的转发路径返回源节点。
同时指定-a和slice-prefix参数时,ICMPv6回显请求报文中的源IPv6地址以指定slice-prefix参数的配置为准。
指定slice-prefix参数时,配置的网络切片实例ID的最大值不能超过2147483647。
在执行命令过程中,键入<Ctrl+C>可终止ping ipv6-sid操作。
【举例】
# 采用非逐段方式检测SRv6转发路径的连通性,中间节点的SRv6 SID为1010::1:0:1b,目的节点的End.OP SID为1020::32,目的节点的SRv6 SID为1020::1:0:3。
<sysname> ping ipv6-sid 1010::1:0:1b 1020::32 1020::1:0:3
Ping SRv6(56 data bytes) 1::1 --> 1010::1:0:1b 1020::32 1020::1:0:3, press CTRL_C to break
56 bytes from 1020::1:0:3, icmp_seq=0 ttl=64 time=62.000 ms
56 bytes from 1020::1:0:3, icmp_seq=1 ttl=64 time=23.000 ms
56 bytes from 1020::1:0:3, icmp_seq=2 ttl=64 time=20.000 ms
56 bytes from 1020::1:0:3, icmp_seq=3 ttl=64 time=4.000 ms
56 bytes from 1020::1:0:3, icmp_seq=4 ttl=64 time=16.000 ms
--- Ping6 SRv6 statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 4.000/25.000/62.000/20.000 ms
# 采用逐段方式检测SRv6转发路径的连通性,需要经过的节点的SRv6 SID为1010::1:0:1b和1020::1:0:3。
<sysname> ping ipv6-sid segment-by-segment 1010::1:0:1b 1020::1:0:3
Ping SRv6(56 data bytes) 1::1 --> 1010::1:0:1b 1020::1:0:3, press CTRL_C to break
56 bytes from 1010::1:0:1b, icmp_seq=0 ttl=64 time=36.000 ms
56 bytes from 1020::1:0:3, icmp_seq=0 ttl=63 time=62.000 ms
56 bytes from 1010::1:0:1b, icmp_seq=1 ttl=64 time=23.000 ms
56 bytes from 1020::1:0:3, icmp_seq=1 ttl=63 time=43.000 ms
56 bytes from 1010::1:0:1b, icmp_seq=2 ttl=64 time=10.000 ms
56 bytes from 1020::1:0:3, icmp_seq=2 ttl=63 time=20.000 ms
56 bytes from 1010::1:0:1b, icmp_seq=3 ttl=64 time=4.000 ms
56 bytes from 1020::1:0:3, icmp_seq=3 ttl=63 time=12.000 ms
56 bytes from 1010::1:0:1b, icmp_seq=4 ttl=64 time=7.000 ms
56 bytes from 1020::1:0:3, icmp_seq=4 ttl=63 time=16.000 ms
--- Ping6 SRv6 statistics ---
5 packet(s) transmitted, 10 packet(s) received
round-trip min/avg/max/std-dev = 4.000/23.000/62.000/20.000 ms
# 检查SRv6 SID为1020::1:0:3的设备是否可达,只显示统计信息。
<Sysname> ping ipv6-sid –q 1010::1:0:1b 1020::32 1020::1:0:3
Ping SRv6 (56 data bytes) 1::1 --> 1010::1:0:1b 1020::32 1020::1:0:3, press CTRL_C to break
--- Ping6 SRv6 statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 4.000/25.000/62.000/20.000 ms
# 检查SRv6 SID为1020::1:0:3的设备是否可达,并显示详细的检测信息。
<Sysname> ping ipv6-sid –v 1010::1:0:1b 1020::32 1020::1:0:3
Ping SRv6(56 data bytes) 1::1 --> 1010::1:0:1b 1020::32 1020::1:0:3, press CTRL_C to break
56 bytes from 1020::1:0:3, icmp_seq=0 ttl=64 dst=1010::1:0:1a idx=129 time=62.000 ms
56 bytes from 1020::1:0:3, icmp_seq=1 ttl=64 dst=1010::1:0:1a idx=129 time=23.000 ms
56 bytes from 1020::1:0:3, icmp_seq=2 ttl=64 dst=1010::1:0:1a idx=129 time=20.000 ms
56 bytes from 1020::1:0:3, icmp_seq=3 ttl=64 dst=1010::1:0:1a idx=129 time=4.000 ms
56 bytes from 1020::1:0:3, icmp_seq=4 ttl=64 dst=1010::1:0:1a idx=129 time=16.000 ms
--- Ping6 SRv6 statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 4.000/25.000/62.000/20.000 ms
表1-1 ping ipv6-sid命令显示信息描述表
字段 |
描述 |
Ping SRv6 1::1 --> 1010::1:0:1b 1020::32 1020::1:0:3, 56 data bytes, press CTRL_C to break |
经过SID为1010::1:0:1b的SRv6节点,向End.OP SID为1020::32的目的节点1020::1:0:3发送一个ICMPv6回显请求报文,每个ICMPv6回显请求报文中的数据为56字节,按组合键Ctrl+C可以终止SRv6 SID Ping操作 |
56 bytes from 1020::1:0:3, icmp_seq=1 ttl=64 dst=12::1 idx=129 time=62.000 ms |
收到SID节点1020::1:0:3的设备回复的ICMPv6响应报文,其中: · 数据字节数为56 · 目的节点为1020::1:0:3 · 报文序号为1 · hop limit值为64 · 响应报文的目的地址为12::1(使用-v参数时才显示该字段) · 报文入接口的索引为129(使用-v参数时才显示该字段) · 响应时间为62ms |
--- Ping6 SRv6 statistics --- |
Ping SRv6操作中收发数据的统计结果 |
5 packet(s) transmitted |
发送的ICMPv6回显请求报文数 |
5 packet(s) received |
收到的ICMPv6响应报文数 |
0.0% packet loss |
未响应请求报文占发送的总请求报文的百分比 |
round-trip min/avg/max/ std-dev =4.000/25.000/62.000/20.000 ms |
响应时间的最小值、平均值、最大值和标准方差,单位为毫秒 |
【相关命令】
· encapsulation source-address(Segment Routing命令参考/SRv6 VPN)
· opcode(Segment Routing命令参考/SRv6)
ping srv6-te policy命令用来检测SRv6 TE Policy的连通性及SRv6 TE Policy能否保证正常的转发。
【命令】
ping srv6-te policy { policy-name policy-name | color color-value end-point ipv6 ipv6-address | binding-sid ipv6-address } [ force-match-slice ] [ end-op end-op | endpoint ] [ -a source-ipv6 | -c count | -h hop-limit | -m interval | -s packet-size | -t timeout | -tc traffic-class ] *
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
policy-name policy-name:SRv6 TE Policy名称,为1~59个字符的字符串,区分大小写。
color color-value end-point ipv6 ipv6-address:指定Color属性和目的节点的SRv6 TE Policy。color-value取值范围为0~4294967295。ipv6-address表示目的节点的IPv6地址。
binding-sid ipv6-address:指定BSID的SRv6 TE Policy。其中,ipv6-address表示IPv6地址作为BSID。
force-match-slice:强制匹配网络切片实例ID。指定本参数后,命令中指定的SRv6 TE Policy候选路径引用的网络切片实例ID必须与报文出接口网络切片通道的网络切片实例ID相同,设备才能发送ICMPv6回显请求报文,否则设备直接丢弃ICMPv6回显请求报文,导致ping不通。如果未指定本参数,则不校验ICMPv6回显请求报文的网络切片实例ID,设备正常发送ICMPv6回显请求报文。
end-op end-op:将End.OP SID添加到ICMPv6回显请求报文的SID列表中,并将SRH的SL加1。end-op为End.OP SID值。通过End.OP SID定位目的节点。如果未指定本参数,则不为ICMPv6回显请求报文添加End.OP SID。
endpoint:将SRv6 TE Policy的目的节点地址添加到ICMPv6回显请求报文的SID列表中,并将SRH中的SL加1。如果未指定本参数,则不为ICMPv6回显请求报文添加SRv6 TE Policy的目的节点地址。
-a source-ipv6:指定ICMPv6回显请求报文中的源IPv6地址。该地址必须是设备上已配置的合法IPv6地址。未指定本参数时,如果配置了encapsulation source-address命令,则ICMPv6回显请求报文的源IPv6地址为encapsulation source-address命令配置的源地址;否则,ICMPv6回显请求报文的源IPv6地址为该报文出接口的地址。
-c count:指定发送的ICMPv6回显请求报文的数目,取值范围为1~4294967295,缺省值为5。
-h hop-limit:IPv6 ICMP回显请求报文中的HopLimit域的值,取值范围为1~255,缺省值为255。
-m interval:指定发送ICMPv6回显请求报文的时间间隔,取值范围为1~65535,单位为毫秒,缺省值为1000。
-s packet-size:指定发送的ICMPv6回显请求报文的长度(不包括IPv6和ICMPv6报文头),取值范围为20~9600,单位为字节,缺省值为56。
-t timeout:指定ICMPv6回显应答报文的超时时间,取值范围为0~65535,单位为毫秒,缺省值为2000。
-tc traffic-class:指定ICMPv6报文中的Traffic Class域的值,取值范围为0~255,缺省值为0。
【使用指导】
当被检测的SRv6 TE Policy中的SID列表中仅存在一个本地End.X SID时,如果希望本功能检测正常,请先在SRv6 TE Policy视图下执行encapsulation-mode encaps include local-end.x命令,或者在SRv6 TE视图下执行srv6-policy encapsulation-mode encaps include local-end.x命令。
如果指定的SRv6 TE Policy中最优候选路径的SID列表指定了本地Path Segment,即explicit segment-list命令指定了local-path-segment参数。ICMPv6报文将封装IPv6报文头和SRH扩展报文头,在SRH扩展头中Flags字段的第五位P-flag置位,表示该SRH扩展报文头中将携带Path Segment,且Path Segment封装在SID列表中首个SID之前。ICMPv6报文抵达目的节点时,如果该节点上SRv6 TE Policy中某个SID列表通过explicit segment-list命令指定了reverse-path-segment参数,且指定的反向Path Segment和本命令指定的Path Segment相同,则目的节点将根据SRv6 TE Policy的反向Path Segment所关联的SID列表封装回程的ICMPv6报文,使得ICMPv6报文按照SRv6 TE Policy的转发路径返回源节点。
当本命令检测的SRv6 TE Policy的SID列表由16bit压缩的SID组成时,如果SID列表中最后一个SID指定了COC附加行为或COC&NEXT附加行为,由于End.OP SID和Endpoint不支持16bit压缩,因此,本命令不能再指定end-op或endpoint参数,否则Ping检测不通。
当本命令检测的SRv6 TE Policy的SID列表由16bit压缩的SID组成,且SID列表中仅有一个SID时,通过插入封装的简化模式(Insert.Red方式)封装SRH,本命令需要指定end-op或endpoint参数,否则Ping检测不通。
【举例】
# 对名称为p1的SRv6 TE Policy发起ping。
<Sysname> ping srv6-te policy policy-name p1 end-op 8000::2
Ping SRv6-TE policy (56 data bytes) 8000::2, press CTRL_C to break
Segment list ID: 0
Preference=10, Path Type=Main, Protocol-Origin=local, Originator=0,0.0.0.0, Discriminator=10, End.OP=8000::2, Src address=1::1
56 bytes from 8000::2, icmp_seq=0 ttl=64 time=2.000 ms
56 bytes from 8000::2, icmp_seq=1 ttl=64 time=1.000 ms
56 bytes from 8000::2, icmp_seq=2 ttl=64 time=1.000 ms
56 bytes from 8000::2, icmp_seq=3 ttl=64 time=1.000 ms
56 bytes from 8000::2, icmp_seq=4 ttl=64 time=1.000 ms
--- Ping6 SRv6-TE Policy statistics ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 1.000/1.200/2.000/0.400 ms
表1-2 ping srv6-te policy命令显示信息描述表
字段 |
描述 |
Ping SRv6-TE policy (56 data bytes) 8000::2, press CTRL_C to break |
向SRv6 TE Policy中End.OP SID为8000::2的目的节点发送ICMPv6回显请求报文,每个ICMPv6回显请求报文的数据为56字节,按组合键Ctrl+C可以终止Ping操作 |
Segment list ID |
SID列表的ID |
Preference |
候选路径优先级 |
Path Type |
路径类型,取值为: · Main:主路径 · Backup:备路径 · Secondary backup:热备份时的第二条备份路径 · None:未选中该路径 |
Protocol-Origin |
协议来源: · PCEP:通过PCEP协议获取(暂不支持) · BGP:通过BGP协议获取 · Local:本地配置 · Unknown:来源未知 |
Originator=ASN Node-address |
从BGP获取到的SRv6 TE Policy,其中: · ASN:自制系统号。0表示未从BGP获取到SRv6 TE Policy · Node-address:BGP节点地址。手工配置SRv6 TE Policy时,Node address为0.0.0.0;从BGP对等体获取SRv6 TE Policy信息时,Node address为BGP对等体的Router ID |
Discriminator |
表示候选路径的标识符,通过Protocol-origin、Originator以及Discriminator可以唯一标识一条候选路径 |
End.OP |
End.OP SID |
Src address |
ICMPv6报文的源地址 |
56 bytes from 8000::2, icmp_seq=0 ttl=64 time=2.000 ms |
SID为8000::2的节点回复的ICMPv6响应报文,其中: · 数据字节数为56 · 目的节点为8000::2 · 报文序号为0 · hop limit值为64 · 响应时间为2.000ms |
Ping6 SRv6-TE Policy statistics |
Ping SRv6操作中收发数据的统计结果 |
5 packet(s) transmitted |
发送的ICMPv6回显请求报文数 |
5 packet(s) received |
收到的ICMPv6响应报文数 |
0.0% packet loss |
未响应请求报文占发送的总请求报文的百分比 |
round-trip min/avg/max/std-dev = 1.000/1.200/2.000/0.400 ms |
响应时间的最小值、平均值、最大值和标准方差,单位为毫秒 |
remote end-op命令用来配置远端End.OP SID所属的Locator段。
undo remote end-op命令用来删除远端End.OP SID所属的Locator段。
【命令】
remote end-op ipv6-address prefix-length
undo remote end-op ipv6-address prefix-length
【缺省情况】
未配置远端End.OP SID的范围。
【视图】
SRv6视图
【缺省用户角色】
network-admin
【参数】
ipv6-address:IPv6地址。
prefix-length:前缀长度,取值范围为1~128。
【使用指导】
End.OP SID是一个OAM类型的SRv6 SID,用于SRv6 SID和SRv6 TE Policy的Ping/Tracert场景:
· 在进行非逐段检测SRv6 SID Ping和非Overlay方式的SRv6 SID Tracert时,End.OP SID通常不作为最后一跳,如果设备收到的报文的目的地址为End.OP SID,则对下一个SRv6 SID进行检查。如果是尾节点的本地SRv6 SID,则回复应答报文;否则丢弃该报文。
· 在进行逐段检测SRv6 SID Ping、Overlay方式的SRv6 SID Tracert或者SRv6 TE Policy的Ping/Tracert时,End.OP SID通常作为最后一跳,即如果指定End.OP SID,则SID列表中该End.OP SID之后应保证不再携带其他尾节点上的本地SID,否则该End.OP SID之后的其他SID可能无法应答。
在执行ping srv6-te policy或tracert srv6-te policy命令时,如果不同SID列表的最后一个SID属于不同Locator,那么通过指定End.OP SID的方式将无法让所有SID列表都能连通,此时可以在源节点通过本命令配置远端End.OP SID所属的Locator段,执行ping和tracert的时候可以根据SID列表的最后一个SID按照最长匹配原则,自动在Locator段内选取End.OP SID,以保证所有SID列表的连通性。
【举例】
# 配置远端End.OP SID为100::1/128。
<Sysname> system-view
[Sysname] segment-routing ipv6
[Sysname-segment-routing-ipv6] remote end-op 100::1 128
【相关命令】
· ping srv6-te policy
· tracert srv6-te policy
tracert ipv6-sid命令用来查看包含指定SRv6 SID列表的IPv6报文从源节点到目的节点所经过的路径。
【命令】
tracert ipv6-sid [ -a source-ipv6 | -f first-hop | -i interface-type interface-number | -m max-hops | -p port | -q packet-number | -s packet-size | -t traffic-class | -w timeout ] * [ overlay ] { sid | coc32 sid common-prefix-length }&<1-n> [ network-slice slice-id [ slice-prefix ipv6-address ] [ force-match-slice ] ]
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
-a source-ipv6:指定IPv6 tracert报文的源IPv6地址。该地址必须是设备上已配置的合法IPv6地址。未指定本参数时,如果配置了encapsulation source-address命令,则IPv6 tracert报文的源IPv6地址为encapsulation source-address命令配置的源地址;否则,IPv6 tracert报文的源IPv6地址是该报文出接口的IPv6地址。
-f first-hop:指定一个初始hoplimit,即第一个报文所允许的跳数。取值范围为1~255,且小于或等于max-hops,缺省值为1。
-i interface-type interface-number:指定出接口的接口类型与接口编号。如果下一跳地址为组播地址或者链路本地地址,则必须指定此参数。如果未指定本参数,则根据目的IPv6地址查找转发表来确定发送IPv6 tracert报文的接口。
-m max-hops:指定一个最大hoplimit,即一个报文所允许的最大跳数。取值范围为1~255,且大于或等于first-hop,缺省值为30。
-p port:指定目的端的UDP端口号,取值范围为1~65535,缺省值为33434。用户一般不需要更改此选项。
-q packet-number:指定每次发送的探测报文个数,取值范围为1~65535,缺省值为3。
-s packet-size:指定IPv6 tracert报文的长度(不包含IPv6报文头和传输层的报文头),取值范围为20~9600,单位为字节,缺省值为56。
-t traffic-class:指定IPv6 tracert报文中的Traffic Class域的值。取值范围为0~255,缺省值为0。
-w timeout:指定探测报文的响应报文的超时时间,取值范围为1~65535,单位为毫秒,缺省值为5000。
overlay:采用Overlay方式查看SRv6转发路径。如果未指定本参数,则采用非Overlay方式查看SRv6转发路径。指定本参数时,不能指定-f和-m参数。
{ sid | coc32 sid common-prefix-length }&<1-n>:指定SRv6 SID列表&<1-n>表示前面的参数最多可以输入n次。n的取值为11。如果采用Overlay方式,则不能通过本参数指定End.OP SID。如果采用非Overlay方式,则必须通过本参数指定End.OP SID。其中,
· sid:指定普通的SRv6 SID。
· coc32 sid common-prefix-length:指定G-SID。sid为G-SID值,common-prefix-length为下一个G-SID的公共前缀长度。
network-slice slice-id:指定网络切片实例ID,取值范围为0~4294967295。指定本参数后,将为IPv6 tracert报文封装IPv6逐跳扩展头(Hop-by-Hop Extension Header),并且在IPv6逐跳扩展头中添加网络切片实例ID信息。如果不指定本参数,则IPv6 tracert报文不封装带网络切片实例ID的IPv6逐跳扩展头。
slice-prefix ipv6-address:指定源地址切片方式网络切片报文的IPv6源地址前缀。指定本参数后,将IPv6 tracert报文中的源地址最高位修改为本命令指定的IPv6源地址前缀,源地址的最低32位修改为本命令指定的网络切片实例ID。如果IPv6源地址前缀和网络切片实例ID的总长度小于128位,则在IPv6源地址前缀后,填充0来补齐。如果未指定本参数,则按照HBH切片方式封装IPv6 tracert报文。
force-match-slice:强制匹配网络切片实例ID。指定本参数后,本命令指定的网络切片实例ID必须与报文出接口网络切片通道的网络切片实例ID相同,设备才能发送IPv6 tracert报文,否则设备直接丢弃IPv6 tracert报文,导致Tracert失败。如果未指定本参数,则不校验IPv6 tracert报文的网络切片实例ID,设备正常发送IPv6 tracert报文。
【使用指导】
当用户使用ping ipv6-sid命令发现网络出现故障后,可以使用tracert ipv6-sid命令来定位出现故障的网络节点。
本命令的输出信息包括到达目的端所经过的所有设备的SRv6 SID信息,如果某设备不能回应ICMP错误消息(可能因为路由不可达或者没有开启ICMP错误报文处理功能),则输出“* * *”。
中间设备通过ipv6 unreachables enable命令开启了ICMP不可达报文处理功能时,如果tracert ipv6-sid命令执行结果中显示以下字符,则表示目的设备已不可达,设备会停止发包,Tracert过程停止:
· !N:表示目的不可达,即路由表中没有匹配的目的地址。
· !P:因安全类业务流量管理禁止导致通信不可达,即通信被过滤策略禁止。
· !A:表示地址不可达,即未知的不可达消息。
· !S:表示超出源地址范围不可达,即当源地址为链路本地地址、目的地址不是链路本地地址时返回此字符。
进行非Overlay检测必须满足以下条件:
· 目的节点必须支持End.OP SID,且已经配置End.OP SID。
· 通过参数指定SRv6 SID列表时,End.OP SID必须在目的SRv6 SID之前。
例如,转发路径为A—>B—>C,其中源节点为A,中间节点为B,目的节点为C。中间节点B的SRv6 SID为1010::1:0:1b,目的节点C的End.OP SID为1020::32,目的节点C的SRv6 SID为1020::1:0:3。在源节点A通过非Overlay方式查看到达目的节点C的SRv6转发路径,则需要执行命令tracert ipv6-sid 1010::1:0:1b 1020::32 1020::1:0:3。
如果源节点到目的节点之间存在多条SRv6转发路径,可以指定某条路径上多个节点的SRv6 SID,以达到只查看该SRv6转发路径的目的。
同时指定-a和slice-prefix参数时,IPv6 tracert报文中的源IPv6地址以指定slice-prefix参数的配置为准。
指定slice-prefix参数时,配置的网络切片实例ID的最大值不能超过2147483647。
在执行命令过程中,键入<Ctrl+C>可终止此次tracert ipv6操作。
【举例】
# 采用非Overlay方式查看SRv6转发路径,中间节点的SRv6 SID为1010::1:0:1b,目的节点的End.OP SID为1020::32,目的节点的SRv6 SID为1020::1:0:3。
<Sysname> tracert ipv6-sid 1010::1:0:1b 1020::32 1020::1:0:3
Traceroute SRv6 1010::1:0:1b 1020::32 1020::1:0:3, 30 hops at most, 60 bytes packets, press CTRL_C to break
1 15::1 [SRH: 1020::1:0:3, 1020::32, 1010::1:0:1b, SL=2] 0.661 ms 0.618ms 0.579ms
2 12::2 [SRH: 1020::1:0:3, 1020::32, 1010::1:0:1b, SL=1] 0.861 ms 0.718ms 0.679ms
表1-3 tracert ipv6-sid命令显示信息描述表
字段 |
描述 |
Traceroute SRv6 1010::1:0:1b 1020::32 1020::1:0:3 |
查看IPv6报文从当前节点发送,经过SID为1010::1:0:1b的SRv6节点,到End.OP SID为1020::32的目的节点1020::1:0:3所经过的路径 |
hops at most |
探测报文的最大跳数 |
byte packets |
探测报文字节数(包括IPv6基本头、传输层报文头和负载的总长度,但不含IPv6扩展头长度,如SRH、HBH) |
press CTRL_C to break |
按组合键Ctrl+C可以终止SRv6 SID Tracert操作 |
2 12::2 [SRH: 1020::1:0:3, 1020::32, 1010::1:0:1b, SL=1] 0.861 ms 0.718ms 0.679ms |
hoplimit值为2的探测报文的探测结果,内容包括: · 12::2为报文的响应地址 · ICMPv6应答报文中SRH信息,包括: ¡ 1020::1:0:3、1020::32、1010::1:0:1b为SRH中的SRv6 SID ¡ SL=1表示剩余的SRv6 SID数目 · 0.861 ms 0.718ms 0.679ms表示发送三次探测报文,依次显示每次探测报文的RTT(Roud-Trip Time,往返时间)值,单位是毫秒 |
【相关命令】
· ipv6 unreachables enable(三层技术-IP业务命令参考/IPv6基础)
· opcode(Segment Routing命令参考/SRv6)
· ping ipv6-sid
tracert srv6-te policy命令用来查看SRv6 TE Policy所经过的设备。
【命令】
tracert srv6-te policy { policy-name policy-name | color color-value end-point ipv6 ipv6-address | binding-sid ipv6-address } [ force-match-slice ] [ end-op end-op | endpoint ] [ -a source-ipv6 | -f first-hop | -m max-hops | -p port | -q packet-number | -s packet-size | -tc traffic-class | -w timeout ] *
【视图】
任意视图
【缺省用户角色】
network-admin
【参数】
policy-name policy-name:SRv6 TE Policy名称,为1~59个字符的字符串,区分大小写。
color color-value end-point ipv6 ipv6-address:指定Color属性和目的节点的SRv6 TE Policy。color-value取值范围为0~4294967295。ipv6-address表示目的节点的IPv6地址。
binding-sid ipv6-address:指定BSID的SRv6 TE Policy。其中,ipv6-address表示IPv6地址作为BSID。
force-match-slice:强制匹配网络切片实例ID。指定本参数后,命令中指定的SRv6 TE Policy候选路径引用的网络切片实例ID必须与报文出接口网络切片通道的网络切片实例ID相同,设备才能发送IPv6 tracert报文,否则设备直接丢弃IPv6 tracert报文,导致Tracert失败。如果未指定本参数,则不校验IPv6 tracert报文的网络切片实例ID,设备正常发送IPv6 tracert报文。
end-op end-op:将End.OP SID添加到IPv6 tracert报文的SID列表中,并将SRH中的SL加1。end-op为End.OP SID值。通过End.OP SID定位目的节点。如果未指定本参数,则不为IPv6 tracert报文添加End.OP SID。
endpoint:将SRv6 TE Policy的目的节点地址添加到IPv6 tracert报文的SID列表中,并将SRH中的SL加1。如果未指定本参数,则不为IPv6 tracert报文添加SRv6 TE Policy的目的节点地址。
-a source-ipv6:指定IPv6 tracert报文的源IPv6地址。该地址必须是设备上已配置的合法IPv6地址。未指定本参数时,如果配置了encapsulation source-address命令,则IPv6 tracert报文的源IPv6地址为encapsulation source-address命令配置的源地址;否则,IPv6 tracert报文的源IPv6地址是该报文出接口的IPv6地址。
-f first-hop:指定一个初始hoplimit,即第一个报文所允许的跳数。取值范围为1~255,且小于或等于max-hops,缺省值为1。
-m max-hops:指定一个最大hoplimit,即一个报文所允许的最大跳数。取值范围为1~255,且大于或等于first-hop,缺省值为30。
-p port:指定目的端的UDP端口号,取值范围为1~65535,缺省值为33434。用户一般不需要更改此选项。
-q packet-number:指定每次发送的探测报文个数,取值范围为1~65535,缺省值为3。
-s packet-size:指定IPv6 tracert报文的长度,取值范围为20~9600,单位为字节,缺省值为56。
-tc traffic-class:指定IPv6 tracert报文中的Traffic Class域的值。取值范围为0~255,缺省值为0。
-w timeout:指定探测报文的响应报文的超时时间,取值范围为1~65535,单位为毫秒,缺省值为5000。
【使用指导】
当用户使用ping srv6-te policy命令发现网络出现故障后,可以使用tracert srv6-te policy命令来定位出现故障的网络节点。
本命令的输出信息包括到达目的端所经过的所有设备的SRv6 SID信息,如果某设备不能回应ICMP错误消息(可能因为路由不可达或者没有开启ICMP错误报文处理功能),则输出“* * *”。
中间设备通过ipv6 unreachables enable命令开启了ICMP不可达报文处理功能时,如果tracert srv6-te policy命令执行结果中显示以下字符,则表示目的设备已不可达,设备会停止发包,Tracert过程停止:
· !N:表示目的不可达,即路由表中没有匹配的目的地址。
· !P:因安全类业务流量管理禁止导致通信不可达,即通信被过滤策略禁止。
· !A:表示地址不可达,即未知的不可达消息。
· !S:表示超出源地址范围不可达,即当源地址为链路本地地址、目的地址不是链路本地地址时返回此字符。
在执行命令过程中,键入<Ctrl+C>可终止此次tracert srv6-policy操作。
当被检测的SRv6 TE Policy中的SID列表中仅存在一个本地End.X SID时,如果希望本功能检测正常,请先在SRv6 TE Policy视图下执行encapsulation-mode encaps include local-end.x命令,或者在SRv6 TE视图下执行srv6-policy encapsulation-mode encaps include local-end.x命令。
【举例】
# 对名称为p1的SRv6 TE Policy隧道发起tracert检测。
<Sysname> tracert srv6-te policy policy-name p1 end-op 8000::1
Traceroute SRv6-TE policy, 30 hops at most, 60 byte packets, press CTRL_C to break
Segment list ID: 1
Preference=10, Path Type=Main, Protocol origin=local, Originator=0, 0.0.0.0, Discriminator=10, End.OP=8000::1, Src address=1002:0:1:1::14
1 1000::2 [SRH: 8000::1, 8000::1, 7000::1, 6000::1, SL=3] 1.000 ms 1.000 ms 1.000 ms
2 2000::3 [SRH: 8000::1, 8000::1, 7000::1, 6000::1, SL=2] 1.000 ms 1.000 ms 1.000 ms
3 4000::4 [SRH: 8000::1, 8000::1, 7000::1, 6000::1, SL=1] 0.000 ms 0.000 ms 1.000 ms
表1-4 tracert srv6-te policy命令显示信息描述表
字段 |
描述 |
Traceroute SRv6-TE policy |
对SRv6 TE Policy进行Trace route操作 |
hops at most |
探测报文的最大跳数 |
byte packets |
探测报文字节数 |
press CTRL_C to break |
按组合键Ctrl+C可以终止SRv6 TE Policy Tracert操作 |
Segment list ID |
SID列表的ID |
Preference |
候选路径优先级 |
Path Type |
路径类型,取值为: · Main:主路径 · Backup:备路径 · Secondary backup:热备份时的第二条备份路径 · None:未选中该路径 |
Protocol origin |
协议来源: · PCEP:通过PCEP协议获取(暂不支持) · BGP:通过BGP协议获取 · Local:本地配置 · Unknown:来源未知 |
Originator=ASN Node-address |
从BGP获取到的SRv6 TE Policy,其中: · ASN:自制系统号。0表示未从BGP获取到SRv6 TE Policy · Node-address:BGP节点地址。手工配置SRv6 TE Policy时,Node address为0.0.0.0;从BGP对等体获取SRv6 TE Policy信息时,Node address为BGP对等体的Router ID |
Discriminator |
表示候选路径的标识符,通过Protocol-origin、Originator以及Discriminator可以唯一标识一条候选路径 |
End.OP |
End.OP SID |
Src address |
ICMPv6报文的源地址 |
1000::2 [SRH: 8000::1, 8000::1, 7000::1, 6000::1, SL=3] 1.000 ms 1.000 ms 1.000 ms |
hoplimit值为1的探测报文的探测结果,内容包括: · 1000::2为报文的响应地址 · ICMPv6应答报文中SRH信息,包括: ¡ 8000::1, 8000::1, 7000::1, 6000::1为SRH中的SRv6 SID ¡ SL=3表示剩余的SRv6 SID数目 · 1.000 ms 1.000 ms 1.000 ms表示发送三次探测报文,依次显示每次探测报文的RTT(Roud-Trip Time,往返时间)值,单位是毫秒 |
【相关命令】
· ipv6 unreachables enable(三层技术-IP业务命令参考/IPv6基础)
· ping srv6-te policy
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!