0

I am running ubuntu 12.10 desktop edition. I am having and issue with my DNS not resolving certain internal names on our network. We run 3 internal DNS servers. Originally the 1st one (192.168.6.1) had the other 2 servers set as upstream, but now we've removed that.

I have set nameservers in /etc/resolv.conf successfully to list all 3 nameservers instead of just the one name server (192.168.6.1) which it had originally.

I can't resolve names that are resolvable on the 2nd and 3rd DNS.

$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.6.1
nameserver 10.10.11.5
nameserver 10.10.11.4
search internal.local

$ cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
    address 192.168.6.180
    netmask 255.255.255.0
    broadcast 192.168.6.255
    gateway 192.168.6.1
    dns-nameservers 192.168.6.1 10.10.11.5 10.10.11.4
    dns-search ontech.local
    mtu 1250

As you can see, the name servers are all setup in the right files.

Now to test out the name servers:

$ nslookup
> server 10.10.11.5
Default server: 10.10.11.5
Address: 10.10.11.5#53
> aws-internal-frontend
Server:     10.10.11.5
Address:    10.10.11.5#53

Name:   aws-internal-frontend.internal.local
Address: 10.10.10.5
> server 192.168.6.1
Default server: 192.168.6.1
Address: 192.168.6.1#53
> aws-internal-frontend
Server:     192.168.6.1
Address:    192.168.6.1#53

** server can't find aws-internal-frontend: NXDOMAIN
> server 127.0.0.1
Default server: 127.0.0.1
Address: 127.0.0.1#53
> aws-internal-frontend
^C
$ ping aws-internal-frontend
ping: unknown host aws-internal-frontend

As you can tell, the 1st DNS can't resolve the name but the second one can. I have this second one setup in my /etc/resolv.conf yet it won't use that name server to attempt to resolve the address.

What settings do i need to change to fix this so that i can ping aws-internal-frontend.

Thank you

  • You identified the problem in the question, one of your nameservers is not providing the answer you want. Just remove it. – David Schwartz Apr 23 '13 at 4:54
1

192.168.6.1 is returning NXDOMAIN for your query. NXDOMAIN means the domain (internal.local) doesn't exist as far as the server is concerned. The reason you can't resolve aws-internal-frontend.internal.local is due to the NXDOMAIN, which is an authoritative response. Since you're configured to query 192.168.6.1 before 10.10.11.5, you will never successfully resolve for that zone. The only way you will query the secondary (or ternary) name server is if the previous server doesn't respond.

Are you absolutely sure 192.168.6.1 is configured for the zone?

  • 192.168.6.1 is not configured for the zone - it was previously, until the upstream setting was removed. What about if i swap the servers around, and make 10.10.11.5 the first one in the list? – Jason Apr 23 '13 at 2:29
  • tried swapping them and it does work. – Jason Apr 23 '13 at 2:31
  • You should either remove that server from your list of DNS servers or update the server with that zone. – charleswj81 Apr 23 '13 at 3:09

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.