DNS 服务器返回 SOA 记录而不是 A 记录

DNS 服务器返回 SOA 记录而不是 A 记录

我配置了一个 DNS 服务器,当我使用 dig 工具查询它时,它返回的是 SOA 记录而不是 A 记录。有人能告诉我这是什么原因吗?

root@pradeep-laptop:~# dig prashanth.foo

; <<>> DiG 9.8.1-P1 <<>> prashanth.foo
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 16583
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;prashanth.foo.         IN  A

;; AUTHORITY SECTION:
.           86389   IN  SOA a.root-servers.net. nstld.verisign-grs.com. 2012072401 1800 900 604800 890

;; Query time: 2 msec
;; SERVER: 172.16.140.34#53(172.16.140.34)
;; WHEN: Wed Jul 25 14:25:05 2012
;; MSG SIZE  rcvd: 106

区域文件如下:

 $TTL   300
 @  IN  SOA ns.prashanth.foo. root.prashanth.foo. (
                  2     ; Serial
                300     ; Refresh
              86400     ; Retry
            2419200     ; Expire
             604800 )   ; Negative Cache TTL
 ;

 prashanth.foo. IN  NS  ns.prashanth.foo.
 prashanth.foo.    IN      A       172.16.150.196
 ns         IN  A   172.16.150.196
 prashanth.foo.    IN      MX  10  mail.prashanth.foo.
 mail            IN      A       172.16.150.196

答案1

看看当你明确指定类型时会得到什么:

dig -t a prashanth.foo

或者

dig -t any prashanth.foo

如果您仍然没有看到,请更新序列号并重新加载区域。

答案2

您是否重新加载了区域文件?

使用 BIND:

sudo rndc reload

答案3

这是确切的区域文件吗?如果是,请不要在记录开头使用空格。
重新加载命名并重试。
例如,不要使用:
.. rashanth.foo. IN NS ns.prashanth.foo.
使用:
prashanth.foo. IN NS ns.prashanth.foo.

相关内容