Biny

VPN 中 PPTP、 L2TP、 OpenVPN连接方式有什么区别?

Biny 2014-07-27 10:16:05    240287 次浏览
VPN 中 PPTP、 L2TP、 OpenVPN连接方式有什么区别?

一、PPTP、L2TP、OpenVPN三种隧道协议的概念
1、PPTP(Point to Point Tunneling Protocol,点对点隧道协议)默认端口号:1723
PPTP,即PPTF协议。该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网(VPN),可以通过密码身份验证协议(PAP)、可扩展身份验证协议(EAP)等方法增强安全性。可以使远程用户通过拨入ISP、通过直接连接Internet或其他网络安全地访问企业网。
点对点隧道协议(PPTP)是一种支持多协议虚拟专用网络的网络技术,它工作在第二层。通过该协议,远程用户能够通过 Microsoft Windows NT工作站、Windows xp 、Windows 2000 和windows2003、windows7操作系统以及其它装有点对点协议的系统安全访问公司网络,并能拨号连入本地ISP,通过Internet 安全链接到公司网络。
PPTP协议是点对点隧道协议,其将控制包与数据包分开,控制包采用TCP控制。PPTP使用TCP协议,适合在没有防火墙限制的网络中使用。

2、L2TP(Layer 2 Tunneling Protocol,第二层隧道协议)
L2TP是一种工业标准的Internet隧道协议,功能大致和PPTP协议类似,比如同样可以对网络数据流进行加密。不过也有不同之处,比如PPTP要求网络为IP网络,L2TP要求面向数据包的点对点连接;PPTP使用单一隧道,L2TP使用多隧道;L2TP提供包头压缩、隧道验证,而PPTP不支持。
L2TP是一个数据链路层协议,基于UDP。其报文分为数据消息和控制消息两类。数据消息用投递 PPP 帧,该帧作为L2TP报文的数据区。L2TP不保证数据消息的可靠投递,若数据报文丢失,不予重传,不支持对数据消息的流量控制和拥塞控制。控制消息用以建立、维护和终止控制连接及会话,L2TP确保其可靠投递,并支持对控制消息的流量控制和拥塞控制。
L2TP是国际标准隧道协议,它结合了PPTP协议以及第二层转发L2F协议的优点,能以隧道方式使PPP包通过各种网络协议,包括ATM、SONET和帧中继。但是L2TP没有任何加密措施,更多是和IPSec协议结合使用,提供隧道验证。
L2TP使用UDP协议,一般可以穿透防火墙,适合在有防火墙限制、局域网用户,如公司、网吧、学校等场合使用。
PPTP和L2TP二个连接类型在性能上差别不大,如果使用PPTP不正常,那就更换为L2TP。
百度百科:http://baike.baidu.com/link?url= ... b7gXMNQzOIPTKfjd_FU
3、OpenVPN
OpenVpn的技术核心是虚拟网卡,其次是SSL协议实现。

虚拟网卡是使用网络底层编程技术实现的一个驱动软件,安装后在主机上多出现一个网卡,可以像其它网卡一样进行配置。服务程序可以在应用层打开虚拟网卡,如果应用软件(如IE)向虚拟网卡发送数据,则服务程序可以读取到该数据,如果服务程序写合适的数据到虚拟网卡,应用软件也可以接收得到。虚拟网卡在很多的操作系统下都有相应的实现,这也是OpenVpn能够跨平台一个很重要的理由。

OpenVPN使用OpenSSL库加密数据与控制信息:它使用了OpenSSL的加密以及验证功能,意味着,它能够使用任何OpenSSL支持的算法。它提供了可选的数据包HMAC功能以提高连接的安全性。此外,OpenSSL的硬件加速也能提高它的性能。

OpenVPN所有的通信都基于一个单一的IP端口,默认且推荐使用UDP协议通讯,同时TCP也被支持。

在选择协议时候,需要注意2个加密隧道之间的网络状况,如有高延迟或者丢包较多的情况下,请选择TCP协议作为底层协议,UDP协议由于存在无连接和重传机制,导致要隧道上层的协议进行重传,效率非常低下。

OpenVPN是一个基于SSL加密的纯应用层VPN协议,是SSL VPN的一种,支持UDP与TCP两种方式(说明:UDP和TCP是2种通讯协议,这里通常UDP的效率会比较高,速度也相对较快。所以尽量使用UDP连接方式,实在UDP没法使用的时候,再使用TCP连接方式)。
由于其运行在纯应用层,避免了PPTP和L2TP在某些NAT设备后面不被支持的情况,并且可以绕过一些网络的封锁(通俗点讲,基本上能上网的地方就能用OpenVPN)。
OpenVPN客户端软件可以很方便地配合路由表,实现不同线路(如国内和国外)的路由选择,实现一部分IP走VPN,另一部分IP走原网络。
百度百科:http://baike.baidu.com/link?url= ... cvHfsWmlaZbQUlhxO3q

