我在我的树莓派上设置了一个Wireguard VPN,并且可以通过手机上的客户端应用连接到它。我可以通过手机访问互联网,并确认手机正在使用与树莓派相同的IP地址,所以VPN对外部互联网是有效的。 但是,我在树莓派上有一个本地的Web服务器,我可以使用直接的内部IP地址(192.168.1.50),使用raspberrypi.local主机名,或者使用/etc/hosts文件中定义的自定义主机来访问它。 然而,在手机和VPN上,我只能通过内部IP地址访问该本地Web服务器:raspberrypi.local或任何其他在/etc/hosts中定义的主机名都无法工作。 我该如何解决这个问题?
我通过安装Pi-Hole并在那里设置本地主机以及将其作为所有客户端的DNS服务器来间接解决了这个问题。现在,我可以通过VPN访问我的家庭网络,并实现本地主机名解析,同时还能享受到DNS级别的广告拦截的额外好处。 Pi-Hole和Wireguard VPN非常兼容(Pi-Hole检测到Wireguard并主动提供了所有配置)。
我有一个主机名可以在我直接连接到我的局域网时解析为“hostname.local”。 当我通过WireGuard连接时,我只能通过在主机名后添加一个句点(或点)来访问主机名:例如“hostname.”。 通过WireGuard连接时: ping hostname.local (doesn't work) ping hostname. (works)