I'm trying to setup a local bind DNS server (first time dealing with DNS servers, know a bit about records) that:

  • Routes *.internal, *.*.internal to itself (preferably any combination of subdomains),
  • Forwards everything else to a parent DNS server at

To start with, I'd like to tackle the second forwarding issue. The parent router/dns routes hostname.Home to a computer attached to the network, but these requests don't get forwarded on. Lookups for google.com and external sites do work however.

Currently I have the following named.conf:

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

    dnssec-validation no;
    dnssec-lookaside no;
    auth-nxdomain no;    # conform to RFC1035 

    listen-on { any; };
    listen-on-v6 { any; };

    # Recursively forward requests onto the parent DNS
    forwarders {; };
    recursion yes;
    allow-recursion { any; };
    allow-query { any; };

The results when I attempt to lookup domains:

External domain, local dns

ross@srv:~$ nslookup google.com

Non-authoritative answer:
Name:   google.com
Name:   google.com

Internal domain, local dns

ross@tigger:~$ nslookup ross-pc.home

** server can't find ross-pc.home: NXDOMAIN

Internal domain, parent dns

ross@tigger:~$ nslookup ross-pc.home

Non-authoritative answer:
Name:   ross-pc.home

Bind error log:

named[6947]: DNS format error from resolving ross-pc.home/A for
             client reply has no answer
named[6947]: error (FORMERR) resolving 'ross-pc.home/A/IN':
named[6947]: error (network unreachable) resolving 'ross-pc.home/A/IN':
named[6947]: error (network unreachable) resolving 'ross-pc.home/A/IN': 

I've tried to configure bind to be as unrestrictive as possible while I'm getting the basics working. Can someone explain why *.Home requests not being forwarded?


I found a solution - my upstream router is a home dsl-type router, which apparently can send large udp packets. The solution described here was to add the following lines to use a different DNS mode between dns servers:

server ::/0 { edns no; };
server { edns no; };
  • 1
    This is not the correct solution. Either get a proper router (see RFC 5625 on how bad the DNS proxies inside home routers are) or forward your queries to a real DNS server such as Google DNS or OpenDNS. – Alnitak Jan 27 '16 at 9:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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