我尝试www.ox.ac.uk
从 Google 的 DNS 出发发起 DNS 跟踪请求(以牛津大学网站为例)8.8.8.8
,成功获取到了结果,路由是通过国家级 DNS 进行的nsa.nic.uk
。
但是当我尝试直接询问时nsa.nic.uk
,没有显示任何路线。这是正常的吗?为什么没有显示结果?
提前致谢!
命令 1(询问 Googld DNS):-
$ dig +trace www.ox.ac.uk @8.8.8.8
命令 1 结果(成功获取路线):-
8.8.8.8
(谷歌 DNS)
-> 192.203.230.10
(e.root-servers.net
)
-> 156.154.100.3
(nsa.nic.uk
)
-> 193.62.157.66
(ns4.ja.net
)
-> 193.63.105.17
(ns2.ja.net
)
-> 129.67.242.155
(www.ox.ac.uk
)
命令2(nsa.nic.uk
直接询问):-
$ dig +trace www.ox.ac.uk @156.154.100.3
命令 2 结果(无路线):-
Received 28 bytes from 156.154.100.3#53(156.154.100.3) in 79 ms
答案1
是的,这是正常的。
Google DNS 8.8.8.8 是一个“递归”DNS,这意味着它将为您解析任何域(通过查询域的每个组件的连续权威 DNS 服务器,从根开始一直到“www”组件。)
该国家 DNSnsa.nic.uk
是“uk.”的权威 DNS,但它不接受递归查询。
如果你执行不带 +trace 的“dig”命令,你会看到它会回复一些内容,但这只是树的下一级:
$ dig www.ox.ac.uk @156.154.100.3
;; AUTHORITY SECTION:
ac.uk. 172800 IN NS ns3.ja.net.
ac.uk. 172800 IN NS ns4.ja.net.
ac.uk. 172800 IN NS ns2.ja.net.
ac.uk. 172800 IN NS ns1.surfnet.nl.
ac.uk. 172800 IN NS dns-3.dfn.de.
ac.uk. 172800 IN NS ns0.ja.net.
ac.uk. 172800 IN NS auth03.ns.uu.net.
如果您然后进入下一步并向其中一个人询问域名,您将获得下一步:
$ dig www.ox.ac.uk @ns0.ja.net
;; AUTHORITY SECTION:
ox.ac.uk. 86400 IN NS dns1.ox.ac.uk.
ox.ac.uk. 86400 IN NS dns2.ox.ac.uk.
ox.ac.uk. 86400 IN NS dns0.ox.ac.uk.
ox.ac.uk. 86400 IN NS ns2.ja.net.
当您查询 8.8.8.8 时,它会为您完成解决的所有步骤...并且当您执行 +trace 时,它也会向您显示各个步骤...