VPN(虚拟专用网)发展至今已经不在是一个单纯的经过加密的访问隧道了,它已经融合访问控制、传输管理、加密、路由选择、可用性管理等多种个功能,并在全球的信息安全体系中发挥着重要作用。那PPTP方式和L2TP方式的VPN有什么区别呢?那下面我们就给大家介绍一下PPTP-VPN与L2TP-VPN的区别,有需要的朋友可以参考学习。
PPTP
点对点隧道协议(PPTP)是由包括微软和3com等公司组成的PPTP论坛开发的一种点对点隧道协,基于拨号使用的PPP协议使用PAP或CHAP之类的加密算法,或者使用 Microsoft的点对点加密算法MPPE。其通过跨越基于 TCP/IP 的数据网络创建 VPN 实现了从远程客户端到专用企业服务器之间数据的安全传输。PPTP 支持通过公共网络(例如 Internet)建立按需的、多协议的、虚拟专用网络。PPTP 允许加密 IP 通讯,然后在要跨越公司 IP 网络或公共 IP 网络(如 Internet)发送的 IP 头中对其进行封装。
L2TP
第 2 层隧道协议 (L2TP) 是IETF基于L2F (Cisco的第二层转发协议)开发的PPTP的后续版本。是一种工业标准 Internet 隧道协议,其可以为跨越面向数据包的媒体发送点到点协议 (PPP) 框架提供封装。PPTP和L2TP都使用PPP协议对数据进行封装,然后添加附加包头用于数据在互联网络上的传输。PPTP只能在两端点间建立单一隧道。 L2TP支持在两端点间使用多隧道,用户可以针对不同的服务质量创建不同的隧道。L2TP可以提供隧道验证,而PPTP则不支持隧道验证。但是当L2TP 或PPTP与IPSEC共同使用时,可以由IPSEC提供隧道验证,不需要在第2层协议上验证隧道使用L2TP。 PPTP要求互联网络为IP网络。L2TP只要求隧道媒介提供面向数据包的点对点的连接,L2TP可以在IP(使用UDP),桢中继永久虚拟电路 (PVCS),X.25虚拟电路(VCs)或ATM VCs网络上使用。
使用PPTP方式的VPN连接时,VPN服务器端保持着1723端口与客户端一任意端口的TCP连接,TCP端口1723上跑的是PPTPControlMessage,包括了PPTP隧道创建,维护和终止之类的日常管理工作(建立/断开VPN连接的请求等).客户端通过TCP与服务器1723端口建立连接后,进入基于GRE(通用路由协议--IP协议编号为47,TCP的IP协议编号为6)的PPP协商,包括了用户验证,数据传输等所有通讯.断开VPN连接时又用到了基于1723端口的PPTPControlMessage.
也就是说,PPTP方式的VPN连接,VPN客户端的建立/断开连接请求都是通过和服务器的TCP1723端口用PPTP协议联系的,至于具体的用户验证,数据传输等都是通过PPP协议来通讯的,而PPP协议又是跑在GRE(和TCP,UDP协议平行的协议,GRE的IP协议编号为47)之上的.
PPTP方式的VPN有以下几个特点:
1.VPN客户端可以使用私有地址通过NAT服务器来连接具有合法地址VPN服务器;
2.VPN连接时只有一层验证--就是用户身份验证
使用L2TP方式VPN连接时,VPN服务器保持着1701端口与客户端1701端口的UDP"连接".由于Microsoft不鼓励将L2TP直接暴露在网络中,因此自动为L2TP连接创建一个使用证书方式认证IPsec策略(当然可以通过修改注册表使证书认证变成与共享密钥认证)
因此L2TP通讯就被裹在IPsec策略创建的Ipsec隧道内,用ipsecmon可以看清楚实际上还是1701<-->1701的UDP通讯
VPN开始通讯时,需要双方交换密钥,这是通过UPD500端口的ISAKMP来实现的.从此以后所有的VPN通讯,包括建立/断开连接请求,用户验证,数据传输都是通过ESP(与TCP,UDP协议平行的协议,ESP的IP编号为50)之上传输的.
L2TP/IPsec方式的VPN有以下几个特点:
1.VPN客户端无法使用私有地址来连接具有合法地址的VPN服务器(2002年末经过Microsoft公司的努力(MicrosoftKnowledgeBaseArticle-818043),使用了NAT-T技术,可以让L2TP/IPsec方式的VPN可以穿越内网)
2.VPN连接需要两层验证:密钥验证和用户身份验证(其中密钥是Ipsec层面的认证)