对于我自己的 DNS 服务器,“dig ... @ip-address”有效,但“dig ... @domainname”无效

对于我自己的 DNS 服务器,“dig ... @ip-address”有效,但“dig ... @domainname”无效

我最近开始虚拟化服务器 - 其中一个是在 Debian 7 上运行 BIND 9 的 DNS 服务器。我的 DHCP 服务器正确地将其发布为网络的主 DNS,但如果我尝试使用dig kilraine.lan @dns.kilraine.lan

couldn't get address for 'dns.kilraine.lan': not found

虽然我从中获得了原始挖掘输出dig kilraine.lan @192.168.1.2

细节:

Debian 7 上的 BIND 9;通过 Proxmox 虚拟化 CT。

区域文件(电子邮件已被更改以隐藏我的个人信息)

; BIND data file for kilraine zone
;
$TTL    604800
@       IN      SOA     kilraine.lan. myaddress.myemail.com. (
                     2014060303         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL

        IN      A       192.168.1.2
;
@       IN      NS      dns.kilraine.lan
@       IN      A       192.168.1.2

dns2    IN      A       192.168.1.1
dns     IN      A       192.168.1.2
dhcp    IN      A       192.168.1.3
main    IN     A      192.168.1.10

反向区域文件

;
; BIND reverse data file for kilraine.lan
;
$TTL    604800
@       IN      SOA     kilraine.lan. myaddress.myemail.com. (
                     3006201401         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      dns.
1       IN      PTR     dns2.kilraine.lan
2       IN      PTR     dns.kilraine.lan
3       IN      PTR     dhcp.kilraine.lan
10      IN      PTR     main.kilraine.lan

最后是我的named.conf.local文件。

//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
// include "/etc/bind/zones.rfc1918";

zone "kilraine.lan" {
        type master;
        file "/etc/bind/db.kilraine.lan";
};

zone "1.168.192.in-addr.arpa" {
        type master;
        file "/etc/bind/db.192";
};

我重启过 BIND 9 很多次,每次都显示“OK”。我在服务器和客户端上都使用了 dnsutils 工具“dig”,每次都返回以下信息

    ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> kilraine.lan
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 46467
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;kilraine.lan.          IN  A

;; Query time: 2 msec
;; SERVER: 192.168.1.2#53(192.168.1.2)
;; WHEN: Mon Jun 30 21:53:41 2014
;; MSG SIZE  rcvd: 30

答案1

反向记录中缺少一些句号。应该以“kilraine.lan.”结尾,而不是“kilraine.lan”。此外,NS 记录应该是“dns.kilraine.lan.”而不是“dns.”或“dns.kilraine.lan”。如果您省略了终止句号,则实际上是在要求 BIND 添加区域名称(即,您将以 dns.kilraine.lan.kilraine.lan 结尾)。

其他问题/评论/想法:

  • 进行更改后,您是否重新启动了服务(或重新加载区域)?
  • 您的解析器是否指向您的 DNS 服务器?
  • BIND 是否在监听端口 53?服务器上是否有主机防火墙阻止任何访问 DNS 服务的尝试?
  • “dig main.kilraine.lan” 返回的内容与“dig @192.168.1.1 main.kilraine.com”返回的内容有什么不同吗?
  • 重新启动服务后,你查看过你的日志图块吗?

相关内容