无法通过 Wireguard 隧道访问 PiHole DNS 服务?

Accessing the PiHole DNS Service over the Wireguard Tunnel not possible?

我已经开始通过 WireGuard 设置我自己的 VPN 服务,它在以下情况下工作得很好...

配置 (工作)

Client

[Interface]
PrivateKey = *hidden*
Address = 10.6.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = *hidden*
PresharedKey = *hidden*
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = vpn.myserver.net:51820

I've set AllowedIPs (IPv4) to 0.0.0.0/0 allowing the Client routing his DNS Request over the Server while preventing a DNS Leak.


我的 PiHole 服务 使用 eth0 接口,而 Wireguard 使用它自己的 wg0
Pihole (DNS) 的私有 IPv4 是 10.0.0.5Server Gateway10.0.0.1.

配置 (目前没有工作)

Client

[Interface]
PrivateKey = *hidden*
Address = 10.6.0.2/24
DNS = 10.0.0.5

[Peer]
PublicKey = *hidden*
PresharedKey = *hidden*
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = vpn.myserver.net:51820

I appreciate any ideas and tips Posted under this Question, happy commenting :)

对于未来正在阅读本文的每个人...

我找到问题并解决了问题。


但首先,我做了什么?

  • 我仔细检查了pihole 运行 并通过请求 Google

    的 DNS IP 来工作

    nslookup google.com 10.0.0.5

Which gave me the Output

Server:     10.0.0.5
Address:    10.0.0.5#53

Non-authoritative answer:
Name:   google.de
Address: 216.58.212.163

在这里我看到了我的 DNS 地址 10.0.0.5#53 并且特别注意到 端口 53 这显然是标准 DNS 端口

  • 所以我问自己这个端口是否允许在我的 ufw(防火墙)中并且运行遵循命令

    sudo ufw status verbose

Which gave me the Output

To                         Action      From
--                         ------      ----
51820/udp                  ALLOW IN    Anywhere
22                         ALLOW IN    Anywhere
51820/udp (v6)             ALLOW IN    Anywhere (v6)
22 (v6)                    ALLOW IN    Anywhere (v6)

Anywhere on eth0           ALLOW FWD   10.6.0.0/24 on wg0

在这里我终于看到,端口 53 不允许从网络外部访问

...哈哈...

So I fired up the command sudo ufw allow 53 and after that my WireGuard PiHole DNS started working :)


我希望这对解决相同问题的任何人都有帮助。 ~干杯