Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I have been following this guide to set up a DNS server using bind9 on Ubuntu 12.04, but after all the configuration, when I run host -l home.lan I get the following error:

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

The name of my Ubuntu Server is dnsserver and has IP address 192.168.0.254, and I have another 3 hosts on the network (webserver with IP address 192.168.0.12, owncloud with IP address 192.168.0.14 and the router, 192.168.0.1).

Following are all my configuration files.

Config files

/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.

Can you spot my mistake?

Update

Reverse DNS seems not to be working either. The output of named-checkzone home.lan /etc/bind/zones/rev.0.168.192.in-addr.arpa is the following:

/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.`
share|improve this question

1 Answer 1

up vote 2 down vote accepted

I'd add dots to the end of your DNS search domains in your /etc/network/interfaces file.

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

From the looks of it they're getting applied twice.

Issue with reverse lookups

Here's a sample from my DNS bind server.

$ 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.
...
share|improve this answer
    
Man you are good. That's the only file I didn't double check XD Thank you for your help :) –  user1301428 Apr 19 at 23:47
    
I have extensive experience with maintaining DNS servers, bind in particular. And I've been burned by that same problem before 8-). –  slm Apr 19 at 23:49
    
Ahah good to know :D Well, now that you have asked for it, any idea why reverse lookup is not working? host 192.168.0.1 returns Host 1.0.168.192.in-addr.arpa not found: 2(SERVFAIL) :P –  user1301428 Apr 19 at 23:51
    
@user1301428 - the name of the zone file looks wrong: rev.0.168.192.in-addr.arpa. –  slm Apr 19 at 23:56
    
Uhm thanks for the hint, but what do you mean by wrong? The subnet looks ok, so I suppose it must be something else? –  user1301428 Apr 20 at 0:02

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.