为什么在重新启动 BIND 时会出现“忽略区域外数据”

6by*_*tes 5 domain-name-system linux configuration bind

我一直在使用自己的 DNS 服务器,但后来我转向了第三方 DNS 提供商。昨天我想回去使用我自己的 DNS 并取消这个第三方服务。我已经降低了当前 DNS conf 中的 TTL,在 GoDaddy 中为我的域更改了 DNS 信息,这就是问题开始的时候。

我的域似乎只对某些人有效,但对其他人无效,所以很明显有问题。

重新启动绑定时,service named restart一切似乎都正常,但稍后在来自 Logwatch 的电子邮件中,我收到如下错误:

mapvivo.com:30: ignoring out-of-zone data (ns1.mydns.com): 3 Time(s)
mapvivo.info:16: ignoring out-of-zone data (ns1.mydns.com): 5 Time(s)
Run Code Online (Sandbox Code Playgroud)

任何人都可以指出我正确的方向吗?

我对以下两个域的 BIND 配置:

文件: /var/named/chroot/etc/zones.external

zone "mapvivo.com" IN {
    type master;
    file "mapvivo.com";
    allow-transfer { 213.251.188.140; };
    allow-update { none; };
    notify yes;
    also-notify { 213.251.188.140; };
};
zone "mapvivo.info" IN {
    type master;
    file "mapvivo.info";
    allow-transfer { 213.251.188.140; };
    allow-update { none; };
    notify yes;
    also-notify { 213.251.188.140; };
};
Run Code Online (Sandbox Code Playgroud)

文件/var/named/chroot/var/named/mapvivo.com是我的主域

$TTL 3600
$ORIGIN mapvivo.com.
@       IN      SOA     ns22943.ovh.net. sdns1.ovh.net. (
        2010032101 ; Serial
        10800      ; Refresh
        3600       ; Retry
        2419200    ; Expire
        3600 )    ; NXDOMAIN TTL

        IN      NS              ns22943.ovh.net.
        IN      NS              sdns1.ovh.net.

        IN      MX      10      ASPMX.L.GOOGLE.COM.
        IN      MX      20      ALT1.ASPMX.L.GOOGLE.COM.
        IN      MX      20      ALT2.ASPMX.L.GOOGLE.COM.
        IN      MX      30      ASPMX2.GOOGLEMAIL.COM.
        IN      MX      30      ASPMX3.GOOGLEMAIL.COM.
        IN      MX      30      ASPMX4.GOOGLEMAIL.COM.
        IN      MX      30      ASPMX5.GOOGLEMAIL.COM.
        IN      A               91.121.9.21
*       IN      A               91.121.9.21
edu     IN      A               91.121.9.21
googleXXXXXXXXXXXXXXXX  IN      CNAME   google.com.
ns22943.ovh.net. IN A           91.121.9.21
Run Code Online (Sandbox Code Playgroud)

文件/var/named/chroot/var/named/mapvivo.info只是在Apache中的别名mapvivo.com

$TTL 86400
$ORIGIN mapvivo.info.
@       IN      SOA     ns22943.ovh.net. sdns1.ovh.net. (
        2009042901 ; Serial
        10800      ; Refresh
        3600       ; Retry
        2419200    ; Expire
        3600 )    ; NXDOMAIN TTL

        IN      NS              ns22943.ovh.net.
        IN      NS              sdns1.ovh.net.

        IN      A               91.121.9.21
*       IN      A               91.121.9.21
ns22943.ovh.net. IN A           91.121.9.21
Run Code Online (Sandbox Code Playgroud)

vio*_*let 3

看起来这是这条线的错:

ns1.mydns.com. IN A 111.111.111.111

您的 mydomain.com 区域中不能有其他区域 (mydns.com) 的 DNS 记录。该记录属于 mydns.com 的区域。

这不会导致某种严重故障或爆炸,BIND 只是说它将忽略这一行。

======

检查列出的 DNS 服务器中的 mapvivo.info 的 A 记录似乎表明它们根本没有您所在区域的任何数据(两者都返回如下结果):

[jrod@selene ~]$ dig mapvivo.info @sdns1.ovh.net

; <<>> DiG 9.6.1 <<>> mapvivo.info @sdns1.ovh.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 55728
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available`

;; QUESTION SECTION:
;mapvivo.info.                  IN      A

;; Query time: 122 msec
;; SERVER: 213.251.188.140#53(213.251.188.140)
;; WHEN: Tue Mar 23 01:43:50 2010
;; MSG SIZE  rcvd: 30
Run Code Online (Sandbox Code Playgroud)

91.121.9.21 是该域的权威域名服务器吗?我的 nmap 扫描表明端口 53 对于 TCP 和 UDP 均已关闭。