WireGuard 未连接到 Internet

Posted

技术标签:

【中文标题】WireGuard 未连接到 Internet【英文标题】:WireGuard not connecting to the Internet 【发布时间】:2019-09-03 03:25:27 【问题描述】:

WireGuard 服务器似乎没有将连接转发到 Internet。

我尝试在我的计算机和服务器上重新安装 Wireguard,但问题仍然存在。

当我sudo wg-quick up wg0-client 时,我得到:

[#] wg setconf wg0-client /dev/fd/63
[#] ip address add 10.200.200.2/32 dev wg0-client
[#] ip link set mtu 1420 up dev wg0-client
[#] resolvconf -a tun.wg0-client -m 0 -x
Too few arguments.
Too few arguments.
[#] wg set wg0-client fwmark 51820
[#] ip -4 route add 0.0.0.0/0 dev wg0-client table 51820
[#] ip -4 rule add not fwmark 51820 table 51820
[#] ip -4 rule add table main suppress_prefixlength 0

这是我的 /etc/wireguard/wg0.conf(在我的服务器上)...

[Interface]
Address = 10.200.200.1/24
SaveConfig = true
PrivateKey = server_private_key
ListenPort = 51820

[Peer]
PublicKey = client_public_key
AllowedIPs = 10.200.200.2/32

...和我的 /etc/wireguard/wg0-client.conf(在我的机器上):

[Interface]
Address = 10.200.200.2/32
PrivateKey = client_private_key
DNS = 10.200.200.1

[Peer]
PublicKey = server_public_key
Endpoint = server_address:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 21

我猜-4Too few arguments 的行可能是问题的关键,但我对这类事情知之甚少,无法自己弄清楚。当然我没有忘记在我的服务器上wg-quick up wg0

【问题讨论】:

你使用的 linux 发行版和版本是什么? 【参考方案1】:

Too few arguments 只是一个警告,我遇到了同样的问题并且连接正常。有人说这是a resolvconf bug 中的resolvconf 的问题。

您可以使用wireguard scripts 中的脚本重试。

【讨论】:

这实际上是一个DNS问题,我的服务器的DNS配置错误。我把conf文件中的DNS改成1.1.1.1,现在可以正常使用了! 我发现我必须将 wg0.conf 文件中的 DNS 条目设置为与我的 /etc/resolv.conf 值相同

以上是关于WireGuard 未连接到 Internet的主要内容,如果未能解决你的问题,请参考以下文章

Wireguard 服务器连接到客户端

Nextcloud 未连接到 Redis

查尔斯调试代理未连接到本地主机

未连接到互联网时如何显示警报? iOS

ngrok 未连接到本地服务器

未连接到视图的元素