开启 3 天免费试用
注册即可免费体验全部高级功能。
*仅限新用户;每位用户只能获得一次试用。


WireGuard 是一种 VPN 协议及实现,通过 UDP 在对等端之间传输加密 IP 数据包。它用公钥识别对等端,通过基于 Noise 的握手生成临时流量密钥;路由、DNS 策略、账户管理和流量阻断仍需要外围软件与配置。[1][2]
关键要点:
- WireGuard 搬运 IP 数据包,不只代理某个应用的请求。
- 公钥标识对等端,握手建立独立的临时数据密钥。
- ChaCha20-Poly1305 保护隧道数据包,外部网络用 UDP 承载。
- 来自新地址的认证流量可触发端点更新。
- 加密本身不提供混淆、断线阻断、DNS 策略或服务商隐私政策。
WireGuard 建立用于 IP 流量的网络接口。操作系统把选定路由送入接口,协议为对应对等端加密数据包;接收端解密后,按自身网络配置继续转发。两端之间的普通互联网路径看到的是外层 UDP 连接。[1]
内层 IP 包和外层 UDP 包承担不同任务。应用可以在隧道内使用 TCP,但 WireGuard 外层仍使用 UDP。图中是对等端隧道,若要访问更广泛的互联网,还需要转发和适当出口配置。
安装隧道接口,不会自动选择所有路由。组织内网部署可能只承载内部地址范围,互联网出口部署则可能安排默认路由;二者使用同一协议,流量范围却由操作系统和配置决定。
IPv4 与 IPv6 也需要分别看待。覆盖一个地址族的路由,不能证明另一个已覆盖。DNS 查询行为需要独立检查,解析器地址本身不能证明查询经过什么路径。VPN 基础说明 把隧道与这些更广泛的隐私决定放在一起解释。
对等端是由公钥标识的另一名 WireGuard 参与者。各参与者保管私钥,把公钥分享给获准通信的对象。公钥不是用户名、付费账户或 VPN 服务商签发的证书,身份分发与授权由外围部署负责。[1]
协议把对等端身份与允许的内部 IP 地址关联,这称为加密密钥路由。发送时,目标地址帮助选择对等端;接收并解密后,源地址必须属于该认证对等端获准使用的范围。它不只是外层服务器地址列表,也不是完整的操作系统防火墙。[1][3]
公钥回答信任哪个对等端,端点告诉外部网络往哪里发送 UDP,内部地址则描述隧道承载的流量。公开公钥不会向网络观察者隐藏端点地址;更换端点也不等于更换密码学身份。
分清角色后,配置更容易理解。WireGuard 端点字段说明 解释地址字段,已连接却无法上网的路由检查 处理配置故障。这些都是独立于协议定义的任务。
WireGuard 握手认证对等端,并导出临时数据传输密钥。Noise 构造把长期身份密钥与新生成的临时密钥结合;正常交换包括发起消息和响应消息,之后用各方向的数据密钥保护传输。这里描述正常交换模型,不保证网络立即交付每条消息。[2]
ChaCha20-Poly1305 用于数据包的认证加密:ChaCha20 加密,Poly1305 提供认证标签,以拒绝无效或被篡改的密文。Curve25519 参与密钥协商,BLAKE2s 和相关导出操作承担其他工作。不能把这些名称压成一个“加密强度”分数。[2]
WireGuard 更新流量密钥,并以计数器和重放保护处理传输包。长期对等端密钥不同于某段通信使用的数据密钥。AES 与 ChaCha20 的职责比较 区分算法选择和密钥交换,避免用一个算法名代替整个安全设计。[2]
前向保密关注的是:在协议假设和正确密钥处理成立时,长期密钥日后泄露如何影响此前录下的数据。它不删除端点已保存的信息,也不保护当前已失陷的设备。VPN 会话的前向保密模型 解释这个较窄的属性。
官方局限说明还把“数据前向保密”与“身份隐藏的前向保密”区分开。响应方静态私钥日后泄露时,旧握手记录可暴露哪些发起方身份联系过它,但仅凭这一点不能解密此前的数据包内容。因此,“前向保密”必须说清所指属性。[4]
握手和数据消息都通过 UDP 发送,避免在应用已有 TCP 流外面再套一层可靠字节流。协议没有内置 TCP 传输模式;额外承载机制属于其他层。[2][4]
这意味着网络必须放行相关 UDP 路径。密钥正确,不会自动穿过防火墙、NAT 或受限接入网。公钥匹配也不证明包能送达;握手成功后的应用失败,与握手始终到不了,是不同问题。
WireGuard 重点是紧凑的加密隧道,不是混淆流量。包结构和行为仍可能被识别,不能承诺选择它便让 VPN 使用不可见,或与普通网页流量无法区分。保护包内容与分类器识别协议,是两个不同问题。[4]
协议与混淆层的区别 进一步分开这些属性,VPN 协议概览 提供其他设计的背景。本文不做速度排名,也不声称某国网络的可用性。
对等端收到来自新源地址和端口的有效认证流量后,可以更新记住的外层端点。设备切换网络时,公钥身份可以不变;端点是当前投递位置,不是身份本身。[1][3]
例如从 Wi-Fi 切到移动网络,外层 IP 可能改变。如果两条网络都允许所需路径,且有效包到达另一端,隧道可继续使用原有对等关系。这不等于保证下载无中断、所有应用会话不变,或系统切换期间绝不直连。
客户端还需要正常接口、路由和网络路径。切换期间应用可能超时,NAT 和防火墙也可能影响投递。所需断线阻断必须由客户端或操作系统覆盖这些状态,不能从漫游机制直接推断。
官方局限还讨论主动网络中间方重定向端点的情况。这类重定向本身不会解密认证数据,但说明端点移动与内容保密是不同属性,固定对等端部署可能需要相应网络限制。[4]
简单功能表容易隐藏不同责任方。下表区分 WireGuard 规定的机制与完整服务另需做出的决定,是编辑整理的范围图,不是产品测试结果。
| 需求 | 协议贡献 | 额外责任方或决定 |
|---|---|---|
| 数据包保密和认证 | 对等端之间的认证加密 | 可信端点及私钥保护 |
| 对等端身份 | 公钥认证 | 密钥分发、授权和撤销策略 |
| 流量范围 | 对等地址映射和隧道接口 | 系统路由及 IPv4/IPv6 覆盖 |
| DNS 行为 | 承载被路由进来的 IP 包 | 解析器选择和查询路由 |
| 故障后的流量阻断 | 没有通用断线阻断策略 | 客户端和系统防火墙行为 |
| 服务隐私 | 不规定账户或日志政策 | 服务商运行方式及独立证据 |
对于 AethoVPN 这类托管服务,应把公开说明的客户端路由行为与协议的对等端认证分别评估;应用模式和协议名称回答不同的覆盖问题。隧道与代理的范围比较 可帮助判断需要 IP 隧道还是应用转发,不据此推断服务底层协议。
Shadowsocks 的应用代理模型 从另一层开始。准确比较时,要先明确应用和目标覆盖需求,而非认为有加密就拥有相同范围。
WireGuard 是 IP 隧道协议及实现,承载路由选中的数据包。应用代理则从具体请求开始;完整 VPN 服务还增加运行与管理功能。[1]
WireGuard 用 ChaCha20-Poly1305 做数据认证加密,不把 AES-256 作为可选算法。只比较算法,不能证明完整服务的安全性。[2]
TCP 应用包可以在加密 IP 隧道内部传输,外层仍是 UDP。这并不意味着 WireGuard 自身有原生 TCP 模式。[4]
协议不会自动决定完整覆盖。系统路由、地址族、DNS 行为和客户端配置,决定哪些流量真正进入接口。
公钥标识密码学对等端,不必然对应个人或订阅。它与付费账户或现实身份的关联由外围部署建立。
漫游在有效流量到达后更新端点,不定义通用断线阻断,也不证明每次切换时路由和防火墙都阻止直连。
WireGuard 不以混淆为重点,加密不承诺流量无法识别。可识别的加密隧道仍能保护内容,同时也可能受到网络限制。[4]
来源核验日期:2026 年 10 月 5 日。
注册即可免费体验全部高级功能。
*仅限新用户;每位用户只能获得一次试用。