Wireguard
文章目录
参考
相关软件
tailscale
替代的开源 server headscale
FAQ
wireguard + archlinux 安装方法
注意:
正确安装方法: wireguard-tools + openresolv:
- 原因: wireguard 依赖的 resolveconf 命令需要使用 openresolv 包来安装, wireguard + systemd-resolve 会破坏系统的 dns 解析功能,造成 dig www.baidu.com 可以使用,而 ping www.baidu.com 无法解析域名
wireguard + udp2raw
注意:
需要把 MTU 设置成 1200
- 否则会造成可以 ping 通,也可以 telnet,但是 curl 或者 ssh 到服务器失败
udp2raw 两种模式
--raw-mode faketcp需要配合-a一起使用,-a是为了添加 iptables--raw-mode easy-faketcp不需要添加-a, 它可以跳过 iptables 设置,但是会有一定的性能损失
wireguard + udp2raw 网速太慢问题
通过
udp2raw --fix-gro方法修复- 测试有效
- 使用 UDPSpeeder 加速
wireguard + NetworkManager 造成 DNS 冲突问题
arch linux
问题表现:
- 重启电脑后, wireguard 不能使用
sudo systemctl start wg-quick@wg0.service无效sudo wg-quick up wg0有效- 或者通过命令
sudo resolvconf -u重新生成/etc/resolv.conf后可以临时使用
- 或者通过命令
解决办法:
参考:
https://wiki.archlinux.org/title/WireGuard#Routes_are_periodically_reset
1 2 3 4/etc/NetworkManager/conf.d/unmanaged.conf [keyfile] unmanaged-devices=type:wireguardhttps://wiki.archlinux.org/title/WireGuard#Broken_DNS_resolution
- 使用 systemd-resolveconf:
sudo pacman -S systemd-resolvconf
- 使用 systemd-resolveconf:
Ubuntu 24.04
方法一:
直接禁用 wireguard 中的 DNS
1 2 3 4 5[Interface] PrivateKey = oHuvJ4rxRvwkhccInVs36f0WrfqdfdfXft8wkaTdJdfdf4= Address = 10.0.18.3/24 # DNS = 10.0.18.2,114.114.114.114 MTU = 1200
方法二:
修改 systemd-resolve 的配置
1 2 3 4 5 6 7 8 9 10 11# file: /etc/systemd/resolved.conf [Resolve] # Some examples of DNS servers which may be used for DNS= and FallbackDNS=: # Cloudflare: 1.1.1.1#cloudflare-dns.com 1.0.0.1#cloudflare-dns.com 2606:4700:4700::1111#cloudflare-dns.com 2606:4700:4700::1001#cloudflare-dns.com # Google: 8.8.8.8#dns.google 8.8.4.4#dns.google 2001:4860:4860::8888#dns.google 2001:4860:4860::8844#dns.google # Quad9: 9.9.9.9#dns.quad9.net 149.112.112.112#dns.quad9.net 2620:fe::fe#dns.quad9.net 2620:fe::9#dns.quad9.net #DNS= # wireguard ----- DNS=114.114.114 223.5.5.5 DNSStubListener=no # wireguard fix ---注意:
dns 优先级:
- NetworkManager 手动设置(自动的没有测试)
- resolved.conf DNS= 设置
- wireguard DNS= 设置
- 如果想要使用 wireguard 中的 DNS 配置,需要取消 NetworkManager 和 resolved.conf 中的配置
文章作者
上次更新 2025-09-24 (360d44c)