我的默认(路由器) DNS服务器似乎会根据用于查询它的工具返回不同的结果。
dig:$ dig @192.168.1.2 test.example.com;<<>> DiG 9.16.8-Debian <<>> @192.168.1.2 test.example.com;(1服务器找到);全局选项:+cmd;Got回答:;->头<-操作码:查询,状态: NXDOMAIN,id: 58608;标志: qr;查询: 1,回答: 1,权威:1;问题部分:;test.example.com。在A ;;回答部分: test.example.com。41 CNAME 123.123.12.123。;;权威科:3357在SOAa.root-servers.net。Nstld.sign-grs.com。2020112400 1800 900 604800 86400 ;;查询时间:0毫秒;服务器: 192.168.1.2#53(192.168.1.2);时间: CET 2020年11月24日10:12:40;如您所见,它成功地找到了test.example.com的IP地址,即123.123.12.123。但是,以下两个工具没有。
host:$ host test.example.com 192.168.1.2使用域服务器:名称: 192.168.1.2地址: 192.168.1.2#53别名:主机test.example.com未找到: 3(NXDOMAIN)nslookup:$ nslookup test.example.com 192.168.1.2服务器: 192.168.1.2地址: 192.168.1.2#53 **服务器找不到test.example.com: NXDOMAIN这里发生什么事情?为什么dig、host和nslookup的结果有区别?它们不是都在引擎盖下执行相同的DNS查询吗?
编辑:正如被接受的答案所指出的,我错误地使用了CNAME而不是A记录。我已经更新了DNS条目,现在域名解析正确。
Edit2:域名和IP是假的
发布于 2020-11-24 10:25:51
定义如下:
test.example.com. IN A 123.123.12.123都是对的。
这是:
test.example.com。41 CNAME 123.123.12.123。
是无效的。CNAME必须指向左边出现的条目:名称,而不是IP地址。
在这里,IP地址及其最后的点无论如何都被当作名称,这就是为什么权威部分引用根DNS服务器a.root-servers.net,因为即使是最低的部分(也就是123)。根据它找不到。
因此,第一个命令(dig)报告了它得到的答案,同时也告诉了NXDOMAIN,而另外两个命令不能解析最终结果,只告诉NXDOMAIN。
https://serverfault.com/questions/1043697
复制相似问题