L2TP隧道协议

二层隧道协议在VPDN中的应用

定义

L2TP(Layer 2 Tunneling Protocol,二层隧道协议)是IETF定义的基于IP网络建立虚拟点对点连接的标准协议,是专网VPDN的核心。L2TP将PPP帧封装在UDP包中(UDP 1701),通过公网建立隧道;L2TP本身不提供加密,通常与IPSec结合(L2TP over IPSec)实现端到端安全,与RADIUS配合完成接入认证。

技术原理与架构

L2TP由LAC(L2TP Access Concentrator)和LNS(L2TP Network Server)构成。LAC部署在运营商侧(如PGW、BRAS),接收用户PPP连接;LNS部署在企业侧,终止隧道并向用户分配内网IP。设备拨号后,LAC与LNS建立L2TP隧道,PPP帧经隧道传输;叠加IPSec后,整条隧道加密。

与IPSec的配合

L2TP over IPSec:先建立IPSec SA,再在IPSec隧道内承载L2TP。IPSec提供加密与完整性,L2TP提供多协议(PPP)与用户会话。NAT环境下需NAT-T(UDP 4500)穿透。

典型应用场景

  • VPDN专网接入、物联网设备安全回传
  • 远程办公VPN、企业分支互联

达希物联的VPDN方案采用L2TP+IPSec,保障物联网数据从公网到企业内网的安全传输。

L2TP是达希物联VPDN专网方案的核心技术之一。物联网设备通过运营商网络接入时,L2TP建立从LAC到企业LNS的安全隧道,配合IPSec实现端到端加密。达希物联可为客户提供L2TP+IPSec的VPDN接入服务,保障物联网数据从公网到企业内网的安全传输。

控制连接与会话的分层

L2TP先在接入汇聚设备LAC与企业侧LNS之间建立控制连接,再在这条连接里承载一条或多条会话。控制连接负责隧道保活、参数协商和拆链;会话才对应某个用户的PPP上下文,包括认证结果和即将分配的内网地址。控制连接处于存活,只说明两端UDP 1701可达、隧道标识对得上;会话若被拒绝,设备侧仍表现为拨号超时或拿到错误网段。物联网卡上看到的“已附着、已激活PDP”,停在运营商分组网,并不等于LNS已经接受这条会话。

报文分成控制消息和数据消息。控制消息要求可靠送达,带序列号并会重传;数据消息承载PPP帧,默认不保证可靠,丢失后要靠上层重传。隧道抖动时,应先看控制信道有没有Hello超时,再看业务报文是否在数据信道里被中间设备丢掉。只抓到内层IP、看不到L2TP头,多半是抓包点选在了隧道终结之后。

专网开通前必须对齐的四项

用L2TP做虚拟专网,至少要同时满足四项:运营商LAC已经按该APN把流量送往指定LNS;企业防火墙对LAC的公网地址放通UDP 1701,叠加IPSec时还要放通UDP 500与4500;两端的隧道口令或证书、主机名和隧道标识一致;LNS地址池与企业内网不重叠,且回程路由指向这条隧道。缺任何一项,现象都像“卡已激活但访问不了内网”。防火墙若只放行业务端口、没放行隧道端口,LNS侧甚至不会留下协商记录。

这种隧道适合把蜂窝接入的设备收进企业私网,不适合当作公网加速,也不能代替应用层加密。协议本身不加密、不校验载荷完整性,经过不可信网络时必须再包IPSec,或由应用自己做端到端保护。终端数量上来之后,还要确认LNS的会话规格和QoS标记,避免所有设备挤在一条没有优先级的隧道里互相拖慢。

隧道显示连通而业务仍不通

常见错误是把“隧道Up”当成业务可用。控制连接建立后,PPP认证仍可能被RADIUS拒绝,或地址池耗尽,设备反复重拨。另一类是地址重叠:LNS分出的地址落在企业已有网段,回包被内网路由送到别处,表现为请求发出去、响应回不来。封装开销也容易被忽略。PPP、L2TP和IPSec叠在一起后,有效载荷常常低于1500字节,终端若仍按满尺寸发送且不允许分片,大包会在中途消失,小包探测却正常。

还有配反方向的情况:把LNS当成拨号发起方,或在LAC上填错LNS域名,企业侧根本等不到隧道。排查时应先分开“没有控制连接”“有控制连接无会话”“有会话无回程”三层,不要在无线覆盖上反复换卡。经过地址转换时若未启用NAT-T,协商可以完成,随后数据全丢,因为安全关联无法匹配被改写的外层端口。

地址转换放在隧道内侧还是外侧,结果完全不同。放在内侧时,终端看到的地址和服务器看到的地址不是同一个,访问控制若按错的一侧填写,就会只有个别主机能通。放在外侧时,安全关联必须按转换后的端口匹配,否则握手能完成、业务包对不上。应把两端的外部地址、转换后的端口和内侧分配地址记在同一行。会话许可也要按同时在线估算,而不是按开卡数量估算:掉线后残留的半开会话会把许可占满,新的拨号被拒绝,现象仍像无线不稳定。

抓包点若选在隧道终结之后,只能看到内层地址,无法判断外层端口是否被改写。应在防火墙外侧和LNS内侧各抓一次,对照同一会话的标识。只有内侧有记录而外侧没有,说明包没有到达企业;两侧都有而业务仍失败,再看地址池和回程路由。


相关链接

返回通信类知识库