我正在尝试按照作业说明获取欧洲某台服务器的权威 DNS 服务器。我查找了如何操作,找到了两种不同的方法。
一是:
nslookup -type=soa ox.ac.uk
另一个是:
nslookup -type=ns ox.ac.uk
两者都给了我权威答案部分:
Authoritative answers can be found from:
起初我以为这可能是牛津大学的安全功能,也许他们向 nslookup 隐藏了他们的 DNS 地址,以避免这些服务器受到攻击。但我发现这是一个愚蠢的结论,我对 Google 给我的“欧洲大学”的每所大学都尝试了这些命令,它们都没有给我权威答案。是我输入了错误的命令,是我的电脑出了问题,还是我的 ISP 把我搞得一团糟?
完整命令和输出在这里:
Sat Apr 08 23:06 user_name:/Users/user_name $nslookup -type=soa ox.ac.uk
Server: 192.168.1.254
Address: 192.168.1.254#53
Non-authoritative answer:
ox.ac.uk
origin = nighthawk.dns.ox.ac.uk
mail addr = hostmaster.ox.ac.uk
serial = 2017040772
refresh = 3600
retry = 1800
expire = 1209600
minimum = 900
Authoritative answers can be found from:
Sat Apr 08 23:06 user_name:/Users/user_name $nslookup -type=NS ox.ac.uk
Server: 192.168.1.254
Address: 192.168.1.254#53
Non-authoritative answer:
ox.ac.uk nameserver = dns2.ox.ac.uk.
ox.ac.uk nameserver = dns1.ox.ac.uk.
ox.ac.uk nameserver = dns0.ox.ac.uk.
ox.ac.uk nameserver = ns2.ja.net.
Authoritative answers can be found from:
答案1
要得到保证要使用 nslookup 获取来自域的权威(且最新)答案,您应该直接查询权威服务器。例如,要获取域的权威 DNS 名称服务器ox.ac.uk
,请在 nslookup 中运行:
> set query=ns
> ox.ac.uk
该set query=ns
命令告诉 nslookup 我们想知道哪些 DNS 服务器对该域具有权威性。您将获得包含该ox.ac.uk
域的权威名称服务器的输出:
ox.ac.uk nameserver = dns2.ox.ac.uk.
ox.ac.uk nameserver = dns1.ox.ac.uk.
ox.ac.uk nameserver = dns0.ox.ac.uk.
ox.ac.uk nameserver = ns2.ja.net.
现在,这些结果来自您的系统当前配置使用的任何 DNS 服务器,这意味着这些记录可能被缓存。如果您真的想确保获得最新的信息,您需要直接查询域的权威名称服务器之一,如下所示:
在 nslookup 运行中:
> server dns2.ox.ac.uk
这告诉 nslookup 将后续 DNS 查找发送到指定服务器,该服务器对此域具有权威性。(我们上面查询中列出的任何一个 DNS 服务器都可以。)现在从名称服务器记录查询模式切换回“任何”记录模式:
> set query=any
然后对您想要的任何记录发出查询。在本例中,我们将使用以下命令查询域本身:
> ox.ac.uk
结果包括该域的权威名称服务器:
服务器:dns1.ox.ac.uk 地址:129.67.1.191ox.ac.uk 互联网地址 = 129.67.242.154 ox.ac.uk 互联网地址 = 129.67.242.155 ox.ac.uk 名称服务器 = dns0.ox.ac.uk ox.ac.uk 名称服务器 = dns1.ox.ac.uk ox.ac.uk 名称服务器 = dns2.ox.ac.uk ox.ac.uk 名称服务器 = ns2.ja.net
primary name server = nighthawk.dns.ox.ac.uk responsible mail addr = hostmaster.ox.ac.uk serial = 2017040772 refresh = 3600 (1 hour) retry = 1800 (30 mins) expire = 1209600 (14 days) default TTL = 900 (15 mins)
这主名称服务器是“主”DNS 服务器。这通常是域管理员执行 DNS 记录更新的地方。其余域名服务器是“从属”DNS 服务器。它们的工作只是保留主服务器提供的区域文件的副本。拥有多个 DNS 服务器可确保即使其中一台服务器发生故障,区域仍可访问。
列出的任何一个 DNS 服务器都应该能够(权威地)响应 DNS 查询,除非域管理员对它们进行了其他配置。