PPTP协议
PPTP(Point to Point Tunneling Protocol)提供PPTP客户机和PPTP服务器之间的加密通信。PPTP客户机是指运行了该协议的PC机,如启动该协议的Windows95/98;PPTP服务器是指运行该协议的服务器,如启动该协议的WindowsNT服务器。PPTP是PPP协议的一种扩展。它提供了一种在互联网上建立多协议的安全虚拟专用网(VPN)的通信方式。远端用户能够透过任何支持PPTP的ISP访问公司的专用网。
通过PPTP,客户可采用拨号方式接入公用IP网。拨号用户首先按常规方式拨到ISP的接入服务器(NAS),建立PPP连接;在此基础上,用户进行二次拨号建立到PPTP服务器的连接,该连接称为PPTP隧道,实质上是基于IP协议的另一个PPP连接,其中的IP包可以封装多种协议数据,包括TCP/IP、IPX和NetBEUI。PPTP采用了基于RSA公司RC4的数据加密方法,保证了虚拟连接通道的安全。对于直接连到互联网的用户则不需要PPP的拨号连接,可以直接与PPTP服务器建立虚拟通道。PPTP把建立隧道的主动权交给了用户,但用户需要在其PC机上配置PPTP,这样做既增加了用户的工作量,又会给网络带来隐患。另外,PPTP只支持IP作为传输协议。
转发协议
L2F(Layer Two Forwarding protocol )是由Cisco公司提出的可以在多种介质,如ATM、帧中继、IP网上建立多协议的安全虚拟专用网的通信。远端用户能通过任何拨号方式接入公用IP网,首先按常规方式拨到ISP的接入服务器(NAS),建立PPP连接;NAS根据用户名等信息,建立直达HGW服务器的第二重连接。在这种情况下,隧道的配置和建立对用户是完全透明的。其体系结构见图1。
隧道协议
L2TP介绍
L2TP(Layer Two Tunneling Protocol)结合了L2F和PPTP的优点,允许用户从客户端或访问服务器端建立VPN连接。L2TP是把链路层的PPP帧装入公用网络设施,如IP、ATM、帧中继中进行隧道传输的封装协议。其体系结构见图1。
Cisco、Ascend、Microsoft和RedBack公司的专家们在修改了十几个版本后,终于在1999年8月公布了L2TP的标准RFC2661。现用户拨号访问Internet时,必须使用IP协议,并且其动态得到的IP地址也是合法的。L2TP的好处在于支持多种协议,用户可以保留原有的IPX、Appletalk等协议或公司原有的IP地址。L2TP还解决了多个PPP链路的捆绑问题,PPP链路捆绑要求其成员均指向同一个NAS,L2TP则允许在物理上连接到不同NAS的PPP链路,在逻辑上的终点为同一个物理设备。L2TP扩展了PPP连接,在传统的方式中用户通过模拟电话线或ISDN/ADSL与网络访问服务器建立一个第2层的连接,并在其上运行PPP,第2层连接的终点和PPP会话的终点均设在同一个设备上(如NAS)。L2TP作为PPP的扩充提供了更强大的功能,包括允许第2层连接的终点和PPP会话的终点分别设在不同的设备上。
L2TP主要由LAC(L2TP Access Concentrator)和LNS(L2TP Network Server)构成。LAC支持客户端的L2TP,发起呼叫,接收呼叫和建立隧道;LNS是所有隧道的终点。在传统的PPP连接中,用户拨号连接的终点是LAC,而L2TP能把PPP协议的终点延伸到LNS。
L2TP的建立过程
1.用户通过公用电话网或ISDN拨号呼叫本地接入服务器LAC;LAC接受呼叫并进行基本的识别过程,这一过程可以采用几种标准,如域名、呼叫线路识别(CLID)或拨号ID业务(DNIS)等。
2.当用户被确认为合法企业用户时,就建立一个通向LNS的拨号VPN隧道。
3.企业内部的安全服务器如TACACS+、RADIUS对拨号用户进行验证。
4.LNS与远程用户交换PPP信息,分配IP地址。LNS可采用企业专用地址(未注册的IP地址)或服务提供商提供的地址空间分配IP地址。因为内部源IP地址与目的地IP地址实际上都通过服务提供商的IP网络在PPP信息包内传送,企业专用地址对提供者的网络是透明的。
5.端到端的数据从拨号用户传到LNS。
在实际应用中,LAC将拨号用户的PPP帧封装后,传送到LNS,后者去掉封装包头,取出PPP帧,再去掉PPP帧头,最后获得网络层数据包。
L2TP方式给服务提供商和用户带来了许多方便。用户不需要在PC板上安装专门的客户端软件,企业网可以使用未注册的IP地址,并在本地管理认证数据库,从而降低了应用成本和培训维护费用。
与PPTP和L2F相比,L2TP的优点在于提供了差错和流量控制;L2TP使用UDP封装和传送PPP帧。面向无连接的UDP无法保证网络数据的可靠传输,L2TP使用Nr(下一个希望接受的信息序列号)和Ns(当前发送的数据包序列号)字段进行流量和差错控制。双方通过序列号来确定数据包的顺序和缓冲区,一旦丢失数据,根据序列号可以进行重发。
作为PPP的扩展协议,L2TP支持标准的安全特性CHAP和PAP,可以进行用户身份认证。L2TP定义了控制包的加密传输,每个被建立的隧道分别生成一个独一无二的随机钥匙,以便对付欺骗性的攻击,但是它对传输中的数据并不加密。
L2TP(Layer 2 Tunneling Protocol) 第二层隧道协议。该协议是工业标准的Internet隧道协议。
LAC (L2TP Access Concentrator L2TP访问集中器) 是附属在交换机网络中具有PPP端系统和L2TP协议处理能力的设备。LAC一般是一个网络接入服务器NAS(Network Access Server),主要用于通过PSTN/ISDN网络为用户提供接入服务。
LNS (L2TP Network Server L2TP网络服务器) 是PPP端系统上用于处理L2TP协议服务器端部分的设备。
VPDN (virtual Private Dial Network,虚拟私有拨号网) 指利用公共网络(如ISDN,PSDN)的编号功能及接入网来实现虚拟专用网。
(1)PC机和LNS直连
PC机的报文在PPP内网环境中发送到LAC,由LAC封装L2TP,再通过外网的报文正常转发给LNS的报文封装过程。
LAC和LNS之间存在两种连接,隧道连接(一对LAC和LNS之间可以有多个L2TP隧道)和会话连接(复用在隧道连接之上,用于表示承载在隧道连接中的每个PPP会话进程)
隧道由一个控制连接和一个或多个会话连接组成。会话必须在隧道建立(包括身份保护、L2TP版本、帧类型、硬件传输类型等信息的交换)成功之后进行,每个会话连接对应于LAC和LNS之间的一个PPP数据流。控制消息和PPP数据报文都在隧道上传输。
L2TP使用Hello报文来检测隧道的连通性。LAC和LNS定时向对端发送Hello报文,若在一段时间内未收到Hello报文的应答,该隧道连接将被断开。
L2TP报文头中包含隧道标识符(Tunnel ID)和会话标识符(Session ID)信息,用来标识不同的隧道和会话。隧道标识相同、会话标识不同的报文将被复用在一个隧道上,报文头中的隧道标识符与会话标识符由对端分配。
L2TP是数据链路层协议,报文分为数据消息和控制消息。数据消息用PPP帧,该帧作为L2TP报文的数据区,L2TP不保证数据消息的可靠投递,若报文丢失,不予重传,不支持对数据消息的流量控制和拥塞控制。
控制消息用以建立、维护和终止控制连接及会话,L2TP确保其可靠投递,并支持对控制消息的流量控制和拥塞控制。
通常,L2TP会和IPSec结合使用,IPSec提供加密功能,此时数据封装形式为:
L2TP vs PPTP
(1)PPTP要求互联网络为IP网络,L2TP只要求隧道媒介提供面向数据包的点对点连接。L2TP可以在IP(使用UDP),帧中继永久虚拟电路,ATM 虚拟电路网络上使用
(2)PPTP只能在两端点之间建立单一隧道,L2TP支持在两端点见使用多隧道。使用L2TP,用户可以针对不同的服务质量创建不同的隧道
(3)L2TP可以提供包头压缩。当压缩包头时,系统开销占用4个字节,而PPTP协议要用6个字节
(4)PPTP依靠MPPE提供加密服务,而L2TP依靠IPSec提供加密服务
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)