1.一种路由追踪方法,其特征在于,所述方法包括:
确定对第一收到的icmp回应请求报文进行三层转发;
将所述第一收到的icmp回应请求报文的生存时间减1;
当所述第一收到的icmp回应请求报文修改后的生存时间等于0,生成第一icmp超时报文,其中,源ip地址为网关ip地址,目的ip地址为所述icmp回应请求报文的源ip地址;源mac地址为网关mac地址,目的mac地址为所述icmp超时报文的目的ip地址对应的mac地址;通过所述第一生成的icmp超时报文的目的mac地址对应的出端口转发;
当所述第一收到的icmp回应请求报文修改后的生存时间不等于0,为所述第一收到的icmp回应请求报文重新封装以太网头;其中,所述第一收到的icmp回应请求报文的重新封装以太网头的源mac地址和目的mac地址分别是公共交换实例中本地mac地址和目的端网关mac地址;以本地ip地址和所述目的端网关的ip地址为重新封装的所述第一收到的icmp回应请求报文进行第一vxlan封装;其中,所述第一vxlan封装中的外层源ip是本地ip地址;外层目的ip地址是所述目的端网关ip地址;将所述第一收到的icmp回应请求报文修改后的生存时间复制到所述第一vxlan封装的生存时间用以指示通过所述vxlan隧道转发所述icmp回应请求报文的路由转发跳数;通过所述第一vxlan封装的icmp回应请求报文的隧道出端口转发。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定对第一收到的icmp超时报文进行三层转发;
确定所述第一收到的icmp超时报文的目的ip地址是本地ip地址;
确定所述第一收到的icmp超时报文的ip载荷部分为所述第一vxlan封装的icmp回应请求报文;
生成代理icmp超时报文;其中,所述代理icmp超时报文的源ip地址为所述第一收到的icmp超时报文的源ip地址;所述代理icmp超时报文的目的ip地址为所述第一vxlan封装的icmp回应请求报文的内层源ip地址;所述代理icmp超时报文的源mac地址是网关mac地址;所述代理icmp超时报文的目的mac地址是所述代理icmp超时报文的目的ip地址对应的mac地址;
通过所述代理icmp超时报文的目的mac地址对应的出端口转发。
3.根据权利要求1所述的方法,其特征在于,所述方法包括:
接收vxlan封装的icmp超时报文;
对接收的vxlan封装的icmp超时报文执行vxlan解封装;
确定对vxlan解封装后的icmp超时报文进行三层转发;
为vxlan解封装后的icmp超时报文重新封装以太网头;其中,vxlan解封装后的icmp超时报文的重新封装的以太网头的源mac地址和目的mac地址分别是所述网关mac地址和vxlan封装后的icmp超时报文的目的ip地址对应的mac地址;
通过所述vxlan解封装后的icmp超时报文的重新封装的以太网头的目的mac地址对应的出端口转发。
4.根据权利要求1所述的方法,其特征在于,所述方法包括:
确定对收到的第二vxlan封装的icmp回应请求报文执行三层转发;
确定所述收到的第二vxlan封装的icmp回应请求报文外层目的ip地址是所述本地ip地址,将所述收到的第一vxlan封装的icmp回应请求报文外层生存时间减1;
当所述收到的第一vxlan封装的icmp回应请求报文的外层生存时间等于0,生成第二icmp超时报文;其中,所述第二生成的icmp超时报文的源ip和目的ip地址分别是所述收到的第二vxlan封装icmp回应请求的外层源地址和所述本地ip地址;所述第二生成的icmp超时报文的载荷封装有所述收到的第二vxlan封装的icmp回应请求;以所述第二生成的icmp超时报文的目的ip地址的下一跳的mac地址为目的mac地址封装以太网头;
通过所述第二生成的icmp超时报文的目的ip地址的下一跳的mac地址的出端口转发。
5.根据权利要求1所述的方法,其特征在于,
确定对收到的第三vxlan封装的icmp回应请求报文执行三层转发;
确定所述收到的第二vxlan封装的外层目的ip地址是本地ip地址,将所述收到的第二vxlan封装的icmp回应请求报文外层生存时间减1;
当所述收到的第二vxlan封装的icmp回应请求报文的修改后外层生存时间等于0,生成第三icmp超时报文;其中,所述第三生成的icmp超时报文的源ip和目的ip地址分别是本地ip地址以及所述收到的第三vxlan封装icmp回应请求的内层源地址;为所述第三生成的icmp超时报文进行vxlan封装,其中,所述第三生成的icmp超时报文的vxlan封装的外层源ip地址和外层目的ip地址分别是本地ip地址以及收到的第三vxlan封装的icmp回应请求报文的外层源ip地址;根据所述第三生成的icmp超时报文的vxlan封装的外层目的ip地址的下一跳的mac地址封装外层以太网头并转发;
当所述收到的第三vxlan封装的icmp回应请求报文的修改后外层生存时间不等于0,对所述第三vxlan封装的icmp超时报文执行解封装;确定对所述第三解封装后的icmp超时报文进行三层转发;为所述第三解封装后的icmp超时报文重新封装以太网头;其中,第三解封装后的icmp超时报文的重新封装的以太网头的源mac地址和目的mac地址分别是所述网关mac地址和所述收到的第三vxlan封装的icmp回应请求报文的内层目的ip地址对应的mac地址;
通过所述第三解封装后的icmp超时报文的重新封装的目的mac地址对应的出端口转发。
6.一种路由追踪设备,包括交换芯片,处理器、存储有计算机指令的存储器以及多个接口,其特征在于,
所述交换芯片,确定对第一收到的icmp回应请求报文进行三层转发,将所述第一收到的icmp回应请求报文送往所述处理器;
所述处理器执行所述存储器中存储的计算机指令,将所述第一收到的icmp回应请求报文的生存时间减1;当所述第一收到的icmp回应请求报文修改后的生存时间等于0,生成第一icmp超时报文,其中,源ip地址为网关ip地址,目的ip地址为所述icmp回应请求报文的源ip地址;源mac地址为网关mac地址,目的mac地址为所述icmp超时报文的目的ip地址对应的mac地址;将所述第一生成的icmp超时报文送往所述交换芯片;当所述第一收到的icmp回应请求报文修改后的生存时间不等于0时,为所述第一收到的icmp回应请求报文重新封装以太网头;其中,所述第一收到的icmp回应请求报文的重新封装以太网头的源mac地址和目的mac地址分别是公共交换实例中本地mac地址和目的端网关mac地址;以本地ip地址和所述目的端网关的ip地址为重新封装的所述第一收到的icmp回应请求报文进行第一vxlan封装;其中,所述第一vxlan封装中的外层源ip是本地ip地址;外层目的ip地址是所述目的端网关ip地址;将所述第一收到的icmp回应请求报文修改后的生存时间复制到所述第一vxlan封装的生存时间用以指示通过所述vxlan隧道转发所述icmp回应请求报文的路由转发跳数;将所述第一vxlan封装的icmp回应请求报文发往交换芯片;
所述交换芯片,通过所述第一生成的icmp超时报文的目的mac地址对应的出端口转发以及通过所述第一vxlan封装的icmp回应请求报文的隧道出端口转发。
7.根据权利要求6所述的设备,其特征在于,
所述交换芯片,确定对第一收到的icmp超时报文进行三层转发,将所述第一收到的icmp超时报文送往所述处理器;
所述处理器执行所述存储器中存储的计算机指令,确定所述第一收到的icmp超时报文的目的ip地址是本地ip地址;确定所述第一收到的icmp超时报文的ip载荷部分为所述第一vxlan封装的icmp回应请求报文;生成代理icmp超时报文;其中,所述代理icmp超时报文的源ip地址为所述第一收到的icmp超时报文的源ip地址;所述代理icmp超时报文的目的ip地址为所述第一vxlan封装的icmp回应请求报文的内层源ip地址;所述代理icmp超时报文的源mac地址是网关mac地址;所述代理icmp超时报文的目的mac地址是所述代理icmp超时报文的目的ip地址对应的mac地址;将所述代理icmp超时报文送往交换芯片;
所述交换芯片,通过所述代理icmp超时报文的目的mac地址对应的出端口转发。
8.根据权利要求6所述的设备,其特征在于,
所述交换芯片,接收vxlan封装的icmp超时报文;对接收的vxlan封装的icmp超时报文执行vxlan解封装;确定对vxlan解封装后的icmp超时报文进行三层转发;将vxlan解封装后的icmp超时报文发往所述处理器;
所述处理器执行所述存储器中存储的计算机指令,为vxlan解封装后的icmp超时报文重新封装以太网头,并送往所述交换芯片;其中,vxlan解封装后的icmp超时报文的重新封装的以太网头的源mac地址和目的mac地址分别是所述网关mac地址和vxlan封装后的icmp超时报文的目的ip地址对应的mac地址;
所述交换芯片,通过所述vxlan解封装后的icmp超时报文的重新封装的以太网头的目的mac地址对应的出端口转发。
9.根据权利要求5所述的方法,其特征在于,
所述交换芯片,接收并确定对收到的第二vxlan封装的icmp回应请求报文执行三层转发,将所述收到的第二vxlan封装的icmp回应请求发往所述处理器;
所述处理器执行所述存储器中存储的计算机指令,确定所述收到的第二vxlan封装的icmp回应请求报文外层目的ip地址不是所述本地ip地址,将所述收到的第一vxlan封装的icmp回应请求报文外层生存时间减1;当所述收到的第一vxlan封装的icmp回应请求报文的修改后外层生存时间等于0,生成第二icmp超时报文;其中,所述第二生成的icmp超时报文的源ip和目的ip地址分别是所述收到的第二vxlan封装icmp回应请求的外层源地址和所述本地ip地址;所述第二生成的icmp超时报文的载荷封装有所述收到的第二vxlan封装的icmp回应请求;以所述第二生成的icmp超时报文的目的ip地址的下一跳的mac地址为目的mac地址封装以太网头并发往所述交换芯片;
所述交换芯片通过所述第二生成的icmp超时报文的目的ip地址的下一跳的mac地址的出端口转发。
10.根据权利要求6所述的设备,其特征在于,
所述交换芯片,接收并确定对收到的第三vxlan封装的icmp回应请求报文执行三层转发,将收到的第三vxlan封装的icmp回应请求报文发往所述处理器;
所述处理器执行所述存储器中存储的计算机指令,确定所述收到的第二vxlan封装的icmp回应请求报文的外层目的ip地址是本地ip地址,将所述收到的第二vxlan封装的icmp回应请求报文的修改后外层生存时间减1;当所述收到的第二vxlan封装的icmp回应请求报文的修改后外层生存时间等于0,生成第三icmp超时报文;其中,所述第三生成的icmp超时报文的源ip和目的ip地址分别是本地ip地址以及所述收到的第三vxlan封装icmp回应请求的内层源地址;为所述第三生成的icmp超时报文进行vxlan封装,其中,所述第三生成的icmp超时报文的vxlan封装的外层源ip地址和外层目的ip地址分别是本地ip地址以及收到的第三vxlan封装的icmp回应请求报文的外层源ip地址;根据所述第三生成的icmp超时报文的vxlan封装的外层目的ip地址的下一跳的mac地址封装外层以太网头并发往所述交换芯片转发;
当所述收到的第三vxlan封装的icmp回应请求报文的修改后外层生存时间不等于0,对所述第三vxlan封装的icmp超时报文执行解封装;确定对所述第三解封装后的icmp超时报文进行三层转发;为所述第三解封装后的icmp超时报文重新封装以太网头并发往所述交换芯片;其中,第三解封装后的icmp超时报文的重新封装的以太网的源mac地址和目的mac地址分别是所述网关mac地址和所述收到的第三vxlan封装的icmp回应请求报文的内层目的ip地址对应的mac地址;
所述交换芯片,根据所述第三生成的icmp超时报文的vxlan封装的外层目的ip地址的下一跳的mac地址的对应的出端口转发;通过所述第三解封装后的icmp超时报文的重新封装的目的mac地址对应的出端口转发。