当我使用路由器 IP 地址以外的 DNS 服务器时,Ubuntu 或任何其他应用程序(Web 浏览器)都无法解析主机名。
我已使用 Ubuntu 的默认网络管理器 UI 添加了 Google 的 DNS 服务器(8.8.8.8 和 8.8.4.4)。
当我添加路由器的 IP 地址(8.8.8.8、8.8.4.4 和 192.168.15.1)时,DNS 解析开始工作。
以下是我的相关配置:
解析.conf:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1
网络管理器.conf:
[main]
plugins=ifupdown,keyfile
dns=dnsmasq
no-auto-default=<some mac address>,
[ifupdown]
managed=false
在 /etc/网络/接口:
auto lo
iface lo inet loopback
我尝试了不同的解决方案,例如从 networkmanager.conf 禁用 dnsmasq,但没有任何效果。
以下是主机和挖掘结果:
host www.google.com 8.8.8.8 - times out.
host www.google.com 192.168.15.1 - works immediatly.
dig @8.8.8.8 www.google.com - times out.
dig @192.168.15.1 www.google.com - works immediatly.
然而,我可以成功 ping 到 8.8.8.8,这意味着服务器至少是可以访问的。
我的路由器或 ISP 是否可能拒绝向路由器中 ISP 设置的服务器以外的服务器发出的 DNS 请求?
答案1
它可能是您的路由器,但也可能是您的 ISP:我见过 ISP 阻止所有到其 DNS 以外的其他 IP 的 DNS(UDP 53)请求 - 他们这样做是为了赚钱(故意让他们的 DNS 解析错误的广告网站)或有时是出于法律原因(基于 DNS 的网站阻止)。
在您询问之前,请先确认:是的,他们故意破坏 DNS。