VPN 调研
一虚拟专用网络
1.VPN 功能
在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN 网关通过对数据包的加密和数据包目标地址的转换实现远程访问。VPN 有多种分类方式,主要是按协议进行分类。VPN 可通过服务器、硬件、软件等多种方式实现。
2. 实际应用
最常见的应用就是翻墙了,谷歌前几年退出中国大陆,导致在中国无法直接访问谷歌的网站,但使用 VPN 就可以通过一台在国外的 VPN 服务来访问谷歌等国外网站。
3.VPN 特点
VPN 属于远程访问技术,简单地说就是利用公用网络架设专用网络。例如某公司员工出差到外地,他想访问企业内网的服务器资源,这种访问就属于远程访问。
在传统的企业网络配置中,要进行远程访问,传统的方法是租用 DDN(数字数据网)专线或帧中继,这样的通讯方案必然导致高昂的网络通讯和维护费用。对于移动用户(移动办公人员)与远端个人用户而言,一般会通过拨号线路(Internet)进入企业的局域网,但这样必然带来安全上的隐患。
让外地员工访问到内网资源,利用 VPN 的解决方法就是在内网中架设一台 VPN 服务器。外地员工在当地连上互联网后,通过互联网连接 VPN 服务器,然后通过 VPN 服务器进入企业内网。为了保证数据安全,VPN 服务器和客户机之间的通讯数据都进行了加密处理。有了数据加密,就可以认为数据是在一条专用的数据链路上进行安全传输,就如同专门架设了一个专用网络一样,但实际上 VPN 使用的是互联网上的公用链路,因此 VPN 称为虚拟专用网络,其实质上就是利用加密技术在公网上封装出一个数据通讯隧道。有了 VPN 技术,用户无论是在外地出差还是在家中办公,只要能上互联网就能利用 VPN 访问内网资源,这就是 VPN 在企业中应用得如此广泛的原因。
4. 工作原理
1. 通常情况下,VPN 网关采取双网卡结构,外网卡使用公网 IP 接入 Internet。
2. 网络一 (假定为公网 internet) 的终端 A 访问网络二 (假定为公司内网) 的终端 B,其发出的访问数据包的目标地址为终端 B 的内部 IP 地址。
3. 网络一的 VPN 网关在接收到终端 A 发出的访问数据包时对其目标地址进行检查,如果目标地址属于网络二的地址,则将该数据包进行封装,封装的方式根据所采用的 VPN 技术不同而不同,同时 VPN 网关会构造一个新 VPN 数据包,并将封装后的原数据包作为 VPN 数据包的负载,VPN 数据包的目标地址为网络二的 VPN 网关的外部地址。
4. 网络一的 VPN 网关将 VPN 数据包发送到 Internet,由于 VPN 数据包的目标地址是网络二的 VPN 网关的外部地址,所以该数据包将被 Internet 中的路由正确地发送到网络二的 VPN 网关 网络二的 VPN 网关对接收到的数据包进行检查,如果发现该数据包是从网络一的 VPN 网关发出的,即可判定该数据包为 VPN 数据包,并对该数据包进行解包处理。解包的过程主要是先将 VPN 数据包的包头剥离,再将数据包反向处理还原成原始的数据包。
5. 网络二的 VPN 网关将还原后的原始数据包发送至目标终端 B,由于原始数据包的目标地址是终端 B 的 IP,所以该数据包能够被正确地发送到终端 B。在终端 B 看来,它收到的数据包就和从终端 A 直接发过来的一样。
6. 从终端 B 返回终端 A 的数据包处理过程和上述过程一样,这样两个网络内的终端就可以相互通讯了。
通过上述说明可以发现,在 VPN 网关对数据包进行处理时,有两个参数对于 VPN 通讯十分重要:原始数据包的目标地址(VPN 目标地址)和远程 VPN 网关地址。根据 VPN 目标地址,VPN 网关能够判断对哪些数据包进行 VPN 处理,对于不需要处理的数据包通常情况下可直接转发到上级路由;远程 VPN 网关地址则指定了处理后的 VPN 数据包发送的目标地址,即 VPN 隧道的另一端 VPN 网关地址。由于网络通讯是双向的,在进行 VPN 通讯时,隧道两端的 VPN 网关都必须知道 VPN 目标地址和与此对应的远端 VPN 网关地址。
5. 初次接触使用 VPN 的几大误区
误区一:VPN 连接上了,还是打不开 FB,被骗了?
估计 90% 的人在第一次用 VPN 的时候,会遇到这个问题。要说 wall 也够损的,想到用 DNS 污染这一招。DNS 污染(DNS cache poisoning),维基百科上有很详细的描述。简单来说,就是国内 DNS 服务器把一些希望过滤的域名指向了错误的 IP 地址,导致我们访问的时候打不开此网站。因此,即使我们成功连接上了 VPN,加密的数据流躲过了过滤系统,但是我们在访问 facebook 的时候,解析到了一个永远也无法访问的 IP 地址,导致 FB 还是打不开。 怎么解决呢?很简单,把当前正在使用的网络连接的默认 DNS 改为国外公共 DNS。其中,最广为人知的诚实可靠小郎君就是 Google 提供的 DNS,比如: 8.8.8.8 8.8.4.4 另外还有 OpenDNS 提供的免费 DNS 服务器,比如: 208.67.222.222 208.67.220.220
误区二:VPN 的免费流量就是手机免费上网吧,碉堡了
很多 VPN 商家都以免费流量作为一种营销手段,200M 流量、800M 流量、1G 流量……在移动联通电信联合敲诈流量的年代,小伙伴们是有多渴望能拥有免费的上网流量啊。各位别笑,你身边肯定有这样的小伙伴,天真无邪的望着你说: 这个就是可以免费上网的吧? 啊,不是? 啊喂,那免费流量是什么意思? 那有屁用啊? vpn 是在手机可以上网的前提下才能使用的,wifi/2g/3g/4g 都可以,前提是你手机必须能上网。 vpn 的免费流量,指的是连接上 vpn 以后,通过 vpn 网络产生的流量。 vpn 的流量与手机上网流量是同时计算的,换言之,通过 vpn 使用了 100M 流量,那么你的手机上网也消耗了 100M 流量。
误区三:响应时间(ping 值)越小,速度越快
响应时间(ping 值)越小,确实速度越快,这里的速度快指的是反应的时间快,更具体一点就是玩游戏延时会小很多,Ping 值越小,游戏就不会延时、不会卡,相信很多游戏玩家是明白这一点的。但是,对于上网、看视频来说,Ping 值小,并没有特殊的优势。比如香港 vpn 线路,ping 值一般都在 50 以下,但是由于香港带宽价格高昂,普遍带宽都很小,看视频都不快,收收邮件到是挺好的。而美国 vpn 往往 ping 值在 200~300ms 以上,看 youtube 一样刷刷的,高大上的美帝带宽资源充足,至少都是 100M,很多是 1G 的带宽。因此,看视频更重要的是网络带宽,你本地的网络带宽以及 vpn 服务器的带宽。
误区四:VPN 就是 PPTP,PPTP 速度最快
VPN 是一个概念,PPTP 是实现 VPN 的一个方式,除了 PPTP 以外,还有 L2TP、Cisco IPSec、OpenVPN、IKev2 等等众多 VPN 的实现方式。很多人认为 PPTP 最快,确实 PPTP 在连接的速度上是最快的,连接等待的时间是最短的。然后连接上以后具体的使用速度,几乎无差别。虽然从理论上探讨略有差别,但是我们一般人是察觉不到的,完全可以忽略不计。因此,别管 VPN 用的什么方式,能连上就是王道。