WireGuard `wg-quick up` 挂在 `ip link add $profile type wireguard` 上

WireGuard `wg-quick up` 挂在 `ip link add $profile type wireguard` 上

多年来,我一直是 WireGuard 的忠实用户,从未遇到过任何问题。今天,似乎毫无缘由地,我开始遇到问题。

wg-quick up $profile以 root 身份运行,终端会话被锁定(ctrl+c/d 等不会终止它)。唯一的输出是[#] ip link add $profile type wireguard

这是我的配置:

PrivateKey = $privatekey
Address = 10.19.49.3/24,fd9d:bc11:4021::3/48
DNS =  172.16.0.1 

[Peer]
PublicKey = $publickey
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = $ipaddress:$port
PersistentKeepalive = 25

(显然已填写 $variables)

我看了一下,dmesg但其中一次也没有提到wireguardwg

我该怎么做?我没有看到--verbose选项wg-quick。有什么好的调试方法吗?


以下是进程列表:

root      432947  0.0  0.0  17000  7772 pts/5    S+   10:17   0:00 sudo wg-quick up $profile
root      432948  0.0  0.0   8060  4244 pts/5    S+   10:17   0:00 /bin/bash /usr/bin/wg-quick up $profile
root      925699  0.0  0.0      0     0 pts/5    Z+   10:58   0:00 [wg-quick] <defunct>

附加到sudo wg-quick $profile up进程(432947):

[#0] 0x7f96c084b34f → ppoll()
[#1] 0x7f96c099d169 → sudo_ev_loop_v1()
[#2] 0x563081408861 → add eax, 0x1
[#3] 0x56308140261c → xor r8d, r8d
[#4] 0x5630813eeb38 → mov ebx, eax
[#5] 0x7f96c0772310 → __libc_start_call_main()
[#6] 0x7f96c07723c1 → __libc_start_main_impl()
[#7] 0x5630813eeda5 → hlt 

附加到[wg-quick] <defunct>(925699):

warning: process 925699 is a zombie - the process has already terminated
ptrace: Operation not permitted.

注意:我丢失了服务器的 SSH 密钥,因此无法从那边进行调试,但 SSH 公钥被拒绝消息确认服务器确实仍在运行。

编辑:我刚刚测试过,如果我使用手机上的相同 WireGuard 配置,服务器就可以正常工作。我该如何调试此客户端?

答案1

首先,Table = off在 下添加选项[Interface]。由于您的 allowips 是 0.0.0.0/0,默认网关可能会更改为 wireguard 服务器,这会导致您失去 ssh 控制权。

使用Table = off选项,您可能可以在启动 wg-quick 后恢复 shell 提示。然后您可以尝试使用 ping、traceroute 等网络工具,看看出了什么问题。

相关内容