在一个项目中遇到这个问题,客户端PC1通过互联网远程登录VPN时,每次都能够正常访问,但客户端PC2在登录远程VPN时,经常不能成功连接。针对这一现象,部署科来网络回溯分析系统分别采集客户端PC1、客户端PC2及负载均衡上连防火墙的链路流量。远程VPN地址为:X.X.242.94。下图为客户公司的简易部署图。 故障分析:
客户端PC1: 客户端PC1在任何时段都能够正常连接远程VPN,所以首先抓取客户端PC1的数据进行分析:(圆框遮挡处为客户端PC1地址,方框为VPN地址) 如上图所示,红框处三个包为ISAKMP协议,VPN使用的是主动模式,其主要作用是定义VPN封装格式和协商包交换的方式。第一个包为客户端PC1向VPN地址发起连接,第二个包为VPN地址发送给客户端PC1,第三个包为客户端PC1向VPN地址发送完成ISAKMP协议协商(由于VPN使用NAT Traversal技术所以第三个包开始就使用UDP 4500端口)。 经过上述步骤,一个VPN会话连接就能够被正常的建立。所以客户端PC1能够一直正常的与远程VPN连接。 客户端PC2: 客户端PC2在连接远程VPN时,有时能够正常连接,有时很多次连接都会失败,所以在来抓取客户端PC2的数据进行分析:(圆框遮挡处为客户端PC1地址,方框为VPN地址) 如上图,客户端PC2连接不上VPN时,数据包全部是有客户端PC2向VPN地址发起的第一个ISAKMP包,每隔5秒发送一次,共发送4次。 通过该现象分析,怀疑是由于内部网络设备或互联网丢包造成数据包没有到达远程VPN,另一种可能是远程VPN收到数据包并发出回应,但回应数据包丢包。 为了验证分析,在负载均衡上联接口进行抓包分析: 在负载均衡前抓包,正常连接时能够抓包情况与客户端PC1一致,但不能连接VPN时,从抓包点位置不能抓到ISAKMP请求数据包。 结合客户端PC2抓包情况来看,客户端PC2发送了ISAKMP第一个包,但通过了负载均衡之后我们抓不到此包,说明此数据包可能被负载均衡设备丢弃或发送到错误的链路上。 分析结论:通过上述分析,可以判断在发生VPN连接问题时客户端PC2正常发送了VPN请求包,但通过负载均衡设备后,此包并没有出现在正确的链路上,建议用户对负载均衡设备进行排查,检测是否存在丢包或将此包发送到错误的链路的情况。 |