Larofly

WireGuard和OpenVPN哪个好?两种VPN协议区别与选择

WireGuard更快更省电,OpenVPN更灵活、在限制严格的网络里更容易连上:一文看懂两种VPN协议的区别,选出适合自己的那一个。

先说结论:WireGuard通常速度更快、更省电;OpenVPN出现得更早,可调的选项更多,在只开放网页端口的网络里连接也更稳。两者都被认为是可靠的协议,所以选哪个取决于你的使用场景,而不是“一个安全、一个不安全”。

WireGuard和OpenVPN:六项参数对比
WireGuard和OpenVPN:六项参数对比

VPN协议到底是什么?

协议是一套规则,设备和服务器靠它约定如何加密、如何传输数据。App是你看到的那个带按钮的窗口,协议则是按下按钮之后在背后运行的东西。同一个隐私保护服务往往支持多种协议,而选哪一种,会影响三件事:速度、耗电量,以及能不能在某个具体网络里连上。

没有加密连接时,网络运营商能看到什么,我们另有文章讲过:网络隐私与运营商能看到什么。协议负责的,正是把这些数据在传输途中保护起来的那一环。

两种协议简单介绍

OpenVPN 诞生于2001年。二十多年里它积累了大量配置项:可以选加密算法、传输方式、证书验证方式。它的代码超过7万行,依赖OpenSSL库。这既是优点也是缺点:灵活度很高,但这么大的代码量很难完整检查一遍。

WireGuard 发布于2015年,2020年并入Linux内核。代码只有约4000行,加密组合是固定的(ChaCha20-Poly1305和Curve25519),几乎没什么需要配置。代码越少,审计越容易,出错的地方也越少。

逐项对比

参数WireGuardOpenVPN
发布时间2015年2001年
代码量约4000行70000行以上
传输方式仅UDPUDP和TCP
加密算法固定的现代组合可自行配置
速度通常更高略低
CPU与电池占用较低较高
限制严格的网络(公司、酒店)UDP可能被关闭TCP 443端口更容易连通

WireGuard和OpenVPN哪个速度更快?

多数测试里WireGuard更快,但差距因环境而异。Cybernews的一项测试中,WireGuard按各测试点平均计算,下载速度比UDP模式的OpenVPN高约4%,上传高约41%;而在几个测试点中,有两处UDP模式的OpenVPN在下载上反而更快。TCP模式的OpenVPN掉速最明显。Private Internet Access的测试中,WireGuard达到180 Mbit/s,OpenVPN约为120 Mbit/s。

所以结论很简单:宣传文章里的“快三倍”只是最理想的情况。在支持AES硬件加速的新款笔记本上,UDP模式的OpenVPN可以跑得几乎一样快。差距最明显的是手机和没有这类加速的低性能设备:WireGuard使用的ChaCha20在这些设备上更省资源。

WireGuard感觉更“灵”还有另一个原因:它建立连接只要不到一秒,OpenVPN有时要等好几秒。在Wi-Fi和移动网络之间切换时,这种差别很容易感受到。

想在自己的网络上验证,而不是只看别人的图表,可以看这篇:如何检测网速与连接稳定性。要在同一时段,分别测开启保护前后的速度。如果视频只在晚上卡顿,原因往往根本不在协议上,详见:为什么视频只在晚上卡。

两种协议的安全性如何?

正确配置的话,两者都可靠。区别在思路上:

  • WireGuard的加密算法是预先选好的,配置时很难出错;
  • OpenVPN如果保留了过时的参数,也可能配出一个较弱的方案;
  • OpenVPN的代码在2017年通过了独立审计,WireGuard则因为代码量小,检查起来更容易。

有一点要提醒:协议只负责给通道加密,其他问题它管不了,比如DNS泄漏、App的设置,以及服务本身的日志政策。关于DNS,可以读这篇:DNS是什么,一文讲清楚。

到底该选哪个?

适合选WireGuard的情况:

  • 主要用手机,经常在不同网络之间切换;
  • 在意速度和电量:看视频、打电话、玩游戏;
  • 不想折腾设置。

适合选OpenVPN的情况:

  • 设备或路由器比较老,不支持WireGuard;
  • 你所在的网络只放行网页流量,比如酒店、公司或车站的网络;
  • 公司需要使用证书并精细调整加密参数。

对普通用户来说,比较稳妥的做法是:默认用WireGuard,把TCP模式的OpenVPN留作备用,在前者连不上的时候切换。如果你用的服务可以自选协议,就这样设置。具体支持哪些协议,请看该服务的说明。

简短清单

  • 看重速度和省电:选WireGuard。
  • 在酒店或公司连不上:试试TCP模式的OpenVPN。
  • 别轻信“快三倍”之类的数字,在自己的网络上实测一下。
  • 不要只看协议,也要看日志政策和防泄漏功能。
  • 有多台设备的话,先想好需要同时连接几台设备,再选合适的套餐。

各类设备上的设置方法,我们单独写过:如何设置安全连接。

免费试用 7 天,无需银行卡。两分钟完成设置。

在 Telegram 开始