I am using Ubuntu 10.04 Desktop, which comes by default with the "Network Manager" (which I am highly suspicious of). I am having an issue with resolving DNS zones on 2 different nameservers.
resolv.conf:
$ cat /etc/resolv.conf
#Generated by Network Manager
search example.org
nameserver 10.0.0.20 #public nameserver, contains public.example.org
nameserver 10.0.0.30 #private nameserver, contains private.example.org
And the problem. Whichever name server is listed first will resolve :
$ ping host.public.example.org
PING host.public.example.org (10.0.0.50) 56(84) bytes of data.
The one listed second will not:
$ ping host.private.example.org
ping: unknown host host.private.example.org
But it IS there:
$ dig @10.0.0.30 host.private.example.org
...
;; ANSWER SECTION:
host.private.example.org. 3600 IN A 10.0.0.60
...
If I reverse the order of nameservers in /etc/resolv.conf, host.private will then be accessible and host.public will not. Why? From resolv.conf man page:
If there are multiple servers, the resolver library queries them in the order listed.
It isn't just ping that has problems, I noticed this when Thunderbird couldn't get mail because the mail server's DNS record is in the 2nd server listed. Shouldn't what I'm trying to do here work?