二、PPTP、L2TP、OpenVPN三种隧道协议的优缺点对比
易用性: PPTP > L2TP > OpenVPN
速度: PPTP > OpenVPN UDP > L2TP > OpenVPN TCP
安全性: OpenVPN > L2TP > PPTP
稳定性: OpenVPN > L2TP > PPTP
网络适用性:OpenVPN > PPTP > L2TP

三、VPN协议的选择
电脑上优先使用PPTP,无法使用可以尝试L2TP,对安全性要求高的优先使用OpenVPN。手持设备推荐使用L2TP。
PPTP: 最常用,设置最简单,大多数设备都支持;
L2TP: 支持PPTP的设备基本都支持此种方式,设置略复杂,需要选择L2TP/IPSec PSK方式,且设置预共享密钥PSK;
OpenVPN:最稳定,适用于各种网络环境,但需要安装第三方软件和配置文件,较复杂。

四、使用VPN翻墙上网过程中的各种常见问题解决方法
1、连上VPN后无法访问网站?
很多人连上了VPN,QQ提示在美国登陆。却任然无法访问一些国外的网站,或者打不开,或者打开很慢。其实都是因为默认DNS的问题。连接VPN后IP已经更换为国外IP如果你之前设置的是国内dns,就会出现这些问题。
您只需要进入网上邻居->查看网络连接->右键本地连接(如果是无线上网,请选择无线连接)点击属性->找到TCP/IP协议点击属性,修改DNS为首选8.8.8.8备选8.8.4.4。停用本地连接再启用。或者进入命令提示行状态下输入“ipconfig /flushdns”再次连接VPN,就会发现一切都正常了。
VPN 中 PPTP、 L2TP、 OpenVPN连接方式有什么区别?
VPN 中 PPTP、 L2TP、 OpenVPN连接方式有什么区别?
8.8.8.8和8.8.4.4均为google的免费dns解析服务器,也可以使用OpenDNS为:
208.67.222.222
208.67.220.220
2、连不上VPN,提示800错误?
如果连不上vpn服务器,并且提示800错误。
首先,VPN必须要在联网状态下才能使用。
其次,请检查您的线路地址(vpn服务器地址)有没有填错,该栏是IP字段,诸如这样的格式:222.22.2.2(IP格式是用三个.分隔的数字,每格数字位数为1~3位),这段是不需要填入服务器地址一栏的。
如果都确认没有问题,但是还是连不上VPN服务器,那推荐您尝试vpn提供商所提供的客户端连接。
3、登录vpn服务器619错误?
如果您使用路由器上网,首先请尝试将您的路由器的DMZ设置成您的主机地址,看是否能够正常连接。
然后请您尝试将VPN链接的属性设置/安全/VPN类型改为PPTP就连接,然后再尝试一下。
如果还是不行,那么这种情况大数多原因为客户机连接Internet的网关 (如家庭宽带路由或公司上网网关路由或防火墙)NAT-T功能关闭或对VPN支持性不好,主要是对GRE及PPTP协议的NAT-T不支持。
可打开网关路由的NAT-T功能,如果还是出现错误,则需要更换网关设备,现在市面上大多数设备已经支持或者建议您换个网络环境试试看,如果其他网络环境可以,则基本可以断定是您的路由器或者防火墙不支持或者禁止了VPN PPTP协议,可以尝试打开这个选项。
如果你使用PPTP模式连接的话,需要开启TCP47和TCP1723这两个端口,也就是说路由器不能封这两个端口,使用L2TP模式时需要开启的是UDP 500、UDP 1701、UDP 4500这几个端口,同理路由器防火墙或者您安装的防火墙软件也不能屏蔽这些端口。如果路由器支持DMZ,请将路由器的DMZ设置成您的主机内网IP。
4、登录vpn服务器691错误?
a. 这种情况大数多原因为客户机连接VPN服务器异常中断,因为某些vpn提供商的免费用户限制一个帐户同时只有一个客户端连接使用,所以一旦异常断开,则需等待一段时间才能重新连接。
b. vpn服务大多是有流量限制的,如果您的流量用完了也会提示此错误。
c. 如果您的用户名含有特殊字符,如引号冒号等等,即使注册了帐户,但是由于VPN服务器不能识别这些特殊字符,VPN将拒绝认证,请您重新注册一个帐户。
5、登录vpn服务器768错误?
使用windows xp很容易出现768错误,可以尝试以下方法解决。
点击电脑左下角”开始” -> “运行”,输入命令 “services.msc”,然后在服务中找到并启用“IPSEC services”即可,如为了方便以后经常使用L2TP IPsec VPN,则可以把该项服务设置为“自动”。
6、登录vpn服务器792错误?
使用L2TP模式时候出现VPN 792错误,由于缺省的Windows XP L2TP 传输策略不允许L2TP 传输不使用IPSec 加密。VISTA和WIN7以上系统没有这个问题。
WIN XP用户需要修改注册表解决这个问题,手动修改:
a. 进入Windows XP 的“开始” “运行”里面输入“Regedt32”,打开“注册表编辑
器”,定位“HKEY_Local_Machine System CurrentControl Set Services RasMan Parameters ”主键。
b. 为该主键添加以下键值:
键值:ProhibitIpSec
数据类型:reg_dword
值:1
7、其他偶尔出现的错误提示(错误:691、721、756、651、711)怎么解决呢?
错误691:
a. 更换线路尝试。
b. 查看账户密码是否正确。
c. 登陆网站后台看下账户信息是否过期,或者看下在线还是离线状态。
错误721: 有防火墙限制、局域网用户,如果公司、网吧、学校等场合可能被限制。使用之前可以测试下。
错误756: 关闭连接器重新打开即可再次尝试连接即可。
错误651: 请重启计算机
错误711: 解决方法:启动Remote Access Connection Manager与Network Connections与Telephony服务。
启动方法一:开始->运行->在里面输入:services.msc ->(双击)Remote Access Connection Manager与Network Connections与Telephony ->启动这三项服务
启动方法二:新建一个文本文件(后缀为.txt)的文件,将下面的内容
复制进去:
@echo开启VPN执行环境必要系统服务
@pause
sc config TapiSrv start= AUTO
sc config Netman start= AUTO
sc config RasMan start= AUTO
Net start TapiSrv
Net start RasMan
Net start Netman
@pause
点击菜单->文件->另存为;文件类型选“所有文件”;文件名“服务.bat”;保存好后双击打开“服务.bat”,即可完成系统服务设置
8、连接不上免费VPN怎么办?
连接不上VPN一般有多种原因,有可能是您的网络不支持直接连接到VPN服务器,可以通过在命令行执行 ping vpn的ip 来测试。如果ping命令正常,那么请使用telnet vpn的ip 1723这个命令,如果无法连接,则说明您的防火墙或者路由器不支持PPTP的VPN,由于PPTP使用的TCP协议,适合没有防火墙限制的网络。而L2TP使用的是UDP协议,一般可以穿透防火墙,适合有防火墙限制、局域网用户,如公司、网吧、学校等场合。
9、能够连上VPN服务器,但是马上就断开或者什么网页也打不开了怎么办?
出现这种情况一般是用户使用路由器才有的。
a. 首先很有可能是您的路由器开启了QOS功能或SPI防火墙之类的会干扰VPN数据流的功能,请关闭它们以后再试试。
b. 如果所有网页都打不开,首先先确认路由器分配的dns是否已经修改(使用windows的用户需要清除dns缓存 执行命令ipconfig /flushdns),然后查看路由器的MTU是否是默认值1492,如果不是请修改为1492。

