我正在尝试执行以下命令
nslookup -type=NS mit.edu
但每次它都会给出以下答案
Non-authoritative answer:
*** Can't find mit.edu: No answer
我尝试过 mit.edu 以外的几个网站,得到了相同的结果
它仅当我使用其他 DNS 服务器时才有效,例如:
nslookup -type=NS mit.edu 8.8.8.8
那么这是什么原因呢?
谢谢
编辑 :
有人认为这是因为 nslookup 太旧了,但 dig 也出现了同样的问题
当执行时dig ns mit.edu
结果不包含答案
; <<>> DiG 9.7.0-P1 <<>> ns mit.edu
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58275
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mit.edu. IN NS
;; Query time: 0 msec
;; SERVER: 10.0.0.138#53(10.0.0.138)
;; WHEN: Mon Nov 7 13:16:08 2011
;; MSG SIZE rcvd: 25
但是在执行时dig ns mit.edu @8.8.8.8
结果有答案
; <<>> DiG 9.7.0-P1 <<>> ns mit.edu @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24574
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mit.edu. IN NS
;; ANSWER SECTION:
mit.edu. 2385 IN NS BITSY.mit.edu.
mit.edu. 2385 IN NS W20NS.mit.edu.
mit.edu. 2385 IN NS STRAWB.mit.edu.
;; Query time: 124 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Mon Nov 7 13:16:36 2011
;; MSG SIZE rcvd: 86
那么为什么我的本地 DNS 服务器(10.0.0.138)拒绝回答 NS 查询(无论是通过 dig 还是 nslookup)?
答案1
NSLOOKUP 没有损坏...这太荒谬了。
问题在于您的 DNS 服务器配置不正确。您需要配置至少一个转发器,以便您的服务器不具备权限的查询能够被转发到 Internet 上能够响应的 DNS 服务器。
答案2
答案3
首先,您应该通过ipconfig /flushdns
Windows 清除本地 DNS 缓存,然后通过关闭然后打开在 Linux 上连接到 Internet 的 int。
然后再次检查它是否有效,如果无效,则问题在于您的路由器的 DNS 缓存(其中一些使用它)或您的 ISP 的 DNS 缓存。
我建议您做的是更改本地计算机或路由器上的 DNS 解析器,使用 8.8.8.8(Google 的服务器),很多时候它也会为您带来更好的性能。