如何防止dnsmasq将我的域名添加到无效的域请求中?

时间:2020-03-05 18:38:36  来源:igfitidea点击:

我使用dnsmasq来解析我的家庭网络上的DNS查询。不幸的是,如果域名未知,它将在请求后添加我自己的域名,这意味着我总是最终在浏览器中查看自己的站点。

例如,如果在浏览器中输入http://dlksfhoiahdsfiuhsdf.com,我最终将使用该URL查看自己的网站。如果我尝试类似:

host dlksfhoiahdsfiuhsdf.com

而不是预期的:

Host dlksfhoiahdsfiuhsdf.com not found: 3(NXDOMAIN)

我得到这个:

dlksfhoiahdsfiuhsdf.com.mydomainname.com has address W.X.Y.Z.

显然,dnsmasq会将我的域名添加到不可能的名称请求中,以解决这些问题,但是我宁愿看到未找到的错误。

我尝试使用扩展主机和域配置设置,但无济于事。还有什么我可以尝试的吗?

解决方案

回答

我尝试从我自己的配置中删除需要的域以复制问题,但没有发生此行为。这是我可以找到的唯一可能与之接近的其他参数。

主机文件是什么样的?也许正在发生某种奇怪的事情,使其认为所有奇怪的域都在网络本地?

回答

尝试使用尾随点查询来显式设置根:

host dlksfhoiahdsfiuhsdf.com.

回答

可能不是dnsmasq这样做,而是本地解析程序库。如果我们使用unixish,请尝试从/etc/resolv.conf中删除"搜索"或者"域"行

回答

可能还有其他原因,但是最明显的原因是/etc/resolv.conf的配置,以及大多数DNS客户端喜欢非常简洁地对待错误的事实。

benc$ host thing.one
Host thing.one not found: 3(NXDOMAIN)

(好的,我在使用什么DNS配置?)

benc$ cat /etc/resolv.conf 
nameserver 192.168.1.1

(编辑...)

benc$ cat /etc/resolv.conf 
search test.com
nameserver 192.168.1.1
benc$ host thing.one
thing.one.test.com has address 64.214.163.132

不用费心去做数据包跟踪,可能的行为是它返回它尝试的最后一个FQDN的错误。