五:区别
区别如下:
  共同点:

  PPTP和L2TP都使用PPP协议对数据进行封装,然后添加附加包头用于数据在互联网络上的传输,两个协议非常相似。
  不同点:

  1.PPTP要求互联网络为IP网络。L2TP只要求隧道媒介提供面向数据包的点对点的连接。L2TP可以在IP(使用UDP),桢中继永久虚拟电路(PVCs),X.25虚拟电路(VCs)或ATM VCs网络上使用。
  2.PPTP只能在两端点间建立单一隧道。L2TP支持在两端点间使用多隧道。使用L2TP,用户可以针对不同的服务质量创建不同的隧道。
  3.L2TP可以提供包头压缩。当压缩包头时,系统开销(overhead)占用4个字节,而PPTP协议下要占用6个字节。
  4.L2TP可以提供隧道验证,而PPTP则不支持隧道验证。但是当L2TP或PPTP与IPSEC共同使用时,可以由IPSEC提供隧道验证,不需要在第2层协议上验证隧道
  使用上的不同:
  1、pptp使用简单方便,不需要做额外配置,连接、断开的速度快,要求防火墙、路由器支持,对网络环境要求比较高。而l2tp需要共享密钥和修改注册表(对win系列机器讲)
  2、l2tp在穿透方面有时候会比pptp强一些, 有一定的网络防闪断能力。适合pptp不能用的环境 OpenVPN穿透能力最强
  3、OpenVPN:穿透能力最强,适合校园网、公司局域网等受限网络环境,第一次使用要安装虚拟网卡。


内容加载中