L2TP与PPTP区别

来源:互联网 发布:ubuntu如何安装exe 编辑:程序博客网 时间:2024/04/30 06:20
L2TP与PPTP区别
2010-06-13 13:12

先来看一下微软KB上关于两种协议的解释:

VPN 隧道协议

应用到: Windows Server 2008

通过隧道可以将来自一种协议类型的数据包封装在其他协议的数据报内。例如,VPN 使用 PPTP 封装通过公用网络(例如 Internet)传输的 IP 数据包。可以配置基于点对点隧道协议 (PPTP)、第二层隧道协议 (L2TP) 或安全套接字隧道协议 (SSTP) 的 VPN 解决方案。

PPTP、L2TP 和 SSTP 对原来为点对点协议 (PPP) 指定的功能十分依赖。PPP 原来是用于通过拨号连接或专用的点对点连接发送数据的。对于 IP,PPP 将 IP 数据包封装在 PPP 帧内,然后通过点对点链路传输封装的 PPP 数据包。PPP 原来定义为在拨号客户端与网络访问服务器之间使用的协议。

PPTP

PPTP 允许对多协议通信进行加密,然后封装在 IP 标头中,以通过 IP 网络或公用 IP 网络(例如 Internet)发送。PPTP 可以用于远程访问连接和站点到站点的 VPN 连接。使用 Internet 作为 VPN 的公用网络时,PPTP 服务器是启用 PPTP 的 VPN 服务器,一个接口在 Internet 上,另一个接口在 Intranet 上。

封装

PPTP 将 PPP 帧封装在 IP 数据报中,以便通过网络传输。PPTP 使用 TCP 连接进行隧道管理,使用修订版的通用路由封装 (GRE) 封装隧道数据的 PPP 帧。封装的 PPP 帧的有效负载可以加密、压缩或加密并压缩。下图显示包含 IP 数据报的 PPTP 数据包的结构。

包含 IP 数据报的 PPTP 数据包的结构

包含 IP 数据报的 PPTP 数据包的结构

加密

可使用 MS-CHAP v2 或 EAP-TLS 身份验证进程生成的加密密钥,通过 Microsoft 点对点加密 (MPPE) 对 PPP 帧进行加密。虚拟专用网络客户端只有使用 MS-CHAP v2 或 EAP-TLS 身份验证协议才能对 PPP 帧的有效负载进行加密。PPTP 利用基础 PPP 加密并封装以前加密的 PPP 帧。

L2TP

L2TP 允许对多协议通信进行加密,然后通过任何支持点对点数据报传输(例如 IP 或异步传输模式 (ATM))的媒体发送。L2TP 是 PPTP 和第 2 层转发 (L2F) 的组合,是 Cisco Systems, Inc. 开发的一项技术。L2TP 代表了 PPTP 和 L2F 的最佳功能。

与 PPTP 不同,Microsoft 实现的 L2TP 不使用 MPPE 对 PPP 数据报进行加密。L2TP 依靠 Internet 协议安全 (IPsec) 传输模式来提供加密服务。L2TP 和 IPsec 的组合称为 L2TP/IPsec。

VPN 客户端和 VPN 服务器必须均支持 L2TP 和 IPsec。L2TP 的客户端支持内置在 Windows Vista® 和 Windows XP 远程访问客户端中,L2TP 的 VPN 服务器支持内置在 Windows Server® 2008 和 Windows Server 2003 系列的成员中。

L2TP 随 TCP/IP 协议一起安装。

封装

L2TP/IPsec 数据包的封装分为两层:

第一层:L2TP 封装

PPP 帧(IP 数据报)使用 L2TP 标头和 UDP 标头封装。

包含 IP 数据报的 L2TP 数据包的结构

包含 IP 数据报的 L2TP 数据包的结构
第二层:IPsec 封装

使用 IPsec 封装安全有效负载 (ESP) 标头和尾端、提供消息完整性和身份验证的 IPsec 身份验证尾部以及最终的 IP 标头来封装生成的 L2TP 消息。IP 标头中是与 VPN 客户端和 VPN 服务器对应的源 IP 地址和目标 IP 地址。

