首页 > 解决方案 > 如何使用 nslookup 查找规范名称

问题描述

我需要使用 nslookup 找到三个网站的规范名称。当我这样做时nslookup -a google.es 8.8.8.8,答案是非权威的,但我需要权威的答案。

如何使用 nslookup 获得权威答案“google.es”、“upc.edu”和“uoc.es”的规范名称?

标签: dnsnslookup

解决方案


您得到的是非权威答案,因为您是在向递归解析器(8.8.8.8)而不是权威服务器询问答案。为了获得权威的答案,您需要向权威服务器询问您要查找的任何名称。

例如,。让我们做 google.es。我通常使用 dig,但这里是交互模式下的 nslookup。

找到授权。google.es 的服务器,您可以对 google.es 进行 NS 查询:

$ nslookup
> set query=ns
> google.es
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
google.es       nameserver = ns2.google.com.
google.es       nameserver = ns1.google.com.
google.es       nameserver = ns4.google.com.
google.es       nameserver = ns3.google.com.

Authoritative answers can be found from:

所以现在我们有 4 个不同的名称服务器 (ns[1-4].google.com),我们可以从中选择以获得权威的答案。在本例中,我将使用 ns1.google.com,但您可以选择任何一个。

这是向 ns1.google.com 发送 google.es 的 A 查询:

> set query=A
> server ns1.google.com
Default server: ns1.google.com
Address: 2001:4860:4802:32::a#53
Default server: ns1.google.com
Address: 216.239.32.10#53
> google.es
Server:         ns1.google.com
Address:        2001:4860:4802:32::a#53

Name:   google.es
Address: 172.217.2.3

您可能会发现阅读此 ServerFault 问题的答案有助于了解更多详细信息。


推荐阅读