隧道协议比较
2.1 L2TP
PPTP(点到点隧道协bai议)是在Window95/98中支持的,为中小du企业提供的一个VPN解决方案。但zhi根据一群安全专家dao的研究,PPTP在实现上存在着重大的安全问题,它的安全性甚至比PPP(点到点协议)还要弱,因此PPTP协议存在着重大安全缺陷。L2F协议的主要缺陷是没有把标准加密方法包括在内,因此它基本上已经成为一个过时的隧道协议。
L2TP协议结合了Microsoft的PPTP和Cisco的L2F(二层前向转发)的优点。L2TP提供了一种PPP包的机制,特别适合于通过VPN拨号进入一个专用网络的用户。L2TP支持在各种网络连接上提供PPP包的封装,支持一个用户同时使用多个并发的隧道。它同样适用于非IP协议,支持动态寻址,是目前唯一能够提供全网状Intranet VPN连接的多协议隧道。
2.2 IPSec
IPSec是一组开放的 网络安全 网络安全 协议的总称,提供访问控制、无连接的完整性、数据来源验证、防重放保护、加密以及数据流分类加密等服务。IPSec在IP层提供这些安全服务,它包括两个安全协议AH(报文验证头协议)和ESP(报文安全封装协议)。AH主要提供的功能有数据来源验证、数据完整性验证和防报文重放功能。ESP在AH协议的功能之外再提供对IP报文的加密功能。AH和ESP同时具有认证功能,IPSec存在两个不同的认证协议是因为ESP要求使用高强度密码学算法,无论产际上是否在使用。而高强度密码学算法在很多国家都存在很多严格的政策限制。但认证措施是不受限制的,因此AH可以在全世界自由使用。另外一个原因是很多情况下人们只使用认证服务。AH或ESP协议都支持两种模式的使用:隧道模式和传输模式。隧道模式对传经不安全的链路或Internet的专用IP内部数据包进行加密和封装(此种模式适合于有NAT的环境)。传输模式直接对IP负载内容(即TCP或UDP数据)加密(适合于无NAT的环境)。
2.3 MPLS VPN
MPLS实际上就是一种隧道技术,所以使用它来建立VPN隧道是十分容易的。同时,MPLS是一种完备的网络技术,可以用它来建立起VPN成员之间简单而高效的VPN。MPLS VPN适用于实现对于服务质量、服务等级划分以及网络资源的利用率,网络的可靠性有较高要求的VPN业务。用户边缘(CE) 路由器 路由器 是用于将一个用户站点接入服务提供者网络的用户边缘路由器。CE路由器不使用MPLS,它可以只是一台IP路由器。CE不必支持任何VPN的特定路由协议或信令。提供者边缘(PE)路由器是与用户CE路由器相连的服务提供者边缘路由器。PE实际上就是MPLS中的边缘标记交换路由器(LER),它需要能够支持BGP协议,一种或几种IGP路由协议以及MPLS协议,需要能够执行IP包检查,协议转换等功能。用户站点是指这样一组网络或多条PE/CE链路接至VPN。一组共享相同路由信息的站点就构成了VPN。一个站点可以同时位于不同的几个VPN之中。
与前面几种VPN技术不同,MPLS VPRN网络中的主角虽然仍然是边缘路由器(此时是MPLS网络的边缘LSR),但是它将需要公共IP网内部的所有相关路由器都能够支持MPLS,所以这种技术对网络有较为特殊的要求。2.4 GRE
通用路由协议封装(GRE)规定了如何用一种网络协议去封装另一种网络协议的方法。
整理:关于PPP、PPOE、PPTP、L2TP、隧道技术的整理
1、PPP:(PPP:Point to Point Protocol) 点对点协议(PPP)为基于点对点连接的多协议自寻址数据包的传输提供了一个标准方法。PPP 最初设计是为两个对等结构之间的 IP 流量的传输提供一种封装协议。在 TCP-IP 协议集中它是一种关于同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原非标准第二层协议,即 SLIP。除了 IP 以外 PPP 还可以传送其它协议,包括 DECnet 和 Novell 的 Internet 网包交换(IPX)。PPP 主要由以下几部分组成:封装:一种封装多协议数据报的方法。PPP 封装提供了不同网络层协议同时通过统一链路的多路技术。(人们)精心的设计 PPP 封装,使其保有对常用支持硬件的兼容性。 链路控制协议:为了在一个很宽广的环境内能足够方便的使用,PPP 提供了 LCP。LCP 用于就封装格式选项自动的达成一致,处理数据包大小的变化,探测 looped-back 链路和其他普通的配置错误,以及终止链路。提供的其他可选设备有:对链路中对等单元标识的认证,和链路功能正常或链路失败情况下的决定。网络控制协议:一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。配置:通过链路控制协议使 PPP 链路很容易配置。该机制也应用于其它控制协议如网络控制协议(NCPs) 为了建立点对点链路通信,PPP 链路的每一端,必须首先发送 LCP 包以便设定和测试数据链路。在链路建立之后,LCP 可选设备才可以被认证。然后,PPP 必须发送 NCP 包以便选择和设定一个或更多的网络层协议。一旦每个被选择的网络层协议都被设定好了,来自每个网络层协议的数据报就能在连路上发送了。链路将保持通信设定不变,直到外在的 LCP 和 NCP 关闭链路,或者是发生一些外部事件的时候(如,休止状态的定时器期满或者网络管理员干涉)。
2、PPPoE(英语:Point-to-Point Protocol over Ethernet),以太网上的点对点协议,是将点对点协议(PPP)封装在以太网(Ethernet)框架中的一种网络隧道协议。由于协议中集成了PPP协议,所以实现了传统以太网不能提供的身份验证、加密以及压缩等功能,也可用于缆线调制解调器(cable modem)和数字用户线路(DSL)等以以太网协议向用户提供接入服务的协议体系。本质上,它是一个允许在以太广播域中的两个以太网接口间创建点对点隧道的协议。
3、(PPTP: Point to Point Tunneling Protocol)点对点隧道协议(PPTP)是一种支持多协议虚拟专用网络的网络技术。通过该协议,远程用户能够通过 UNIX、Microsoft Windows 2003 、XP、2000、 NT、 工作站、Windows 95 和 Windows 98 操作系统以及其它装有点对点协议的系统安全访问公司网络,并能拨号连入本地 ISP ,通过 Internet 安全链接到公司网络。PPTP 可以用于在 IP 网络上建立 PPP 会话隧道。在这种配置下, PPTP 隧道和 PPP 会话运行在两个相同的机器上,呼叫方充当 PNS 。 PPTP 使用客户机-服务器结构来分离当前网络访问服务器具备的一些功能并支持虚拟专用网络。 PPTP 作为一个呼叫控制和管理协议,它允许服务器控制来自 PSTN 或ISDN 的拨入电路交换呼叫访问并初始化外部电路交换连接。PPTP 只能通过 PAC 和 PNS 来实施,其它系统没有必要知道 PPTP 。拨号网络可与 PAC 相连接而无需知道 PPTP 。标准的 PPP 客户机软件可继续在隧道 PPP 链接上操作。PPTP 使用 GRE 的扩展版本来传输用户 PPP 包。这些增强允许为在 PAC 和 PNS 之间传输用户数据的隧道提供低层拥塞控制和流控制。这种机制允许高效使用隧道可用带宽并且避免了不必要的重发和缓冲区溢出。 PPTP 没有规定特定的算法用于低层控制,但它确实定义了一些通信参数来支持这样的算法工作。两者的同:都支持多协议 异:PPP可以在使用PPTP里使用。
4、L2TP是一种工业标准的Internet隧道协议,功能大致和PPTP协议类似,比如同样可以对网络数据流进行加密。不过也有不同之处,比如PPTP要求网络为IP网络,L2TP要求面向数据包的点对点连接;PPTP使用单一隧道,L2TP使用多隧道;L2TP提供包头压缩、隧道验证,而PPTP不支持。
5、隧道技术(Tunneling)
隧道技术的基本过程是在源局域网与公网的接口处将数据(可以是ISO 七层模型中的数据链路层或网络层数据)作为负载封装在一种可以在公网上传输的数据格式中,在目的局域网与公网的接口处将数据解封装,取出负载。被封装的数据包在互联网上传递时所经过的逻辑路径被称为“隧道”(Tunnel)。
要使数据顺利地被封装、传送及解封装,通信协议是保证的核心。目前VPN隧道协议主要有4种:点到点隧道协议PPTP、第二层隧道协议L2TP、网络层隧道协议IPSec以及SOCKS v5协议。其中,PPTP和L2TP工作在数据链路层,IPSec工作在网络层,SOCK v5工作在会话层。各协议工作在不同层次,我们应该注意,不同的网络环境适合不同的协议,在选择VPN产品时,应该注意选择。IPSec协议是一个范围广泛、开放的VPN安全协议,工作在OSI模型中的第三层——网络层。IPSec协议实际上是一套协议而不是一个单个的协议