(2)UDP模式下有延迟,先看UDP模式下是否勾选封堵穿透,如果是UDP传输模式并且勾选封堵穿透的话,则建议取消封堵穿透改成纯UDP的传输模式。如果纯UDP的传输模式下VPN隧道是丢包的问题现象,直接抓取公网UDP数据包重点分析UDP数据包是否有丢包即可;如果纯UDP的传输模式下,VPN隧道是延迟的问题,那么这个问题就是网络有延迟,则则内网ping包带长度同时抓取公网和内网数据包分析数据包中是否存在公网转发延迟
修改成纯UDP模式之后,如果是有公网丢包的话,在UDP模式下VPN隧道就是丢包现象;如果是TCP的传输模式,公网TCP丢包的情况但是由于TCP的重传机制,使用TCP的传输模式看到的现象就是延迟。如果是切换到UDP模式下有丢包的问题,请参考SANGFOR VPN丢包问题的典型场景。所以,尽量把传输模式切换到纯UDP模式。
修改传输模式需要断开VPN,请征得客户授权之后,再进行操作
2、在切换到UDP的传输模式下,依旧有延迟的问题现象,则可以按照下列步骤处理
①总部是DLAN6.0及以前的版本,取消用户管理中分支用户的压缩,然后再断开重连VPN,断开VPN,请征得客户授权之后,再进行操作;如果总部DLAN版本高于DLAN620,则不需要取消压缩再重连VPN这个步骤。取消压缩的方法如下:
②在总部或者分支后台去ping测试对端设备的LAN口IP地址,后台参考指令为:ping -I x.x.x.x x.x.x.x -s 400。-I 后面接的x.x.x.x是本端LAN口IP,最后那个x.x.x.x是对端设备LAN口IP,-s 400意思是ping测试的带长度400
③在两端设备后台抓取数据包,抓包指令为:tcpdump -i any -nnv \( host XX.254.XX.134 or host 192.168.1.1 \) PS:执行tcpdump抓包的时候不要指定包长长度去抓包!!!
,其中XX.254.XX.134是对方公网IP,192.168.1.1是对方设备的LAN口IP。
④两端数据包保存下来之后,就是分析数据包是否存在公网延迟了。打开数据包,在wireshark中输入ip.len>=428 or ip.len<=550过滤数据包,输入这个过滤条件的目的是因为公网封装加密的数据包一般在100多长度范围波动。例如第2步中,是在分支主动发起的ping测试,则看分支的这个数据包中ICMP的request数据包下面紧跟的公网VPN端口的数据包长度是多少,记录下这个长度,一般这个就是ping测试对应的公网数据包长度。如下图,就是找好长度之后对应的数据包,示例的数据包截图,是总部主动发起的ping包,在总部就可以看到红线方框内的4个数据包,即为内网request-公网封装加密出去-公网封装加密回包-内网回包
⑤接下来便是分析数据包是否存在公网延迟,我们通过数据包过滤之后能够看到数据包封装加密以及数据解密解封装的设备处理延迟。如果是设备处理延迟过大,则是设备问题;如果设备处理延迟小,则延迟发生在VPN设备之间的线路中,较大可能是公网线路问题。如下图示例数据,我们先看下面红色方框的数据包,可以看到延迟是5ms,这个是正常延迟的。另外一组数据包延迟有800+ms,request数据包和公网封装加密后的数据包中间有差不多800ms的延迟(看ip.id便是54392和21097),所以这个数据包是设备处理延迟造成。