使用 IPsec ESP 对 L2TP 通信进行加密

与 IPsec ESP 的 L2TP 通讯的加密

加密

使用 Internet 密钥交换 (IKE) 协商进程生成的加密密钥,通过数据加密标准 (DES) 或三重 DES (3DES) 对 L2TP 消息进行加密。

SSTP

安全套接字隧道协议 (SSTP) 是一种新的隧道协议,在 TCP 端口 443 上使用 HTTPS 协议,使通信可以通过可能阻止 PPTP 通信和 L2TP/IPsec 通信的防火墙和 Web 代理。SSTP 提供了一种机制,用于封装通过 HTTPS 协议的安全套接字层 (SSL) 通道传输的 PPP 通信。使用 PPP 可以支持强大的身份验证方法(例如 EAP-TLS)。SSL 提供了增强的密钥协商、加密和完整性检查,从而确保了传输级的安全性。

客户端尝试建立基于 SSTP 的 VPN 连接时,SSTP 首先与 SSTP 服务器建立双向 HTTPS 层。通过此 HTTPS 层,协议数据包作为数据有效负载传输。

封装

SSTP 将 PPP 帧封装在 IP 数据报中,以便通过网络传输。SSTP 使用 TCP 连接(在端口 443 上)进行隧道管理,并使用 PPP 数据帧。

加密

SSTP 消息使用 HTTPS 协议的 SSL 通道进行加密。

选择隧道协议

在 PPTP、L2TP/IPsec 和 SSTP 远程访问 VPN 解决方案之间进行选择时,请考虑下列事项:

  • PPTP 可以用于各种 Microsoft 客户端(包括 Microsoft Windows 2000、Windows XP、Windows Vista 和 Windows Server 2008)。与 L2TP/IPsec 不同,PPTP 不要求使用公钥结构 (PKI)。基于 PPTP 的 VPN 连接使用加密来提供数据保密性(没有加密密钥无法解释捕获的数据包)。但是,基于 PPTP 的 VPN 连接不提供数据完整性(保证数据在传输中未更改)或数据源身份验证(保证数据由经过授权的用户发送)。

  • L2TP 只能用于运行 Windows 2000、Windows XP 或 Windows Vista 的客户端计算机。L2TP 支持将计算机证书或预共享密钥作为 IPsec 的身份验证方法。计算机证书身份验证是建议的身份验证方法,要求使用 PKI 来向 VPN 服务器计算机和所有 VPN 客户端计算机颁发计算机证书。L2TP/IPsec VPN 连接使用 IPsec 来提供数据保密性、数据完整性和数据身份验证。

    与 PPTP 和 SSTP 不同,L2TP/IPsec 启用 IPsec 层的计算机身份验证和 PPP 层的用户级身份验证。

  • SSTP 只能用于运行 Windows Vista Service Pack 1 (SP1) 或 Windows Server 2008 的客户端计算机。SSTP VPN 连接使用 SSL 来提供数据保密性、数据完整性和数据身份验证。

  • 三种隧道类型均在网络协议堆栈顶部传送 PPP 帧。因此,三种隧道类型的 PPP 常用功能(例如身份验证方案、Internet 协议第 4 版 (IPv4) 协商和 Internet 协议第 6 版 (IPV6) 协商以及网络访问保护 (NAP))保持相同。

这是百度上查到的区别:

L2TP与PPTP的不同:

PPTP和L2TP都使用PPP协议对数据进行封装,然后添加附加包头用于数据在互联网络上的传输。尽

L2TP

管两个协议非常相似,但是仍存在以下几方面的不同:

  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层协议上验证隧道

  5.L2TP访问集中器(L2TP Network Server,LNS)是一种附属在网络上的具有PPP端系统和L2Tpv2协议处理能力的设备,它一般就是一个网络接入服务器软件,在远程客户端完成网络接入服务的功能。

  6.L2TP网络服务器(L2TP Network Server,LNS)是用于处理L2TP协议服务器端的软件。PPTP和L2TP都使用PPP协议对数据进行封装,然后添加附加包头用于数据在互联网络上的传输。


原创粉丝点击