如何查看域的实际名称服务器而不是“nsrecords”

如何查看域的实际名称服务器而不是“nsrecords”

域具有名称服务器和 ns 记录。这些不应该,但理论上可以不同。有多种方法可以查看域的 ns 记录:

挖:

➜  ~  dig +short NS stackoverflow.com
cf-dns01.stackoverflow.com.
cf-dns02.stackoverflow.com.

ns查找:

➜  ~  nslookup -type=any stackoverflow.com
Server:     195.186.1.111
Address:    195.186.1.111#53

Non-authoritative answer:
stackoverflow.com   nameserver = cf-dns01.stackoverflow.com.
stackoverflow.com   nameserver = cf-dns02.stackoverflow.com.

这两个命令都给出域的 ns 记录。通过 whois,您可以看到真实的名称服务器(在本例中是相同的)。但由于几乎每个顶级域名的大多数 whois 输出的格式都不同,因此很难从 whois 中解析它们。

有没有办法在不执行 whois 的情况下查看域的名称服务器(而不是 nsrecords)?

答案1

如果您想查看注册商列出的名称服务器,可以通过根服务器在 DNS 系统中获取这些服务器。

例如:

 dig @a.gtld-servers.net ns stackoverflow.com

; <<>> DiG 9.10.2-P4 <<>> @a.gtld-servers.net ns stackoverflow.com
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55658
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 2, ADDITIONAL: 3
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;stackoverflow.com.     IN  NS

;; AUTHORITY SECTION:
stackoverflow.com.  172800  IN  NS  cf-dns02.stackoverflow.com.
stackoverflow.com.  172800  IN  NS  cf-dns01.stackoverflow.com.

;; ADDITIONAL SECTION:
cf-dns02.stackoverflow.com. 172800 IN   A   173.245.59.4
cf-dns01.stackoverflow.com. 172800 IN   A   173.245.58.53

;; Query time: 65 msec
;; SERVER: 192.5.6.30#53(192.5.6.30)
;; WHEN: Mon Sep 21 15:53:29 GMT 2015
;; MSG SIZE  rcvd: 124

如果您修改注册商帐户中列出的名称服务器,这些服务器将反映在根/gtld 服务器中。当您修改名称服务器所服务的 DNS 区域时,它们不会影响根服务器返回的结果。此外,根服务器将返回的唯一记录是注册商为列出的 NS 记录定义的 NS 和 A/AAAA。这些只是查找要向其发送查询的域的权威(根据注册商)名称服务器的指针。

答案2

我不知道命令,但我在工作中使用它。它是我在 .bashrc 中的一个函数

namesvrs() { whois $1|grep -i "^Name Server"; }

将其添加到 .bashr 后,当您打开新终端时,您可以运行

$ namervrs stackoverflow.com 名称服务器:cf-dns02.stackoverflow.com。名称服务器:cf-dns01.stackoverflow.com。

您的情况可能会有所不同,如果您正在查看在一些较小的注册商处注册的域名,您可能需要使用 grep 正则表达式。

答案3

你的问题有点奇怪。或者至少使用奇怪的术语。

DNS 中的域具有名称服务器,这些名称服务器是通过 NS 记录指定的。就 DNS 而言,NS 记录中的内容是事实,全部事实,只有事实。 NS记录中的内容是根据定义域的名称服务器。其他地方没有“更好”的真理。

您在问题中所说的“名称服务器”听起来像是域注册商数据库中的内容。该信息存在于 DNS 之外。从在 DNS 中查找事物的角度来看,该数据完全无关(除了它可能会用于生成 NS 记录)。由于这些数据是每个注册商的内部数据,因此对于如何访问它没有全球标准。你为什么想要这些数据?某种统计项目?

相关内容