WireGuard 是近年来最受关注的 VPN 协议之一,由 Jason A. Donenfeld 开发,以极简的代码量(约 4000 行)和出色的性能表现闻名。相比传统协议如 OpenVPN 和 IPsec,WireGuard 在连接速度、握手效率和电池续航方面都有显著优势。本文将带你深入了解 WireGuard 的原理、部署和优化。
一、为什么选择 WireGuard?
WireGuard vs 传统协议对比
| 对比维度 | WireGuard | OpenVPN | IPsec/IKEv2 |
|---|---|---|---|
| 代码量 | ~4,000 行 | ~100,000+ 行 | ~400,000+ 行 |
| 加密算法 | ChaCha20 + Poly1305 | AES-256-GCM / BF-CBC | AES-256-GCM / SHA-256 |
| 握手速度 | 1-RTT,~100ms | 2-RTT,~1-2s | 2-4-RTT,~1-3s |
| 漫游支持 | ✅ 无缝切换 | ⚠️ 需重新连接 | ⚠️ 需重新协商 |
| 电池续航 | ✅ 更省电 | ❌ 耗电较高 | ⚠️ 中等 |
| 内核集成 | Linux 5.6+ 原生 | ❌ 需用户态 | ✅ 原生支持 |
| 审计难度 | ✅ 极易审计 | ❌ 极其困难 | ❌ 极其困难 |
| 抗封锁能力 | ⚠️ UDP 特征明显 | ✅ TCP 可伪装 | ✅ UDP 4500 |
二、服务端一键部署
方法一:官方脚本(推荐)
# 安装 WireGuard
apt update && apt install -y wireguard wireguard-tools
# 生成密钥对
wg genkey | tee privatekey | wg pubkey > publickey
# 查看密钥
cat privatekey
cat publickey
方法二:wg-easy Docker 部署(带 Web UI)
docker run -d \
--name=wg-easy \
-e WG_HOST=你的服务器IP \
-e PASSWORD=管理密码 \
-e WG_DEFAULT_DNS=1.1.1.1,8.8.8.8 \
-v ~/.wg-easy:/etc/wireguard \
-p 51820:51820/udp \
-p 51821:51821/tcp \
--cap-add=NET_ADMIN \
--cap-add=SYS_MODULE \
--sysctl="net.ipv4.conf.all.src_valid_mark=1" \
--sysctl="net.ipv4.ip_forward=1" \
--restart unless-stopped \
ghcr.io/wg-easy/wg-easy
三、手动配置文件详解
服务端 /etc/wireguard/wg0.conf
[Interface]
PrivateKey = 服务器私钥
Address = 10.0.0.1/24
ListenPort = 51820
DNS = 1.1.1.1, 8.8.8.8
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
# 客户端1
PublicKey = 客户端1公钥
AllowedIPs = 10.0.0.2/32
[Peer]
# 客户端2
PublicKey = 客户端2公钥
AllowedIPs = 10.0.0.3/32
四、启动与管理
# 启动接口
wg-quick up wg0
# 停止接口
wg-quick down wg0
# 设置为开机自启
systemctl enable wg-quick@wg0
# 查看连接状态
wg show
# 查看接口信息
ip addr show wg0
五、常见问题 FAQ
Q: WireGuard 能被防火墙检测吗?
A: WireGuard 使用固定的 UDP 端口和特征明显的握手包,可以被深度包检测识别。如需抗封锁,建议配合 udp2raw 或 WireGuard over TCP 方案使用。
Q: 支持多设备同时连接吗?
A: 支持。在服务端配置中添加多个 [Peer] 段即可,每个设备独立分配 IP。
Q: 手机流量下耗电如何?
A: WireGuard 的加密算法专为移动设备优化,相比 OpenVPN 省电约 30-50%,是手机科学上网的理想选择。
总结
WireGuard 以其极简设计、现代加密和卓越性能成为 VPN 协议的新标杆。虽然抗封锁能力不如 Trojan/Xray 等伪装协议,但在速度和稳定性方面无可匹敌。如果你追求极致的连接速度和低延迟,WireGuard 是不二之选。配合 优质机场 的多协议节点,可以获得更全面的科学上网体验。
发表回复