DNS resolv conf issue - DNS doesn't resolve for certain internal addresses despite several name servers listed that can resolve

7,750

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?

Share:
7,750

Related videos on Youtube

lala1
Author by

lala1

Updated on September 18, 2022

Comments

  • lala1
    lala1 over 1 year

    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

    • David Schwartz
      David Schwartz about 11 years
      You identified the problem in the question, one of your nameservers is not providing the answer you want. Just remove it.
  • lala1
    lala1 about 11 years
    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?
  • lala1
    lala1 about 11 years
    tried swapping them and it does work.
  • charleswj81
    charleswj81 about 11 years
    You should either remove that server from your list of DNS servers or update the server with that zone.