
WireGuard、OpenVPN 与 IKEv2 对比:VPN 协议全解析
WireGuard、OpenVPN 与 IKEv2 对比:一篇人话版 VPN 协议指南
VPN 使用的协议决定了它有多快、能否在地铁隧道里活下来、审查防火墙能否识别并封锁它,以及安全研究人员在信任它之前需要审计多少代码。如今大多数应用默认使用 WireGuard,并把切换选项藏在一个大多数人从不打开的设置菜单里。这个默认选择在多数情况下是对的——但并非总是如此。
本指南跳过了那种千篇一律的优缺点对照表。相反,它从你实际正在做的事情出发倒推——在 Wi-Fi 和蜂窝网络之间切换、绕过受限网络、看流媒体、打游戏,或者用一台老旧路由器联网——并解释为什么某个协议最适合那件事。它还点名了那些被厂商悄悄埋进设置里的过时协议和专有协议,让你知道该避开什么,以及那些品牌名称背后真正指的是什么。
30 秒决策树
如果其他什么都记不住,那就记住这张从任务到协议的对应表:
一部不停在 Wi-Fi 和蜂窝网络之间切换的手机 → IKEv2/IPsec。它的 MOBIKE 扩展能在网络切换时让隧道保持存活,不会出现可见的掉线。
审查环境或封锁 VPN 的网络 → 基于 TCP 443 端口的 OpenVPN(或厂商的混淆模式)。它可以被伪装成普通的 HTTPS 流量。
流媒体、游戏、大文件下载、日常使用 → WireGuard。三者中延迟最低、吞吐量最高,并采用现代密码学。
在老旧路由器、NAS 或奇怪的操作系统上追求最大兼容性 → OpenVPN。它几乎能在任何地方运行,已被移植到几乎所有平台。
你没有任何特定需求 → 就保留应用的默认设置,它几乎总是 WireGuard 或基于 WireGuard 的构建版本。
下文将解释这些选择背后的逻辑,这样当你的情况需要时,你就能有把握地推翻默认设置。
用数字说话:速度、开销与可审计性
这些才是协议之间真正存在差异的维度。把吞吐量和延迟数字当作方向性参考——你的真实速度更多取决于服务器负载、距离以及你自己的网络连接,而不是协议本身——但相对的排序在各项独立测试和 WireGuard 项目自己的基准测试中是一致的。
吞吐量: WireGuard 是三者中最快的。在 WireGuard 项目公布的基准测试中,相同硬件下它跑出约 1,011 Mbps,而 OpenVPN 约为 258 Mbps;IKEv2/IPsec 通常落在两者之间。
延迟 / 开销: WireGuard 增加的往返延迟最少——通常只有不到一毫秒的处理开销——因为它的加密更轻量,而且运行在内核中。OpenVPN 运行在用户空间且 TLS 握手更重,增加的开销最多。
代码量与可审计性: WireGuard 的 Linux 实现以代码量不到约 4,000 行而闻名。OpenVPN 有数万行代码,还依赖一个独立的加密库(OpenSSL 或 mbedTLS),把实际可审计的范围推高到数十万行。代码量更小意味着 bug 藏身之处更少,单个专家就真能把审查做完。
重连行为: WireGuard 是无连接的、'始终在线'的——如果链路断开又恢复,它只需用下一个数据包接着传输即可。IKEv2 重连很快,配合 MOBIKE 还能跨网络迁移而不掉线。OpenVPN 必须重建它的 TLS 会话,所以重连最慢也最明显。
传输层: WireGuard 是 仅 UDP。OpenVPN 可运行于 UDP 或 TCP。IKEv2/IPsec 使用 UDP(500 和 4500 端口)。
WireGuard 于 2020 年 3 月被并入主线 Linux 内核 5.6 版本,这也是它表现如此出色的部分原因:内核空间的数据包处理避开了用户空间协议必须付出的上下文切换开销。
一个下午就能读完的大约 4,000 行代码,对比一个需要一支团队才能审计的加密栈——单凭这一点事实,就足以解释 WireGuard 声誉的大半来源。
为什么 WireGuard 在速度与信任上胜出
WireGuard 的速度不是营销话术,而是设计选择的结果。它采用一套固定的、现代的密码学原语——用 ChaCha20-Poly1305 做认证加密,用 Curve25519 做密钥交换,用 BLAKE2s 做哈希,构建在 Noise 协议框架之上——而不是像 OpenVPN 那样提供一份可协商的密码套件菜单。没有协商就没有缓慢的握手往返,也没有被降级到弱密码的风险。
那段极小的代码量正是它的信任故事所在。安全来自可被审查的代码,而一个 4,000 行的模块是审计人员真正从头到尾读过的东西。WireGuard 还能静默运行:没有数据要传输时它不发送任何数据包,所以连接能在睡眠、挂起和空闲期间存活,并能瞬间'唤醒'。正是这种原始速度、低延迟和可审查性的组合,让它成为流媒体、游戏、下载和日常浏览的正确默认选择。
为什么 IKEv2/IPsec 在移动场景下胜出
对手机而言,杀手级特性是 MOBIKE——IKEv2 移动性与多归属协议,标准编号为 RFC 4555。当你走出家门、手机从 Wi-Fi 切换到 LTE 时,设备的 IP 地址会改变。在大多数协议下,这意味着隧道断开并必须重建。MOBIKE 让现有的 IKEv2 安全关联迁移到新的 IP 地址,而无需拆除并重新建立隧道,于是 VPN 在切换过程中保持在线,没有可见的中断。
IKEv2 在 iOS、macOS 和 Windows 上还获得原生支持,因此无需第三方应用即可运行。它在真正掉线后能极快重连,这让它在信号时断时续的蜂窝覆盖下表现出色。它的弱点是抗审查能力:它依赖固定的 UDP 端口(500 和 4500),一道下定决心的防火墙可以直接封掉它们,而且与 OpenVPN 不同,它无法轻易藏身于 HTTPS 之中。WireGuard 凭借其无连接设计也能很好地处理漫游,但 IKEv2 的 MOBIKE 仍是无缝、无感移动切换的黄金标准。
为什么 OpenVPN 在受限网络下依然胜出
OpenVPN 的超能力是伪装。因为它可以运行在 TCP 443 端口上——与正常 HTTPS 网页流量相同的传输方式和端口——所以一条 VPN 连接可以被做得非常难以与单纯浏览网页的人区分开来。在那些通过识别流量特征来封锁 VPN、或干脆封掉 UDP 的网络上,这往往是唯一能穿透的办法。WireGuard 由于仅使用 UDP 且端口非标准,相对容易被指纹识别和封锁,这也是为什么服务商会在受审查地区给它包裹额外的混淆层。
OpenVPN 还是兼容性冠军。它几乎被移植到了所有操作系统、路由器固件(DD-WRT、OpenWrt、pfSense)和 NAS 平台,所以当别的什么都装不上时,OpenVPN 通常装得上。代价是速度:用户空间架构和 TLS 开销使它成为三者中最慢的,而 TCP 模式还会带来额外的损失。
OpenVPN 的 TCP 与 UDP 之辨
当你选择 OpenVPN 时,你也同时选择了一种传输方式,而这个选择是一个实打实的权衡:
UDP 是更快的默认选择。它不保证送达或顺序,但这没关系,因为你隧道内部的协议(比如 TCP 本身)会处理这些。除非连不上,否则一切都用 UDP。
TCP 保证按序、可靠的送达,而且——这一点至关重要——能穿越那些只允许 TCP 的防火墙和代理,尤其是在 443 端口上。代价是 TCP-over-TCP 问题(有时称为 'TCP 崩溃'):当你隧道的 TCP 和你流量的 TCP 同时试图从丢包中恢复时,吞吐量可能会骤降。只有在 UDP 被封锁或不稳定时才动用 TCP。
被厂商埋起来的协议:PPTP、L2TP/IPsec 与专有构建版本
有些协议出于历史遗留原因仍留在下拉菜单里。要知道哪些该避开。
PPTP——不要使用。 点对点隧道协议可追溯到 1990 年代,它的 MS-CHAPv2 认证在十多年前就已基本可被破解。它快只是因为它几乎没在保护你。把它当作淘汰品;它留在菜单里纯粹是为了古老的兼容性。
L2TP/IPsec——慎重权衡。 L2TP 本身不提供加密,所以总是与 IPsec 搭配使用。它支持广泛、配置得当时尚可接受,但比现代选项慢,使用易被封锁的固定端口,而且长期以来一直有关于 IPsec 被削弱的猜测。几乎没有理由选它而不选 IKEv2(同样基于 IPsec)或 WireGuard。
SSTP——小众。 一个运行在 TLS/443 之上的微软协议(因此具备类似 OpenVPN 的防火墙穿透能力),但本质上仅限 Windows 且闭源。在 Windows 上应急用尚可;不是首选。
接着是那些 品牌化协议。营销名称掩盖了一个更简单的现实,看穿它是值得的:
NordLynx(NordVPN)就是 WireGuard,只是在上面叠加了一套自定义的双重 NAT 系统,用来修复 WireGuard 的隐私小毛病(下文细说)。剥开外壳,它就是 WireGuard。
许多服务商所谓的'专有'高速协议不过是换了个标签、加了点混淆的 WireGuard——Mullvad、Surfshark 等都直接运行 WireGuard 或对其做了轻度包装。
Lightway(ExpressVPN)是个货真价实的例外:它是一个开源、从零打造的轻量协议,构建在 wolfSSL 加密库之上,而非 WireGuard 的分支——但它与 WireGuard 共享同样的设计理念:代码量小、可审计、重连快。
Catapult Hydra(Hotspot Shield)是一种封闭的专有传输方式。封闭协议无法像 WireGuard 和 OpenVPN 那样被独立审计,这是一个实实在在的信任降级。
WireGuard 的隐私小麻烦——以及服务商如何修复它
对商业 VPN 来说,WireGuard 有一个真实的弱点,值得理解而非畏惧。按照设计,WireGuard 把每个用户的公钥与隧道内部一个静态内部 IP 地址绑定,而服务器会在整个会话期间把这个对应关系保存在内存里。在一个注重隐私的服务中这就很尴尬:一个与你密钥绑定的固定内部 IP,加上 WireGuard 保留的最近一次端点,原则上可以被用来在一个会话中关联你的活动——这与无日志 VPN 所承诺的恰恰相反。
信誉良好的服务商会从工程上绕开这一点,而不是把它存下来。NordLynx 的 双重 NAT 是有充分文档记载的做法:第二层网络地址转换让服务器能够动态分配内部地址,从而避免保留任何与你账户绑定的可识别静态 IP。其他厂商则频繁轮换密钥,或按会话分配地址。结论是:WireGuard 本身非常出色,但在商业服务中,服务商围绕它的实现方式至关重要,所以这是一个值得向任何厂商提出的合理问题。
实用要点:何时该推翻默认设置
日常使用就开着自动模式——你的应用几乎肯定默认使用 WireGuard,对速度和安全而言这是正确的选择。只在以下这些情况下,才打开协议菜单并有意识地更换它:
你在通勤途中手机不断掉隧道 → 切换到 IKEv2,用 MOBIKE 实现无缝切换。
在酒店、校园、工作场所或受审查网络上 VPN 根本连不上 → 切换到 基于 TCP 443 的 OpenVPN,或启用应用的混淆/隐身模式。
你需要在路由器、NAS 或较老的设备上使用 → 用 OpenVPN,它是移植最广的选项。
你最看重最小的可审计代码量和最低延迟 → 留在 WireGuard。
你在列表里看到 PPTP → 永远不要选它。如果只提供 PPTP 和 L2TP,那就选 L2TP/IPsec,但要把这当作一个信号:去挑一个配置更完善的服务。
并不存在某个单一的'最佳 VPN 协议'——只有针对你眼前任务的最佳协议。WireGuard 用于速度与信任,IKEv2 用于移动场景,OpenVPN 用于隐身与兼容性,而那些被淘汰的选项则什么都不适合。分清谁是谁,正是一个默默把活干好的 VPN 与一个偏偏在你最需要时掉链子的 VPN 之间的区别。
常见问题
WireGuard 和 OpenVPN 哪个更好?
论速度、延迟和小巧可审计的代码量,WireGuard 胜出——它更快,也远更容易审查。当你需要在受限网络上把流量伪装成 HTTPS(基于 TCP 443),或在路由器、NAS 这类不常见设备上运行时,OpenVPN 更好。对大多数人在日常网络下使用而言,WireGuard 是更好的默认选择。
在移动场景下 IKEv2 比 WireGuard 更好吗?
在无缝移动切换上 IKEv2 占优,这要归功于 MOBIKE(RFC 4555):当你的手机从 Wi-Fi 切到蜂窝网络时,它能把一条活动隧道迁移到新的 IP 地址而不掉线。WireGuard 凭借无连接设计也能很好地漫游,但 IKEv2 的 MOBIKE 仍是无感网络切换的黄金标准,而且它内置于 iOS、macOS 和 Windows 中。
总体而言最佳的 VPN 协议是哪个?
并不存在某个最佳协议——这取决于任务。速度和安全用 WireGuard,频繁切换网络的移动设备用 IKEv2,受审查或封锁 VPN 的网络用基于 TCP 443 的 OpenVPN。如果你没有特定需求,你应用的默认设置(通常是 WireGuard)就是正确选择。
OpenVPN 我该用 TCP 还是 UDP?
默认用 UDP——它更快,而且你隧道内部的协议会自行处理可靠性。只有在 UDP 被封锁或不稳定时,才切换到 TCP(尤其是 443 端口),因为 TCP 能穿越严格的防火墙,但在丢包情况下可能遭遇拖垮吞吐量的 'TCP-over-TCP' 崩溃。
2026 年使用 PPTP 安全吗?
不安全。PPTP 的 MS-CHAPv2 认证在十多年前就已基本可被破解,所以尽管它速度快,却几乎提供不了真正的保护。它留在应用菜单里只是为了向后兼容。请改用 WireGuard、IKEv2 或 OpenVPN,永远不要选 PPTP。
NordLynx 就是 WireGuard 吗?
是的——NordLynx 就是 WireGuard,只是在上面加了一层自定义的双重 NAT。双重 NAT 解决了 WireGuard 把静态内部 IP 与每个用户密钥绑定的隐私小毛病,让服务器能动态分配地址,从而不存储任何可识别信息。许多其他'专有'高速协议同样是换了品牌名的 WireGuard。
WireGuard 存在隐私问题吗?
按照设计,WireGuard 为每个用户分配一个与其公钥绑定的静态内部 IP,服务器会在整个会话期间保留这个映射,这在商业 VPN 上可能关联用户活动。信誉良好的服务商会用动态双重 NAT、频繁密钥轮换或按会话分配地址来缓解这一点,所以只要服务商实现得当,这个协议依然非常出色。



