bind9 无法解析没有前缀的域(prefix.domain.com)

bind9 无法解析没有前缀的域(prefix.domain.com)

我已经在我的 Linux 服务器上设置了绑定 DNS 服务器。但由于某种原因,当没有前缀(如 www)时,它无法解析我的域名的 IP

我尝试使用 nslookup 并将服务器设置为我的 dns 服务器 ip

例如,当我在 www.mydomain.com 上执行 nslookup 时,它会显示我在 bind9 区域文件中定义的 IP,但是当我在 mydomain.com 上执行 nslookup 时,没有返回 IP :(

我的区域文件:

$ORIGIN .
$TTL 86400  ; 1 day
mydomain.com        IN SOA  ns1.mydomain.com. mail.mydomain.com. (
                2017020711 ; serial
                28800      ; refresh (8 hours)
                7200       ; retry (2 hours)
                864000     ; expire (1 week 3 days)
                86400      ; minimum (1 day)
                )
            NS  ns1.mydomain.com.
            MX  10 mx01.kundenserver.de.
            MX  20 mx02.kundenserver.de.
$ORIGIN mydomain.com.


*           A   188.***.***.***
www         A   188.***.***.***
ability     A   5.***.***.***
dyn         A   91.44.***.***
nl          A   95.46.***.***
ns1         A   188.***.***.***

我希望你能发现我的错误:(

答案1

您需要添加一条记录@,代表当前的原点。

它看起来应该是这样的: @ A 188.***.***.***

这是因为通配符(*)记录仅代表子域,而不是主域。

答案2

正如 ConnorJC 所说,您需要一个 @ 记录。这是我在家使用的虚假域名的工作区域文件...请特别注意以下行

@       IN  A   192.168.1.2

一旦您添加了它(并增加了您的序列号)并重新启动服务,您就可以开始了。

$TTL    604800
@       IN      SOA     ns.myhouse.home. root.myhouse.home. (
                 2016110202         ; Serial
                     604800         ; Refresh
                      86400         ; Retry
                    2419200         ; Expire
                     604800 )       ; Negative Cache TTL
;
@           IN      NS      ns.myhouse.home.
@       IN  A   192.168.1.2
ns          IN      A       192.168.1.2
router      IN  A   192.168.1.1
ap      IN  A   192.168.1.3
server      IN      A       192.168.1.2
www         IN      A       192.168.1.2
pi      IN  A   192.168.1.2

相关内容