« 上一篇下一篇 »

L2TP VPN基本原理

 本文摘自:http://www.h3c.com.cn/MiniSite/Technology_Circle/Technology_Column/ICG/ICG_Technology/201004/671383_97665_0.htm

 L2TP VPN的原生使用环境

VPN中的VPDNVirtual Private Dial Network虚拟拨号专线网络)的主力技术L2TPLayer 2 Tunnel Protocol二层隧道协议l),上图说明了VPDN的一些特点,出差员工或者外出员工通过拨特定号码的方式接入到企业内部网络:

    1.运营商对外提供L2TP VPN服务

    2.有远程拨入需要的企业想运营商提出申请,交费,开通

    3.企业要对运营商提供一个L2TP LNSL2TP Network Server网络服务器)作为企业内部网络入口

    4.运营商提供一个L2TP LACL2TP Access Concentrator接入汇聚点),LAC要和企业LNS之间跨越运营商IP网络建立L2TP隧道,同时运营商将一个电话号码15400分配给LAC,以供出差员工拨入

    5.当出差员工或者外出员工使用Modem或者特制手机拨打号码15400,此时Modem就连接到LAC

         6. L2TP是收费服务,而且企业不可能让任何人拨入这个网络,所以安全性肯定要考虑,结合上期网络身份保护的内容,LAC对拨入用户要进行身份确认,典型的身份确认方式就是用户名、密码验证,这个身份信息列表由企业提供,运营商执行

         7.LAC确认身份无误后就把这次呼叫封装到L2TP隧道里送给LNS

         8. LNS再对用户进行一次身份验证,验证通过后对远端用户分配IP地址

    9.远端用户获得IP地址后,就可以访问企业内部网络了

具体处理流程如下:

从上图可以发现,出差员工和LAC之间只有PPP会话,没有任何L2TP的内容,L2TP隧道、会话只存在于LACLNS之间:

    1.L2TP使用的是UDP封装,端口号1701

    2.L2TP隧道在LACLNS之间只有1个,协商隧道时可以使用身份确认

    3.L2TP会话在隧道内部可以有多个,一个会话对应一个PPP会话,即有多少个出差员工拨号,就会有多少个L2TP会话

所以,如果一个出差员工拨号到LAC时,LAC检查到LNSL2TP隧道已经建立,那么LAC直接和LNS协商一个新会话;当一个隧道内没有任何会话时,隧道才会被拆除。L2TP原生应用场景的数据封装流程如下图所示:

可以发现出差员工发送的是纯PPP数据,到了LAC之后则增加了L2TP隧道封装,得以穿越运营商内部的IP网络,这样企业私有数据不会暴露到运营商IP网络之中。L2TP隧道封装数据到了LNS之后,LNS进行VPN数据剥离,反向流量封装顺序将流程逆转、源目的调换即可。


运营商使用1LAC同时为多个企业服务

LAC命名来说,我们可以知道这个东西必定价格不菲,运营商肯定不可能为每个企业单独设置一台LAC和一个号码,因为这么做成本很高,赚不到钱,运营商的想法是只用1LAC1个号码同时为多个企业服务:

如上图所示,该LAC同时为弯曲评论、华三通信、惠普三家企业同时提供L2TP VPN接入服务,这是怎么做到的呢?答案很简单:

我们在第一节中讲到了LAC要对拨入用户进行身份验证,可以在这里做文章

不同企业的用户肯定不一样,在身份验证时,根据不同的用户名找到不同的LNS即可

由于不同企业的人用户名有可能相同,所以这时的身份是带域名的用户名,比如弯曲评论的员工用户名是abc@tektalk.org,而华三的员工则是abc@h3c.com,惠普员工则是@hp.com

有了后缀域名,运营商只要少量的LAC,创造的收入就很紧实了


 新网络时代的L2TP VPN

随着ADSL等高速接入技术的普及(xDSL下行最高速度可以达到12M),而普通的Modem接入速度只有56k,在这种情况下,高速L2TP VPN接入需求变得很迫切:

如上图所示,新网络时代的L2TP VPN基本上没有运营商什么事,因为没有LAC了,L2TP跨越的网络直接就是互联网:

企业总部还是要提供L2TP LNS,对互联网上的出差员工提供接入

LNS最好要有一个固定都IP地址,如60.1.99.140,如果地址是变动的,那么需要实用DDNS和一个固定域名如l2tp.tektalk.org绑定起来,为什么呢,如果没有这个地址或域名,你让出差员工拨入到哪呢,这个地址和域名的作用就相当于原生L2TP VPN中的LAC电话号码15400

LAC功能(或者叫L2TP客户端)一般集成在出差员工PC上,如Windows XP系统自带L2TP客户端

出差员工通过设置拨号连接的IP地址或域名,开始向总部LNS发起连接

建立L2TP隧道后协商L2TP会话

L2TP会话协商结束,开始进行PPP参数协商,主要是身份确认和地址分配

获得地址后就算是连接到企业内部网络了,VPN建立成功

L2TP会话结束,立刻拆除隧道,因为在这种模式中,每个客户端都需要和LNS建立隧道,而这个隧道中只有1PPP会话

具体处理流程如下图所示:

很多时候出差员工是在宾馆上网,而宾馆客房网络通常都是通过NAT接入到互联网的,比如前图所示有2个出差员工的PC地址都是192.168.1.2,那么可以正常连接到LNS吗?

由于L2TP使用UDP 1701端口封装隧道,所以根据第10期专栏互联网穿越NAT介绍,它可以穿越出差员工的NAT网关,经过NAT转换后,两名员工的连接地址分别变成2.17.2.16.24.1.1LNS可以做出正确的区分,L2TP VPN显然可以轻松应对这种条件。