摘要:VPN的实现对于远程办公有着重大的意义。本文是以思科路由器做为VPN 服务器端,对网件(NETGEAR)路由器的VPN功能和性能进行测试,主要包括测试环境的搭建及测试方法验证。
关键词:VPN路由器;PPTP;L2TP;IPSec
1、概述
近二十年互联网的迅猛发展,网络已经完全融入了人们的工作和生活,给我们的工作和生活带来了很大的便利,其中就包括远程办公的实现。因此,人们可以通过互联网的渠道,随时随地的了解和掌握内部信息资源。
目前比较流行的远程办公就是通过虚拟专用网络(VPN: Virtual Private Network)连入到企业内部网络。VPN使用户无论身处何方,都可以随时通过互联网安全地通信,支持用户全方位的日常办公需求,包括获取公司内部邮件、访问局域网中的服务器、内部数据库等等。
我们一般谈到的VPN主要是指硬件VPN,比如VPN路由器、VPN防火墙等。本文主要要解决的问题就是如何通过无线路由器利用互联网安全快捷地连入公司内部网络
2、VPN定义
VPN即虚拟专用网络,在一般情况下,采用因特网的渠道,打造一个隧道且连接到另外一个网络,通常,VPN是公司企业内部网的扩展。
3、VPN工作原理
图一 VPN的工作过程
远程终端A对公司数据中心进行访问的过程中,将使得发生的数据包目标地址都属于公司数据中心所属的地址。终端A将数据传递至AVPN网关,并且该网管需要检查其目标地址,当目标地址分属于公司内网的地址,就可以使用对应的VPN技术对数据包进行封装构成一个VPN数据包,这个数据包是全新的,然后将原数据加以封装,将其当成包VPN数据包的负载,最终VPN网关B的外部地址就可以使用这个新VPN数据包所含的目标地址。
VPN网关A可以发送新数据包至Internet,然后Internet属于的路由需要遵循数据包给出的目标地址,确保VPN网关B能够及时接收到正确的地址。
VPN网关B需要认真检查已经接收的所有数据包进行检查,并且有效确认是否来自VPN网关A传递的VPN数据包,同时及时解包这些数据包,主要是将包头加以剥离,然后还要还原数据包,使其变成原始数据包。
数据包目标地址被进行还原后,就被当作数据中心终端B的IP,那么可以理解为这一数据包完成了向终端B的转换。就终端B层面而言,其接收到的数据包完全与来自终端A的相同。
自终端B向终端A的数据包转换,其处理过程完全同步于以上程序,那么,最终可以使得两个网络终端的通讯实现互通。
根据VPN步骤不难看出VPN的基本原理就是利用加密技术在公用网络上封装出一个通讯隧道,将两端的数据报文封装在隧道中建立专用数据传输通道。关键部分就是在公用网络中建立隧道。
VPN有几个分类标准,本文只讨论按协议进行相关内容的分类,大致由PPTP、L2TP和IPSec这三类构成,即PPTP、L2TP以及IPSec VPN的隧道协议。并且前两类分属于OSI模型第二层,IPSec工作在第三层。
4、测试环境搭建
做为网络中一种非常重要的网络设备,路由器主要在网络层实现子网之间以及内外数据的转发,是不同网络之间进行数据交换及通信的一个重要通道,所以现在的大部分路由器都是支持VPN功能的。
本文是以NETGEAR无线路由器的VPN功能为测试对象,在远程终端通过VPN的三种隧道协议连接到VPN服务器。
在这个测试过程中用到的测试设备及软体工具包括一个具有VPN功能的思科路由器,两台终端PC,被测试的无线路由器,以及IPSec连接用到的测试工具是NETGEARProSafeVPNClient。
在这个测试中我们主要做了两组实验,一组是当VPN服务器架在因特网一端,而另一组则是将VPN服务器架在无线路由器的局域网端。两组实验的拓扑图分别如图二、图三所示:
图二 VPN服务器在WAN端
图三 VPN服务器在LAN端
实验拓扑图画好后,我们首先要做的就是在思科路由器上配置VPN服务,这里我们只讨论跟VPN测试有关的配置。我们使用的是带有两个物理接口E0和E1的思科837路由器,数据服务器接入E0,而E1则是做为VPN的网关。
我们先配置一个DHCP地址池,用于为接入E0的数据服务器提供有效的IP,同时给接口E0和E1配置IP,接下来还需要配置PPTP和L2TP。至此VPN服务端就配置好了,将数据服务器接入思科路由器的E0接口,它会从路由器的DHCP地址池中自动获得一个IP:192.168.90.1。
接下来我们就可以开始我们的测试实验了。我们先按照拓扑图二将设备连接起来,各个设备获得的IP如上图二所示。因为我们这个产品默认已经启用了VPN功能,当VPN服务器在广域网一端的时候,在路由器的配置页面只需要配置WAN,确保路由器接入了广域网,当然本文的广域网也是在实验室中架设的,并非真正的因特网。
环境搭建好在需要连入VPN的电脑上创建一个虚拟专用网络连接。如下图所示,我们分别建立了L2TP和PPTP两个虚拟专用网络连接,当然也可以只创建一个,然后根据需要使用在属性中修改VPN类型,这个在后文也有说明。
双击网络连接图标打开拨号窗口,点击“Properties”按钮进入属性窗口进行设置,目标IP地址为VPN服务器的接口地址:172.29.60.220,VPN类型按照需要选择PPTP或者L2TP。设置完后点击“OK”保存设置然后回到拨号窗口,输入在VPN路由器上配置的用户名和密码,点“Connect”按钮就可以连接到VPN服务器。
连接成功后我们在CMD下输入命令:ipconfig,可以查看到L2TP和PPTP分别从VPN路由器的DHCP地址池获得了一个地址,这个时候我们的终端就可以成功的和公司数据服务器通讯。
到这里我们已经成功连接可PPTP和L2TP,还需要通过IPSec连接到VPN。这里使用的是NETGEARProSafeVPNClient进行IPSec连接。打开软体后选择“NewConnection”,按照红色框中所示设置需要连入VPN服务器的接口网段和网关,选择“MyIdentify”设置本机使用的网络接口,设置完成后保存,这时我们就可以通过IPSec连接到VPN服务器,从下图可以看出我们已经通过VPN成功的连接到了数据服务器。
第一组实验成功完成,下面进行第二组实验,将VPN服务器架在测试路由器的局域网端。在这个试验中VPN服务器的配置保持不变,我们对测试路由器进行设置。
我们的路由器局域网端是和思科路由器的E1接口:172.29.60.X相连,所以为了正常通讯,将测试路由器的本地网段设置为172.29.60.X ,启用测试路由器的DMZserver并将其指向VPN网关。然后将测试路由器接入因特网获得一个WAN网路地址:192.168.64.37。
测试路由器设置好后,按照前面图三的拓扑图将各个设备连接起来,环境都搭建好之后,在远程终端上进行VPN连接的方法和第一组实验是一样的,唯一需要设置的地方就是将每个网络连接属性中的目的地址或网关改为测试路由器的WAN端地址:192.168.64.37,如下图所示。测试结果跟第一组实验相同,远程终端成功通过三种方式连入VPN,实现与数据服务器的通讯。
5、测试分析
在VPN的连接过程中有时候会遇到一些常见的错误。笔者在刚开始测VPN的时候,遇到错误619:提示“端口已断开连接”的情况比较多,那个时候产品的VPN功能还不够完善,路由器对VPN的支持不是很好,只能连接少数几台,即使连上了也经常丢包、掉线等多种问题,产品经过不断的完善,现在VPN测试中比较少遇见这个错误。
如果环境没有搭建好,比如测试路由器或者VPN服务器没有连上因特网,目的地址或网关配置错误就会出现错误678:提示“远程计算机没有反应”,这个时候就要仔细检查一下测试环境。
错误691:由于域上的用户名和/或密码无效而拒绝访问,看到这个错误就要检查连接输入的用户名和密码是否和VPN路由器上配置的一致。
6、结束语
到这里我们的VPN测试就完成了,实际上本文中只是搭建了一个很简单小型的的VPN环境,真正的公司构建VPN线路时,需要花费大量的精力,是一件不容易的事情,因此,一定要科学的规划和配置。
参考文献
[1]董云耀, 耿进锋. 路由器到路由器VPN试验网的组建和测试分析[J].计算机与数字工程, 2005, 26(2):1472-1474.
论文作者:刘捷
论文发表刊物:《电力设备》2018年第22期
论文发表时间:2018/12/12
标签:路由器论文; 测试论文; 终端论文; 数据包论文; 地址论文; 服务器论文; 网关论文; 《电力设备》2018年第22期论文;