Alternate DNS server not resolving after first one fails to resolve


I have several VMs set up running on top of Citrix XenServer 6.1 in a lab network, but I think this issue might not be specific to XenServer.

There are several different OSes running:

  • Fedora 19
  • Ubuntu 12.04 Desktop
  • Ubuntu 12.04 Server
  • Windows 7

Each one pulls two DNS server addresses from DHCP:

  • Primary:, which is our local DNS on our lab network. It resolves names inside our lab network.
  • Secondary:, which is the DNS outside of our lab network but still part of our company. It provides our access to the outside world.

On Windows 7 and Ubuntu 12.04 Server, I can resolve domain names outside and inside my lab network. On Ubuntu 12.04 Desktop and Fedora 19, I can only resolve names inside my lab network — I can't resolve any outside. I can still visit by typing in the web browser though, so I do have access to the outside world, just not DNS. If I switch the order of the DNS servers though, then I can resolve outside names but not inside names. So Fedora 19 and Ubuntu Desktop are only using the first server in the list of DNS servers, and if that fails they don't try the alternate one. Why is that? And why does the same thing not happen on Ubuntu Server and Windows 7?

Best Answer

  • Primary and secondary DNS server are expected to give the same result. It seems that you have setup your own DNS server want the OS to use your DNS server for resolving your lab names/IPs and use the company DNS server to resolve all other names/IPs.

    This is not the way it works. If your PC asks your DNS server for the IP of a company server and your DNS server answers that the name is unknown, then there is a result and there is no need to ask another DNS server. Also if your PC asks the company DNS server for a lab name, then it will answer that it does not know the name.

    You should configure your DNS server to forward all requests for domains other than yours to the company DNS server. In an ideal case the company DNS server should be configured to know your sub domain and forward all requests for your domain to your DNS server.

    You should use your DNS server as primary DNS server. If you can configure the forward zone in the company DNS you can use that DNS server as secondary, otherwise you should not configure a secondary DNS server.

    And as it seems that you are not knowing how DNS works, you should ask you company admins to assist you.

  • Related Question