跳到主要内容

在较旧的笔记本、手机或路由器上打开 VPN 设置,列表里多半会有“L2TP/IPsec”。名字听起来很正式,常被说成安全,而且不用额外安装软件。那么今天它还算合理的选择吗?老实说:它是一项容易理解、但有明确局限的技术,对于大多数新的搭建场景,有更好的选项。

本文把 L2TP/IPsec 当作一个独立话题来讲:这两个名字分别指什么、连接是如何一步步建立的、端口和密钥是怎么回事、哪里容易出故障,以及要不要继续使用。如果想先了解“协议”是什么,可以从VPN 协议是什么开始。

两种技术拼在一起

名字已经说明了问题。它有两层,各做各的事。

  • L2TP 即第二层隧道协议(Layer 2 Tunneling Protocol)。它建立一条隧道,把网络流量从一端送到另一端。它诞生于九十年代末,融合了此前两种隧道方案的思路。它本身没有加密,也没有对隧道本身做真正的认证,只负责把数据包起来。
  • IPsec 是一组用于认证和加密 IP 数据包的标准,承担 L2TP 不做的安全工作。其体系结构见 RFC 4301,面向管理员的实用概述可参考 NIST 的 IPsec VPN 指南。

人们说“L2TP VPN”时,几乎总是指这一对组合:L2TP 运行在受 IPsec 保护的通道里。单独使用 L2TP 的话,流量会以路径上任何人都能读取的形式传输,所以只标着“L2TP”却没有 IPsec 的连接,应当抱有怀疑。

可以想象成一辆加固的运钞车(IPsec)里装着一辆送货卡车(L2TP)。运钞车提供保密,送货卡车提供有条理的送货路线。因为是车里再装车,开销自然比一体化的专门设计更大。

连接是怎么一步步建立的

弄清事件顺序,排查故障会容易得多。

  1. **IKE 协商。**客户端和服务器先用 IKE(互联网密钥交换)建立 IPsec 层,使用 UDP 500 端口。双方约定加密算法,并用预共享密钥或证书互相证明身份。
  2. **NAT 穿越。**如果客户端位于做地址转换的家用路由器后面,流量会切换到 UDP 4500 端口,把 IPsec 包再封一层,使其能通过地址转换。
  3. **IPsec 通道建立。**密钥生成完毕,加密通道(使用 ESP,即封装安全载荷)就绪。
  4. **L2TP 隧道。**在通道内部,L2TP 使用 UDP 1701 端口在客户端与服务器之间建立隧道。
  5. **PPP 登录。**在 L2TP 隧道内启动 PPP 会话,用户被要求输入用户名和密码或其他凭据。
  6. **分配地址和路由。**服务器给客户端分配地址和路由,流量开始流动。

注意这里有两次相互独立的认证:IPsec 先用密钥或证书让两台设备互相确认,然后 PPP 用用户名和密码确认“人”。这种分离在公司网络里很有用:一个共享密钥代表组织,个人账号代表员工。

认证方式:预共享密钥还是证书

IPsec 层需要一种方式来开始信任对方,主要有两种。

预共享密钥(PSK)

把同一串秘密字符同时填在客户端和服务器上。配置快,所以家用路由器和小办公室的教程都爱用它。它的弱点出在人身上,而不是数学上:

  • 所有人共用同一把密钥,一旦泄露,影响所有人。
  • 很多配置使用短的或容易猜的值,或者直接沿用教程里的示例值。
  • 攻击者如果得知密钥,就可能搭一个客户端会接受的假服务器,进而诱骗用户交出密码。

如果非用 PSK 不可,请把它设得又长又随机,存进密码管理器,只告诉需要的人,有人离开时及时更换。

证书

使用证书时,服务器(以及可选的每台客户端)用签名文件而非共享秘密来证明身份。它更强也更易扩展,但需要有人创建、分发和续期。至于为什么算法这一侧很重要,可以读VPN 加密是什么,而 IKEv2 规范 RFC 7296 则展示了现代 IPsec 如何协商双方的身份验证。

L2TP/IPsec 做得好的地方

公平地说,这个组合的流行是有原因的。

  • **系统自带支持。**许多操作系统和路由器无需额外软件就能连接,这对受管理的办公室和应急恢复很方便。
  • **成熟的安全基础。**IPsec 已被研究几十年,在现代设置下仍是受尊重的构件。
  • **管理员熟悉。**许多网络工程师知道怎么运行、记录和排查它。
  • **能配合 PPP 账号。**在某些环境里可以接入现有的用户数据库。

这些优点解释了它为何仍出现在这么多菜单里。它们大多是便利性与兼容性上的优点,而不是设计上的优点。

L2TP/IPsec 吃力的地方

双重封装拖慢速度

每个数据包要被包两次,先是 L2TP,再是 IPsec。额外的包头占去最大包长的空间。若不调整设置,大包会被分片,连接变慢,或让某些网站卡住。路径 MTU 的概念,即一条路由上不被拆分就能通过的最大数据包,正是你有时看到网页只加载一半的原因。

固定端口很容易被识别

UDP 500、4500 和 1701 都是众所周知的端口。限制流量的网络,例如一些酒店、机场、学校或移动运营商,常会拦截或处理不当。结果是出现超时,看起来像服务器坏了,实际上是网络策略所致。

NAT 与防火墙问题

IPsec 的设计早于家用路由器普遍做地址转换的时代。NAT 穿越解决了大部分问题,但不是全部。服务器自己位于 NAT 之后,或客户端处在两层 NAT 之后,可能以令人费解的方式失败。在 Windows 上这通常表现为错误代码,我们在帮助中心的Windows VPN 常见错误里作了说明。

配置复杂

可以选错或选旧的地方很多:加密算法、密钥长度、有效期、Diffie-Hellman 组、PPP 选项等。两端只要有一处不一致就会失败,而报错信息几乎不会告诉你是哪一处。

陈旧的默认值

许多设备出厂时仍带着十多年前选定的默认值,为了兼容,较弱的算法选项可能一直开着。这是配置风险,并非 IPsec 本身的缺陷,但非常常见。

排查连接失败

按从最简单到最复杂的顺序来。下面的步骤假设你已从管理员处拿到了正确的凭据和服务器地址。

  1. **先查基础。**确认网络本身正常,服务器名称输入准确,用户名与密码正确。
  2. **查时钟。**如果用了证书,日期错误会让证书失效。
  3. **换个网络试试。**用手机流量或别的 Wi-Fi。若换个地方就能连上,说明第一个网络拦了端口。
  4. **查 PSK。**错一个字符,表现出来也只是笼统的失败。重新手动输入,而不要从可能多出空格的文档里粘贴。
  5. **看 NAT。**如果服务器在路由器后面,确认它转发或放行了 UDP 500 和 4500,并且 IPsec 穿透之类的功能没有干扰。
  6. **读错误代码。**在 Windows 上,错误 809 通常表示最初的几个包没有通过,多半是 NAT 或防火墙问题;错误 789 指向安全层不匹配;错误 691 一般是用户名或密码被拒。上面链接的帮助指南列出了各类错误的常见解法。
  7. **对比两端设置。**检查加密和认证提案有无差异,并把选项缩减为一套已知可用的。
  8. **换个协议试试。**如果服务器同时支持 IKEv2、WireGuard 或 OpenVPN,换过去往往能让问题直接消失。

如果某个通用的 VPN 应用连不上而你不知道原因,VPN 连接不上怎么办里有更全面的排查清单。除非客服建议更改,请保持应用的默认连接方式。

还该不该用?实用决策指南

答案取决于你的情况。下面的表格可以帮你梳理常见场景。

场景 建议做法
新建个人或小企业环境 选现代方案,例如 WireGuard、OpenVPN 或 IKEv2/IPsec
旧路由器或 NAS 只有 L2TP/IPsec 先用足够长且保密的密钥和强密码顶着,同时计划升级
办公系统已在用证书版本 继续运行,复核算法,并安排迁移
经常在限制较多的网络出行 预计会有问题,其他协议往往适应得更好
设备没有新协议的客户端 使用内置选项,但限制通过它传输的内容

与新设计的对比可以看WireGuard 与 OpenVPN。简言之,WireGuard 和 OpenVPN 更容易理解,对固定端口的依赖更少;IKEv2 则保留了久经考验的 IPsec 基础,同时协商方式更现代,对网络切换的适应也更好。

非保留不可时的加固清单

如果旧设备没给你留下选择,可以用以下步骤降低风险。

  1. 平台支持就用证书;否则使用至少 20 位的随机 PSK。
  2. 停用弱的加密和哈希选项,只提供现代的。
  3. 给每位用户单独的 PPP 账号,绝不共用登录,并使用长且不重复的密码。
  4. 让路由器和服务器固件保持最新,不再收到更新的设备要换掉。
  5. 在防火墙允许的范围内,限制谁能访问 VPN 端口。
  6. 在服务器上记录连接,并定期查看失败的尝试。
  7. 设定复核日期,决定是否迁移。
  8. 把设置记录下来,免得下一个人需要猜。

常见误解

**“L2TP 就是加密的。”**不对。单独的 L2TP 没有加密,保护来自 IPsec。

**“系统自带就是最好。”**自带只代表方便。协议是否合适,要看它在你的场景下的安全、速度与兼容性。

**“PSK 不就是个密码,无所谓。”**非常有所谓,因为人人共用,它还可能为冒充服务器打开方便之门。

**“能连上就说明安全。”**能用的连接仍可能使用弱算法。连接成功与否,并不能说明算法强度。

**“它和 PPTP 一样糟。”**不是。IPsec 这一层在配置得当时依然受到认可。令人担心的是它的年代、复杂度和固定端口,而不是核心已被攻破。

总结

L2TP/IPsec 把隧道层和加密层配成一对:UDP 500 上的 IKE、UDP 4500 上的 NAT 穿越,以及 UDP 1701 上的 L2TP,分步骤建立连接,其中预共享密钥或证书用来认证设备,PPP 登录用来认证人。它被广泛内置,并建立在成熟的 IPsec 之上,但双重封装、固定端口、对 NAT 敏感和容易配错,使它成为一种过渡期的旧选择。新搭建时通常应选当前的协议;已有环境则应加固并规划迁移。

如果你更想直接用现成的应用,而不是调协议参数,可以到价格页面比较各种通行证。

常见问题

L2TP/IPsec 到底是什么意思?

L2TP 负责建立隧道并承载流量,但自身没有加密;IPsec 被放在下面,为这条隧道提供加密和认证。两者合起来写作 L2TP/IPsec。

L2TP/IPsec 安全吗?

在设置得当的前提下,比如使用现代算法、证书,或者足够长且保密的预共享密钥,IPsec 这一层并不像旧的 PPTP 那样被攻破。但这个组合老旧、笨重、容易配错,新协议通常是更好的选择。

为什么 L2TP/IPsec 在某些路由器后面连不上?

它依赖特定的 UDP 端口,并要求 IPsec 流量能穿过地址转换(NAT)。部分路由器、酒店网络和移动运营商对此处理不佳,于是出现超时或 Windows 809 之类的错误。

预共享密钥是什么,为什么算弱点?

它是所有用户都要输入的同一个共享秘密,用来建立 IPsec 层。如果它很短、被复用,或出现在教程里,知道它的人就可能冒充服务器,所以应当设得足够长并妥善保密。

新搭建时该选 L2TP/IPsec 吗?

通常不该。只有当设备或办公系统没有更新的选项时才考虑它。如果可以选择,IKEv2/IPsec、WireGuard 或 OpenVPN 是更好的起点。

关于作者

Bob Kanokphon Thongdee,XPASS VPN 创始人

Bob Kanokphon Thongdee

  • XPASS VPN 创始人
  • eSIMonline.asia 联合创始人
  • 7 年以上网络营销经验
  • Cojourney Visa 与 Cojourney Travel 创始人

短途出行或忙碌的一个月,需要 VPN?

XPASS 提供按天数计算的预付通行证。一次付款,不会自动续费。

查看通行证

继续阅读

VPN 基础

什么是 VPN 协议?

VPN 协议规定了你的设备与 VPN 服务器如何连接并保护流量。本文用通俗的语言讲清楚它的含义和主要取舍。

阅读约 9 分钟

VPN 安全

WireGuard 与 OpenVPN 有什么区别

WireGuard 和 OpenVPN 都能建立加密隧道,但设计、复杂度和灵活性不同。本文用通俗的方式比较,并说明该怎样选择。

阅读约 9 分钟

VPN 安全

什么是 VPN 加密?

VPN 加密会把你的设备与 VPN 服务器之间的数据打乱。本文讲解密钥、算法和握手如何运作,以及加密做不到什么。

阅读约 10 分钟

故障排除

如何修复常见的 Windows VPN 错误(809、789、691)

分步讲解最常见的 Windows VPN 错误代码:含义、各自常见的原因,以及最稳妥的优先尝试方法。

阅读约 7 分钟

故障排除

VPN 连接不上?逐步排查方法

VPN 连接不上时的清晰排查顺序:通行证状态、登录信息、Wi-Fi 与移动数据、权限、防火墙、应用冲突和错误提示。

阅读约 8 分钟