【原创】L2TP封装详解
- 格式:docx
- 大小:1.01 MB
- 文档页数:5
第二层隧道协议L2TP详解1、引言隧道技术是建立安全VPN的基本技术之一,类似于点对点连接技术,在公用网建立一条数据遂道,让数据包通过这条隧道传输。
隧道是由隧道协议形成的,分为第二、三层隧道协议。
第二层隧道协议有L2F、PPTP和L2TP等,是先把各种网络协议封装到PPP中,再把整个数据包装入隧道协议中。
这种双层封装方法形成的数据包靠第二层协议进行传输。
第三层隧道协议有GRE、IPSEC等。
第二层隧道协议和第三层隧道协议的本质区别在于在隧道内用户的数据包是被封装在哪种数据包中进行传输的。
L2TP隧道协议是典型的被动式隧道协议,它结合了L2F和PPTP的优点,可以让用户从客户端或访问服务器端发起VPN连接。
L2TP是把链路层PPP帧封装在公共网络设施如IP、ATM、帧中继中进行隧道传输的封装协议。
L2TP主要由LAC(L2TP Access Concentrator) 和LNS(L2TP Network Server) 构成,LAC支持客户端的L2TP,用于发起呼叫、接收呼叫和建立隧道;LNS是所有隧道的终点,LNS终止所有的PPP流。
在传统的PPP连接中,用户拨号连接的终点是LAC,L2TP使得PPP协议的终点延伸到LNS。
L2TP的好处在于支持多种协议,用户可以保留原有的IPX、Appletalk等协议或公司原有的IP 地址。
L2TP还解决了多个PPP链路的捆绑问题,PPP链路捆绑要求其成员均指向同一个NAS(Network Access Server),L2TP可以使物理上连接到不同NAS的PPP链路,在逻辑上的终结点为同一个物理设备。
L2TP还支持信道认证,并提供了差错和流量控制。
L2TP利用IPsec增强了安全性,支持数据包的认证、加密和密钥管理。
L2TP/IPSec因此能为远程用户提供设计精巧并有互操作性的安全隧道连接。
这对安全的远程访问和安全的网关之间连接来说,它是一个很好的解决方案。
L2TP协议特点一.L2TP协议具有以下优势:1.灵活的身份验证机制以及高度的安全性L2TP本身并不保证连接的安全性,但它可利用PPP提供的认证机制(如CHAP、PAP),因此具有PPP的所有安全特性。
L2TP可以与IPSec结合,使通过L2TP所传输的数据更难被攻击。
可根据特定的网络安全要求,在L2TP之上采用通道加密技术、端对端数据加密或应用层数据加密等方案来提高安全性。
2.多协议传输L2TP传输PPP数据包,PPP本身可以传输多协议,而不仅仅是IP。
可以在PPP 数据包内封装多种协议,甚至运载链路层协议(如Ethernet)。
3.支持RADIUS服务器的验证LAC端支持将用户名和密码发往RADIUS服务器进行验证申请,由RADIUS服务器负责接收用户的验证请求,完成验证。
4.支持内部地址分配LNS可放置于企业网的防火墙之后,对远端用户地址进行动态分配和管理,并支持私有地址应用(RFC1918,Address Allocation for Private Internets)。
5.网络计费的灵活性可在LAC和LNS同时计费,即ISP处(用于产生帐单)及企业网关(用于付费及审计)。
L2TP能够提供数据传输的出入包数、字节数以及连接的起始、结束时间等计费数据,可根据这些数据方便地进行网络计费。
6.可靠性L2TP协议支持备份LNS,当一个主LNS不可达之后,LAC可以与备份LNS建立连接,增强了VPN服务的可靠性和容错性。
二.L2TP协议的不足L2TP协议存在以下不足:1.L2TP隧道内封装了整个PPP帧,在L2TP封装后还要进行UDP头和IP头的封装,开销很大,可能产生传输效率问题。
2.PPP会话贯穿整个隧道并终止在用户侧设备上,导致用户侧网关需要保存大量PPP会话状态与信息,对系统负荷产生较大的影响,也影响到系统的扩展性。
3.由于PPP的LCP及NCP协商对时间敏感,隧道效率降低会造成PPP对话超时等问题。
L2TP协议特点与原理L2TP(Layer 2 Tunneling Protocol)是一种用于虚拟专用网络(VPN)的隧道协议。
它通过在现有的网络基础设施中创建VPN连接,使得用户可以安全地访问私有网络资源。
本文将介绍L2TP协议的特点与原理,帮助读者更好地理解这一协议的工作机制。
一、L2TP协议特点1.1 无连接性L2TP协议建立的连接是无连接的,即在通信开始前不需要建立持久的连接。
这使得L2TP协议非常适用于互联网等不可靠的网络环境中。
1.2 兼容性强L2TP协议能够与其他的隧道协议相互兼容,例如IPsec协议。
这使得它可以与不同厂商、不同设备之间的VPN连接进行互操作。
1.3 支持多种验证和加密技术L2TP协议支持多种验证和加密技术,例如PAP(Password Authentication Protocol)、CHAP(Challenge Handshake Authentication Protocol)和MS-CHAPv2(Microsoft Challenge Handshake Authentication Protocol version 2)等。
这些技术可以确保用户身份的安全,并保护通信内容的机密性。
1.4 支持多种信道类型L2TP协议支持多种信道类型,如以太网、同步光纤传输模式(Synchronous Optical Networking)、异步传输模式(Asynchronous Transfer Mode)等。
这使得L2TP协议可以在不同网络环境下进行部署和使用。
1.5 提供高效的隧道交换L2TP协议通过构建隧道,将数据进行封装和传输。
它可以在多个隧道之间快速切换,以提供高效的传输效果。
二、L2TP协议原理2.1 隧道建立与维护L2TP协议需要在两个网络节点之间建立隧道,即L2TP隧道。
隧道的建立包括三个阶段:隧道建立、控制连接建立和数据连接建立。
首先,两个网络节点之间通过IP网络建立L2TP隧道。
L2TP(Layer 2 Tunneling Protocol)是一种用于建立虚拟专网(VPN)隧道连接的协议。
它结合了点对点隧道协议(PPTP)和层二转发协议(L2F)的优点,提供了一种可靠、安全和高效的通信方式。
本文将介绍L2TP隧道的实现原理。
一、L2TP概述L2TP是在数据链路层上运行的一种隧道协议。
它允许用户通过公共网络(如Internet)建立安全的私有连接,从而扩展局域网(LAN)的范围。
L2TP隧道通过封装和加密数据包,在公共网络上传输私有数据,保证数据的机密性和完整性。
二、L2TP隧道实现原理1. 建立隧道连接L2TP隧道的建立需要两个主要组件:L2TP Access Concentrator(LAC)和L2TP Network Server(LNS)。
LAC作为客户端负责发起连接请求,LNS作为服务器接受连接请求。
当LAC希望建立一个隧道连接时,它向LNS发送一个连接请求。
2. 握手过程LAC和LNS之间的握手过程包括以下步骤:a. LAC发送SCCRQ(Start-Control-Connection-Request)消息给LNS,包含LAC的身份验证信息。
b. LNS收到SCCRQ消息后,发送SCCRP (Start-Control-Connection-Reply)消息给LAC,确认连接请求。
c. LAC收到SCCRP消息后,发送SCCCN (Start-Control-Connection-Connected)消息给LNS,表示连接已建立。
3. 隧道数据传输一旦隧道连接建立,L2TP开始封装并加密数据包以在公共网络上传输。
每个隧道都有一个唯一的隧道标识符(Tunnel ID),用于区分不同的隧道连接。
LAC和LNS之间通过隧道传输L2TP数据包,以及其他协议(如IP、PPP等)的数据包。
4. L2TP数据封装L2TP将原始数据包封装到L2TP数据包中,以便在隧道中传输。
L2TP (二层隧道协议)1.第二层隧道协议:所谓二层VPN是指工作在数据链路层的VPN技术,VPN隧道内封装数据链路帧。
L2TP,PPTP和MPLS L2 VPN 等技术允许在IP隧道中传送二层的PPP帧或以太帧通过这些技术,VPN的用户,站点之间直接通过链路层连接,可以运行各自不同的网络层协议。
这些都属于二层VPN的实现2.第三层隧道协议:三层VPN又称为网络层VPN,在这一级别里,VPN站点通过网络层协议互联,隧道内封装三层数据包。
例如,GRE对三层数据包加以封装,可以构建GRE隧道,这就是一种网络层隧道。
又如IPSEC,通过AH和ESP对三层数据包直接进行安全处理,等等。
这些都是典型的三层VPN。
简介:由IETF起草,微软,CISCO.3COM等公司参与制定的2层隧道协议;是PPTP与L2F(二层转发协议)的组合,定义在RFC2661及3428里;合并了IPsec的安全性及用户验证、隧道地址分配和配置以及PPP的多协议支持。
L2TP以UDP/IP承载,注册UDP端口号为1701 (区别于PPTP的控制连接为TCP,数据为GRE(协议号47))其运行模式:1、强制隧道模式:(用户PC不为隧道终端)LAC端接来自远程接入客户的呼叫,然后通过中间网络以隧道方式将其PPP会话延伸到LNS,这种模式不要求远程客户了解L2TP,远程接入客户只需要使用PPP拨号到LAC即可。
2、自发隧道模式:(用户PC为隧道终端)在自发隧道模式下,远程接入客户运行L2TP软件,充当了L2TP连接模型中的LAC远程接入客户/LAC连接到LNS,PPP帧通过L2TP隧道直接在客户和LNS之间转发强制与自发在于与LNS建立隧道的终端类型一个用户侧的IP报文的传递过程来描述L2TP VPN工作原理:从远程系统向服务器方向上:1、原始数据(IP包)用PPP封装;2、在LAC用L2TP封装(隧道ID、会话ID等),再用UDP封装(源目1701);3、IP封装(公有IP头部)区别于PPTP采用MPPE加密(经PPP协商),L2TP数据采用IPsec的ESP的传输模式保护(可以不采用IPsec,如不采用,则不能启用加密功能)注:AH亦被L2TP/IPsec所支持,但因为地址转换问题,故不常使用LAC与LNS两种连接:1、隧道的控制连接:控制连接的作用是建立,维护和释放隧道中的会话以及隧道本身2、会话连接:用在隧道连接之上,用于表示承载在隧道连接中的每个PPP会话过程。
二三层隧道协议
一直知道L2TP是第二层隧道协议,GRE是第三层隧道协议,可是一直不是太明白,今天总结一下自己理解的。
L2TP是用于三层网络上承载二层协议报文的隧道协议,是用于在三层网络上跑PPP 的。
GRE是通用路由封装协议,内部能封装二层,三层,MPLS……它能封装的报文类型很多,但一般都用于封装三层报文,所以也有叫三层隧道协议的,但这个说法也不严谨。
例如:GRE能封装MPLS,ISIS等,这些都不是三层报文。
Gre over ipsec就是通过GRE将广播,组播,非IP报文通过GRE封装变成单播IP报文,然后再用IPSEC封装加密,IPSEC是个标准的三层隧道协议,它只能承载单播IP报文。
L2TP原理第2层通道协议(L2TP)让拨号用户可以通过虚拟点对点协议(PPP)连接到L2TP网络服务器(L2TP),而该服务器可以是一台LinkTrust UTM。
L2TP通过L2TP存取集中器(LAC)和LNS之间的一个通道发送PPP帧。
最初设计L2TP的目的,是在位于一个ISP网站上的LAC和另一ISP 网站或企业网站上的LNS之间建立通道连接。
L2TP通道没有完全扩展到拨号用户的计算机上,而只是扩展到拨号上网用户本地ISP的LAC上。
因为PPP链接通过互联网从拨号用户扩展到LNS,所以是由LinkTrust UTM而不是由ISP 来分配客户机的IP地址、DNS 和WINS 服务器地址,以及从本地数据库或外部认证服务器(RADIUS、SecurID 或LDAP)认证用户。
拨号用户收到两个IP地址,一个用于它和ISP的物理连接,另一个是来自LNS的逻辑连接。
当拨号用户(例如使用PPP)与自己的ISP联系时,该ISP进行IP和DNS指派,并对用户进行认证。
这样允许用户以可路由的IP地址连接到互联网,该IP地址成为L2TP 通道的外部IP地址。
然后,当L2TP通道向LinkTrust UTM转发封装PPP帧时,该LinkTrust UTM为用户分配IP 地址以及DNS和WINS设置。
该IP地址可以是私有的不可路由地址,它成为L2TP 通道的内部地址。
尽管可以使用CHAP或PAP认证拨号用户,但是L2TP 通道没有加密,因此它不是一个真正的VPN 通道。
L2TP的目的只是允许本地LinkTrust UTM的管理员为远程拨号用户分配IP 地址。
然后这些地址可以被引用到策略中。
要加密一个L2TP通道,需要为该L2TP 通道应用一个加密方案。
因为L2TP假设LAC与LNS之间的网络为IP,因此可以使用IPSec来提供加密。
这种组合称为IPSec 上的L2TP。
IPSec上的L2TP 要求用同样的端点设置一个L2TP通道和IPSec通道,然后在策略中将它们链接到一起。
L2TP原理与应用目录1 VPN简介 (2)1.1VPN产生背景 (2)1.2 典型VPN协议介绍 (2)2 L2TP原理 (2)2.1 L2TP协议简介 (2)2.2 L2TP报文介绍 (3)2.3 L2TP连接协商、维持、拆除过程 (5)2.4 L2TP数据传输 (6)2.5 L2TP应用模型 (7)3 L2TP验证 (8)3.1 Intranet VPN (8)3.2 Access VPN (16)4 总结 (19)1 VPN简介1.1VPN产生背景目前全球使用的互联网(Internet)是全球范围内各种不同类型的计算机网络连接起来的一个全球性的网络,以此来达到资源共享的目的。
不过internet网络规模巨大,资源丰富,但用户的行为无法约束,其安全性往往得不到保障,另一方面,合法IP地址(global ip)资源也相当匮乏,所以这时候能够同时确保网络安全和解决global ip地址匮乏的机制就提出了需求。
而通过互联网同时能够解决以上两个问题的网络组建就被称作“专网(Virtual Network)”,比如:银行、军队、政府等行业或单位。
通常都组建有自己的专网,建设自己网络体系的基础设施,完成自己内部的资源共享。
当专网需要在互联网之中建立起来时,需要在internet这个网络环境中,虚拟出一个“隧道”,用户可以通过这个隧道相互通信,同时不需要对每个用户设置合法的公有地址,对于隧道外的用户,该虚拟隧道中的数据也不可见的,达到了确保通信安全的目的,此虚拟隧道就称作VPN(Virtual Private Network)。
1.2 典型VPN协议介绍隧道协议协议分为第二层、第三层隧道协议,二者本质区别在于用户的数据包是被封装到那一层的隧道里进行传输的,即建立这个隧道的协议是几层协议。
二层隧道协议:PPTP、L2F、L2TP三层隧道协议:IPsec2 L2TP原理2.1 L2TP协议简介L2TP(layer 2 Tunnel Protocol),它将二层用户数据帧(PPP帧)放到一个逻辑隧道中传输的二层隧道协议。
技术点详解---L2TP VPN L2TP VPN的原生使用环境第9期专栏讲的是VPN的起源,这一期讲讲VPN中的VPDN(Virtual Private Dial Network虚拟拨号专线网络)的主力技术L2TP(Layer 2 Tunnel Protocol二层隧道协议l),上图说明了VPDN的一些特点,出差员工或者外出员工通过拨特定号码的方式接入到企业内部网络:1.运营商对外提供L2TP VPN服务2.有远程拨入需要的企业想运营商提出申请,交费,开通3.企业要对运营商提供一个L2TP LNS(L2TP Network Server网络服务器)作为企业内部网络入口4.运营商提供一个L2TP LAC(L2TP Access Concentrator接入汇聚点),LAC要和企业LNS之间跨越运营商IP网络建立L2TP隧道,同时运营商将一个电话号码15400分配给LAC,以供出差员工拨入5.当出差员工或者外出员工使用Modem或者特制手机拨打号码15400,此时Modem就连接到LAC6.L2TP是收费服务,而且企业不可能让任何人拨入这个网络,所以安全性肯定要考虑,结合上期网络身份保护的内容,LAC对拨入用户要进行身份确认,典型的身份确认方式就是用户名、密码验证,这个身份信息列表由企业提供,运营商执行C确认身份无误后就把这次呼叫封装到L2TP隧道里送给LNS8.LNS再对用户进行一次身份验证,验证通过后对远端用户分配IP地址9.远端用户获得IP地址后,就可以访问企业内部网络了具体处理流程如下:从上图可以发现,出差员工和LAC之间只有PPP会话,没有任何L2TP的内容,L2TP隧道、会话只存在于LAC和LNS之间:1.L2TP使用的是UDP封装,端口号17012.L2TP隧道在LAC和LNS之间只有1个,协商隧道时可以使用身份确认3.L2TP会话在隧道内部可以有多个,一个会话对应一个PPP会话,即有多少个出差员工拨号,就会有多少个L2TP会话所以,如果一个出差员工拨号到LAC时,LAC检查到LNS的L2TP隧道已经建立,那么LAC直接和LNS协商一个新会话;当一个隧道内没有任何会话时,隧道才会被拆除。
L2TP原理详解1. 前言L2TP(Layer 2 Tunneling Protocol)是一种用于建立虚拟专用网络(VPN)连接的协议。
它在传输层和网络层之间提供了一种封装机制,可以将数据包从一个网络发送到另一个网络,同时保护数据的安全性和完整性。
本文将详细解释L2TP的基本原理,包括其工作流程、封装机制以及与其他相关协议的关系。
2. L2TP的工作流程L2TP的工作流程可以分为三个阶段:隧道建立、数据传输和隧道终止。
2.1 隧道建立在隧道建立阶段,需要进行以下步骤:1.客户端发起连接请求:客户端向服务器发起L2TP连接请求,并指定要使用的隧道类型(例如IPsec)。
2.隧道建立协商:服务器接收到连接请求后,与客户端进行隧道参数的协商。
这些参数包括隧道类型、加密算法、认证方法等。
3.隧道认证:客户端和服务器之间进行身份认证,以确保连接的安全性。
常见的认证方法有预共享密钥、数字证书等。
4.隧道建立完成:一旦隧道建立完成,客户端和服务器之间就可以开始进行数据传输。
2.2 数据传输在隧道建立完成后,客户端和服务器之间可以开始进行数据传输。
具体流程如下:1.数据封装:客户端将要传输的数据封装为L2TP数据包,并添加L2TP头部。
2.数据加密:可选的步骤,如果在隧道建立阶段协商了加密算法,则需要对封装后的数据进行加密。
3.数据传输:加密后的数据通过底层网络(如互联网)发送到服务器。
4.数据解密:服务器接收到数据后,根据协商的加密算法对数据进行解密。
5.数据解封装:服务器将解密后的数据从L2TP数据包中提取出来,并交给目标网络处理。
2.3 隧道终止在通信结束或需要终止隧道时,需要进行以下步骤:1.隧道终止请求:一方向另一方发送隧道终止请求。
2.隧道终止确认:接收到终止请求的一方发送确认消息。
3.隧道断开:双方都确认隧道终止后,断开连接。
3. L2TP的封装机制L2TP使用了两个层次的封装机制:L2TP头部和UDP/IP头部。
l2tp协议封装过程L2TP(Layer 2 Tunneling Protocol)是一种用于建立虚拟私人网络(VPN)连接的协议。
它通过封装数据包,并在公共网络上进行传输,以实现远程访问和安全通信。
本文将为您详细介绍L2TP协议的封装过程。
L2TP协议的封装过程可分为以下几个步骤:1. 建立L2TP隧道:在L2TP封装过程中,首先需要建立L2TP隧道。
L2TP隧道由L2TP客户端和L2TP服务器之间的通信通道组成。
在建立隧道之前,L2TP客户端和服务器需要进行身份验证和协商连接参数等操作。
2. 创建L2TP数据包:隧道建立后,L2TP客户端将要发送的数据封装成L2TP数据包。
L2TP数据包由控制消息和数据消息组成。
控制消息用于管理L2TP隧道的连接和配置,而数据消息用于传输实际的数据。
3. 封装L2TP数据包:L2TP数据包需要通过封装来进行传输。
封装过程中,L2TP数据包被添加了L2TP头部和UDP/IP头部,并通过公共网络进行传输。
L2TP头部包含了L2TP协议的相关信息,如隧道ID、会话ID等。
UDP/IP头部则负责将封装后的数据包进行网络传输。
4. 发送封装后的数据包:封装完成后的L2TP数据包将通过公共网络进行发送。
L2TP数据包会在公共网络中被路由器、交换机等网络设备转发,直到到达目的地的L2TP服务器。
5. 解封装L2TP数据包:一旦封装后的L2TP数据包到达L2TP服务器,服务器将对数据包进行解封装。
解封装过程中,L2TP服务器会去除L2TP头部和UDP/IP头部,还原出原始的L2TP数据包。
6. 处理L2TP数据包:L2TP服务器在解封装后,会对L2TP数据包进行处理。
根据L2TP头部中的隧道ID和会话ID等信息,服务器可以将数据包路由到正确的目标用户或目标网络。
7. 传递数据:最后,L2TP服务器将处理后的数据包传递给目标用户或目标网络。
用户或网络可以根据自己的需要对数据进行进一步处理或使用。
第二层隧道协议L2TP的技术解析第二层隧道协议(L2TP)是一种用于在IP网络上传输数据的隧道协议。
它结合了点对点协议(PPP)和L2F(Layer 2 Forwarding)协议的优点,可以用于在公共网络上建立安全的虚拟专用网络(VPN)连接。
L2TP主要用于远程访问服务,如远程办公和远程终端访问。
L2TP的基本原理是在IP数据报中封装PPP数据包。
它使用UDP端口1701进行通信。
当建立L2TP连接时,主机之间会建立一个控制通道和一个数据通道。
控制通道用于建立、维护和终止连接,而数据通道用于传输实际的数据。
L2TP可以通过支持PPPoE(PPP over Ethernet)或PPTP (Point-to-Point Tunneling Protocol)等协议进行身份验证和数据传输。
L2TP具有以下特点和优势:1. 安全性:L2TP可以使用IPsec(Internet Protocol Security)协议进行安全传输,以加密数据和验证连接的安全性。
这样可以防止数据被窃听、篡改和伪装。
2. 兼容性:L2TP可以与多种VPN协议结合使用,如IPsec、PPTP和L2F。
这使得L2TP成为一个通用的隧道协议,可以在不同的网络环境中使用。
3. 网络透明性:L2TP在网络层上进行封装,这意味着它可以通过各种网络设备和协议传输数据。
这样可以确保数据可靠地传输,并且可以穿越NAT(Network Address Translation)和防火墙。
4. 可扩展性:L2TP可以集成各种认证和授权机制,如RADIUS (Remote Authentication Dial-In User Service)和LDAP(Lightweight Directory Access Protocol)。
这使得L2TP可以适应不同的用户和组织需求。
5.管理灵活性:L2TP支持强大的管理功能,可以通过配置参数和策略来控制和监视连接。
L2TP端口为UDP 1701
1. L2TP控制报文
IP网上的L2TP控制消息以UDP数据报形式发送。
在Windows 2000实现中,L2TP控制消息即UDP数据报经过IPSec ESP的加密,见下图:
由于UDP提供的是无连接的数据包服务,因此L2TP采用将消息序列化的方式来保证L2TP 消息的按序递交。
在L2TP控制消息中,Next-Received字段(类似于TCP中的确认字段)和Next-Sent字段(类似于TCP中序列号字段)用于维持控制消息的序列化。
无序数据包将被丢弃。
Next-Received字段和Next-Sent字段同样用于用户传输数据的按序递交和流控制。
L2TP支持一条隧道内的多路呼叫。
在L2TP的控制消息中以及L2TP数据帧的报头内,Tunnel ID标识了一条隧道而Call ID标识了该隧道内的一路呼叫。
2. L2TP协商参数过程:
L2TP的PPP LCP协商报文结构:
3. L2TP数据报文封装结构
L2TP用户传输数据的隧道化过程采用多层封装的方法。
下图显示了封装后在隧道中传输的基于IPSec的L2TP数据包格式。
1)L2TP封装
初始PPP有效载荷如IP数据报、IPX数据报或NetBEUI帧等首先经过PPP报头和L2TP 报头的封装。
2)UDP封装
L2TP帧进一步添加UDP报头进行UDP封装,在UDP报头中,源端和目的端端口号均设置
为1701。
3)IPSec封装
基于IPSec安全策略,UDP消息通过添加IPSec封装安全负载ESP报头、报尾和IPSec 认证报尾(Auth trailer),进行IPSec加密封装。
4)IP封装
在IPSec数据报外再添加IP报头进行IP封装,IP报头中包含VPN客户机和服务器的源端和目的端IP地址。
5)数据链路层封装
数据链路层封装是L2TP帧多层封装的的最后一层,依据不同的外发物理网络再添加相应的数据链路层报头和报尾。
例如,如果L2TP帧将在以太网上传输,则用以太网报头和报尾对L2TP帧进行数据链路层封装;如果L2TP帧将在点-点WAN上传输,如模拟电话网或ISDN 等,则用PPP报头和报尾对L2TP帧进行数据链路层封装。
6)基于IPSec的L2TP隧道化数据的解封装过程
在接收到L2TP帧后,L2TP客户机或服务器将做如下解封装处理:
1.处理并去除数据链路层报头和报尾
2.处理并去除IP报头
3.用IPSec ESP认证报尾对IP有效载荷和IPSec ESP报头进行认证
4.用IPSec ESP报头对数据报的加密部分进行解密
5.处理UDP报头并将数据报提交给L2TP协议
6.L2TP协议依据L2TP报头中Tunnel ID和Call ID分解出某条特定的L2TP隧道
7.依据PPP报头分解出PPP有效载荷,并将它转发至相关的协议驱动程序做进一步处理
L2TP数据的封装具体步骤如下:
1.IP数据报、IPX数据报或NetBEUI帧由各自协议提交给对应于VPN连接的虚拟接口。
该接口符合网络驱动程序接口规范NDIS。
2.NDIS将数据报提交给NDISWAN,NDISWAN可选择对数据进行压缩处理后,添加PPP
报头进行第一步封装。
该PPP报头仅含一个PPP协议标识域,不附加任何帧校正序列FCS
或其他标记。
3.NDISWAN将PPP帧提交给L2TP协议驱动程序,该驱动程序负责在PPP帧外添加L2TP 报头进行第二步封装。
在L2TP报头中,Tunnel ID 和Call ID的组合标识了一条隧道。
4.L2TP协议驱动程序再将封装后的数据报提交给TCP/IP协议驱动程序,并告之驱动程序,将L2TP数据报作为UDP消息发送,两端UDP端口号均为1701。
5.TCP/IP协议驱动程序对报文添加IP报头和UDP报头。
然后由IPSec对报文进行分析,
选择与之相匹配的安全策略,并在此安全策略的基础上,给数据报的UDP消息部分添加相应的ESP报头、报尾,进行IPSec加密、封装。
完成IPSec封装后,将原先的IP报头中协议字段值设置为50,同时将该IP报头添加在ESP报文外。
之后,TCP/IP协议驱动程序将结果报文提交给拨往本地ISP的拨号连接接口,该接口符合网络驱动程序接口规范NDIS。
6.NDIS再次将数据报提交给NDISWAN。
7.由NDISWAN提供数据链路层PPP报头、报尾,并将最终形成的PPP帧提交给与拨号硬件相对应的WAN微端口驱动程序。