目录
opcode?end命令用来配置静态SRv6?End?SID的Opcode。
undo?opcode?end命令用来取消配置的静态SRv6?End?SID的Opcode。
缺省情况下,没有配置静态SRv6?End?SID的Opcode。
opcode?func-opcode?end?{?no-flavor?|?psp?|?psp-usp-usd?}
undo?opcode?func-opcode?end?[?no-flavor?|?psp?|?psp-usp-usd?]
应用场景
SRv6 SID是IPv6地址形式,总计128位。SRv6 SID格式为Locator:Function:Args,其中Function字段也称为Opcode,配置不同的Opcode实际相当于定义了不同的Function。Opcode可以通过IGP协议动态分配,也可以通过opcode命令静态配置。
静态Opcode需要在静态段范围内配置,防止与IGP协议动态分配的Opcode冲突。静态段长度范围由locator命令的static static-length参数决定,这个范围也决定了能够在该Locator下配置多少静态Opcode。
通过opcode命令静态配置各种类型的Opcode以后,Locator+Opcode+Args组成一个唯一的SRv6 SID。SRv6 SID生成以后,一方面会加入本机的Local SID表,另一方面也可以通过路由协议对外发布。实际转发时,SRv6 SID里的Locator部分用来帮助网络里的其他节点进行路由寻址,找到SRv6 SID的生成节点,并将SRv6报文转发到该节点,而Opcode部分用于指示SRv6 SID的生成节点进行相应的功能操作。
End是最基础的SRv6指令,与End指令绑定的SID称为End?SID,End?SID指示一个节点。End?SID可指示网络节点将报文转发到发布该SID的节点,当报文到达该节点后,该节点执行End指令处理报文。End指令执行的动作很简单:将SL的值减1,并根据SL从SRH取出下一个SID更新到IPv6报文头的目的地址字段,再查表转发。
注意事项
为保证转发正确,配置的各种静态SID和接口下配置的IPv6地址不能互相冲突。
# 配置静态SRv6?End?SID的Opcode。
<HUAWEI> system-view
[~HUAWEI] segment-routing ipv6
[*HUAWEI-segment-routing-ipv6] locator test1 ipv6-prefix 2001:DB8:100:: 64 static 32
[*HUAWEI-segment-routing-ipv6-locator] opcode ::100 end no-flavor
[*HUAWEI-segment-routing-ipv6-locator] opcode ::101 end psp
[*HUAWEI-segment-routing-ipv6-locator] opcode ::102 end psp-usp-usd