VPN访问外网不畅 深度剖析破解故障根源3
图2
揭密数据在VPN通道传输过程
为了更好地解决VPN访问外网不畅的故障现象,我们还有必要来了解一下上网数据信息在VPN网络连接通道中的传输过程。我们知道,VPN网络连接接口其实就是一个点对点方式的虚拟链路接口,当VPN网络连接接口收到网络访问包时,该连接接口就会把从网络层获取得来的数据信息包封装成PPP点对点格式的数据帧,同时对该数据帧进行安全加密操作,之后再把安全封装好的数据帧信息传输到指定的网关那里,这里所提到的网关其实就是VPN工作站自己,因此这个被安全封装的上网数据信息帧又被重新返回给本地工作站再次进行处理,这次处理操作实际上就是再次对上网数据信息帧进行封装的过程。
那么VPN工作站为什么需要重复对上网数据信息帧进行封装呢?这是因为第一次进行安全封装的数据帧往往只能通过虚拟的VPN网络连接接口进行传输,要想将上网数据信息通过实际的网络连接接口进行传输,还需要在实际的网络链路层中重新进行一次安全封装操作才行。而在最终封装成符合网络链路层传输要求的数据帧之前,往往要对第一次封装过的上网数据信息帧进行其他的多级封装,这是由于按照规定是无法直接把PPP点对点格式的数据帧封装在另一个链路层数据帧中的,这需要在PPP点对点格式的数据帧之前添加一些报头,例如最简单的是添加一个GRE报头和IP报头。
当上网数据信息帧被封装到符合网络层传输要求时,比方说在封装到IP报头的时候,还需要在这个过程中进行一次路由指定,这是因为上网数据信息包必须要明确地发送到目标远程VPN服务器那里,上网数据信息包需要在这里寻找到一条能够到达目标远程VPN服务器的路由,之后上网数据信息就在目标路由的指定下将数据送到特定的网络接口进行处理。