I have a site with a public registered domain name on Godaddy, let's say xyz.com. Unfortunately all internal systems and DNS were set with the same domain name internally.

On a systems with access to Internet, I want to have access to some public NTP server which at the same time access internal hosts.

resolv.conf has this:

domain xyz.com.
search xyz.com.
server #bind9 with no forwarder or access to internet

The problem I have is if I put before our internal DNS, all queries on *.xyz.com will return a positive result with a GoDaddy IP and I can't actually use hostname to access these internal systems. If I put internal DNS first, I can't have the NTP server name, e.g. time.centos.org, resolved.

How can I solve this?
is it because a wild card record on the DNS?

2 Answers 2


You need to have forwarding enabled on your internal DNS server. You say it has no access to the Internet; I would move it to somewhere else on your network so that it does have access.

Failing that, add the external names to your internal DNS.

  • I have 'recursion yes;' and I have 'allow-recursion' set for local subnets. Forwarders is added for dig @ www.google.com works fine on the DNS server. when I run nslookup locally, it doesn't forward the request to What could be missing?
    – Billy K
    Jun 30, 2015 at 22:13
  • @BillyK your internal systems should use only your internal DNS server (i.e. no references to The internal DNS server in turn should be authoritative for (only) your internal zones and have forwarders configured to, etc. This is rapidly turning into the need for another question. If you can link it here I'll take a look at that one, too. Jun 30, 2015 at 23:21

Thanks for your comments. They help started a good troubleshooting path.

Turned out I found a "fake.root" in the conf. I commented it out and queries went to forwarder fine afterwards

zone "." IN { type master; file "fake.root"; };

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .