找不到主机 home.lan.home.lan:bind9 (DNS) 中出现 4(NOTIMP) 错误

找不到主机 home.lan.home.lan:bind9 (DNS) 中出现 4(NOTIMP) 错误

我一直在关注本指南在 Ubuntu 12.04 上设置 DNS 服务器bind9,但完成所有配置后,当我运行时host -l home.lan出现以下错误:

; Transfer failed.
Host home.lan.home.lan not found: 4(NOTIMP)
; Transfer failed.

我的 Ubuntu 服务器的名称是dnsserver且有 IP 地址192.168.0.254,网络上还有另外 3 台主机(webserver有 IP 地址192.168.0.12owncloud有 IP 地址192.168.0.14和路由器192.168.0.1)。

以下是我的所有配置文件。

配置文件

/etc/bind/named.conf.options

options {
    directory "/var/cache/bind";

    // If there is a firewall between you and nameservers you want
    // to talk to, you may need to fix the firewall to allow multiple
    // ports to talk.  See http://www.kb.cert.org/vuls/id/800113

    // If your ISP provided one or more IP addresses for stable
    // nameservers, you probably want to use them as forwarders.
    // Uncomment the following block, and insert the addresses replacing
    // the all-0's placeholder.

    forwarders {
        8.8.8.8;
        4.4.4.4;
    };

    //========================================================================
    // If BIND logs error messages about the root key being expired,
    // you will need to update your keys.  See https://www.isc.org/bind-keys
    //========================================================================
    dnssec-validation auto;

    auth-nxdomain no; # conform to RFC1035
    listen-on-v6 { any; };
};

/etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.0.254
netmask 255.255.255.0
gateway 192.168.0.1
network 192.168.0.0
broadcast 192.168.0.255
dns-nameservers 127.0.0.1
dns-search home.lan
dns-domain home.lan

/etc/bind/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 "home.lan" IN {
    type master;
    file "/etc/bind/zones/home.lan.db";
};

zone "0.168.192.in-addr.arpa" {
    type master;
    file "/etc/bind/zones/rev.0.168.192.in-addr.arpa";
};

/etc/bind/zones/home.lan.db

; Use semicolons to add comments.
; Host-to-IP Address DNS Pointers for home.lan
; Note: The extra “.” at the end of the domain names are important.

; The following parameters set when DNS records will expire, etc.
; Importantly, the serial number must always be iterated upward to prevent
; undesirable consequences. A good format to use is YYYYMMDDII where
; the II index is in case you make more that one change in the same day.
$ORIGIN .
$TTL 86400      ; 1 day
home.lan. IN SOA dnsserver.home.lan. hostmaster.home.lan. (
    2008080901 ; serial
    8H ; refresh
    4H ; retry
    4W ; expire
    1D ; minimum
)

; NS indicates that dnsserver is the name server on home.lan
; MX indicates that dnsserver is (also) the mail server on home.lan
home.lan. IN NS dnsserver.home.lan.
home.lan. IN MX 10 dnsserver.home.lan.

$ORIGIN home.lan.

; Set the address for localhost.home.lan
localhost    IN A 127.0.0.1

; Set the hostnames in alphabetical order
dnsserver    IN A 192.168.0.254
owncloud     IN A 192.168.0.14
router       IN A 192.168.0.1
webserver    IN A 192.168.0.12

/etc/bind/zones/rev.0.168.192.in-addr.arpa

; IP Address-to-Host DNS Pointers for the 192.168.0 subnet
@ IN SOA dnsserver.home.lan. hostmaster.home.lan. (
    2008080901 ; serial
    8H ; refresh
    4H ; retry
    4W ; expire
    1D ; minimum
)
; define the authoritative name server
           IN NS dnsserver.home.lan.
; our hosts, in numeric order
1         IN PTR router.home.lan.
12        IN PTR webserver.home.lan.
14        IN PTR owncloud.home.lan.
254       IN PTR dnsserver.home.lan.

你能发现我的错误吗?

更新

反向 DNS 似乎也不起作用。的输出named-checkzone home.lan /etc/bind/zones/rev.0.168.192.in-addr.arpa如下:

/etc/bind/zones/rev.0.168.192.in-addr.arpa:2: SOA record not at top of zone (0.168.192.in-addr.arpa.home.lan)
/etc/bind/zones/rev.0.168.192.in-addr.arpa:10: no TTL specified; zone rejected
/etc/bind/zones/rev.0.168.192.in-addr.arpa:12: no TTL specified; zone rejected
/etc/bind/zones/rev.0.168.192.in-addr.arpa:13: no TTL specified; zone rejected
/etc/bind/zones/rev.0.168.192.in-addr.arpa:14: no TTL specified; zone rejected
/etc/bind/zones/rev.0.168.192.in-addr.arpa:15: no TTL specified; zone rejected
zone home.lan/IN: loading from master file /etc/bind/zones/rev.0.168.192.in-addr.arpa failed: not at top of zone
zone home.lan/IN: not loaded due to errors.`

答案1

我会在文件中的 DNS 搜索域末尾添加点/etc/network/interfaces

dns-search home.lan.
dns-domain home.lan.

从表面上看,它们被应用了两次。

反向查找的问题

这是来自我的 DNS 绑定服务器的一个示例。

$ more db.192.168.1
$ORIGIN .
$TTL 604800 ; 1 week
1.168.192.in-addr.arpa  IN SOA  ns.bubba.net. hostmaster.bubba.net. (
                2000075009 ; serial
                28800      ; refresh (8 hours)
                7200       ; retry (2 hours)
                604800     ; expire (1 week)
                86400      ; minimum (1 day)
                )
            NS  ns.bubba.net.
$ORIGIN 1.168.192.in-addr.arpa.
1           PTR server1.bubba.net.
101         PTR server2.bubba.net.
102         PTR server3.bubba.net.
...

相关内容