链路负载均衡设备可解决多链路网络环境中流量分担的问题,提高多链路的带宽利用率,保障了网络通信的稳定性。为用户和应用系统分配最佳的通信线路,使用户获得绝佳的访问体验。但也存在因为策略配置或设备自身问题引起的连接失败。
某证券公司的客户端pc1通过互联网远程登录vpn时,每次都能够正常访问,但客户端pc2在登录远程vpn时,经常不能成功连接。针对这一现象,部署科来网络回溯分析系统分别采集客户端pc1、客户端pc2及负载均衡上连防火墙的链路流量。远程vpn地址为:x.x.242.94。下图为该证券公司的简易部署图。
图 11-1
客户端pc1:
客户端pc1在任何时段都能够正常连接远程vpn,所以首先抓取客户端pc1的数据进行分析:(圆框遮挡处为客户端pc1地址,方框为vpn地址)
图 11-2
如上图所示,红框处三个包为isakmp协议,vpn使用的是主动模式,其主要作用是定义vpn封装格式和协商包交换的方式。第一个包为客户端pc1向vpn地址发起连接,第二个包为vpn地址发送给客户端pc1,第三个包为客户端pc1向vpn地址发送完成isakmp协议协商(由于vpn使用nat traversal技术所以第三个包开始就使用udp 4500端口)。
经过上述步骤,一个vpn会话连接就能够被正常的建立。所以客户端pc1能够一直正常的与远程vpn连接。
客户端pc2:
客户端pc2在连接远程vpn时,有时能够正常连接,有时很多次连接都会失败,所以在来抓取客户端pc2的数据进行分析:(圆框遮挡处为客户端pc1地址,方框为vpn地址)
图 11-3
如上图,客户端pc2连接不上vpn时,数据包全部是有客户端pc2向vpn地址发起的第一个isakmp包,每隔5秒发送一次,共发送4次。
通过该现象分析,怀疑是由于内部网络设备或互联网丢包造成数据包没有到达远程vpn,另一种可能是远程vpn收到数据包并发出回应,但回应数据包丢包。
为了验证分析,在负载均衡上联接口进行抓包分析:
在负载均衡前抓包,正常连接时能够抓包情况与客户端pc1一致,但不能连接vpn时,从抓包点位置不能抓到isakmp请求数据包。
结合客户端pc2抓包情况来看,客户端pc2发送了isakmp第一个包,但通过了负载均衡之后我们抓不到此包,说明此数据包可能被负载均衡设备丢弃或发送到错误的链路上。
通过上述分析,可以判断在发生vpn连接问题时客户端pc2正常发送了vpn请求包,但通过负载均衡设备后,此包并没有出现在正确的链路上,建议用户对负载均衡设备进行排查,检测是否存在丢包或将此包发送到错误的链路的情况。
通过网络流量分析能够掌握网络运行状态,了解不同链路下的网络传输情况,完整追踪数据包的传输路径,迅速定位问题原因,从而解决链路负载均衡、路由等设备造成的丢包、转发错误等情况。