Can resolve hostname via dns using `host` but can't ping/ssh/ntp

33,150

This was on Ubuntu server 12.04 LTS and Ubuntu 12.04 LTS

Thanks all for the help. Turns out to be a result of a difference in the way host and the glibc resolver read /etc/resolv.conf.

I was managing resolv.conf with a puppet module that edited the appropriate files in /etc/resolvconf/resolv.conf.d/.

Said puppet module resulted in an /etc/resolv.conf that looked like this:

 nameserver 10.10.10.100
 nameserver 192.168.3.100
 nameserver 10.10.10.1

 search example.com

with a space at the beginning of each line. After removing these spaces, I was able to resolve with both ping and manual lookups (host/nslookup/etc...)

I could've sworn that I've had those spaces on other OSes with no issues, but I just tried on a SL6.3 box and it caused the same behavior.

Thanks for your help and sorry for the trouble!

Share:
33,150

Related videos on Youtube

David Khan
Author by

David Khan

Updated on September 18, 2022

Comments

  • David Khan
    David Khan over 1 year

    I'm setting up a local network and have configured a DNS server. I can resolve hostnames by querying the DNS server, but no programs can look them up.

    I uninstalled libnss-mdns and removed avahi-daemon and even rebooted afterwards.

    Here are some examples:

    root@cloud2:~# host ns.example.com
    ns.example.com has address 10.10.10.100
    root@cloud2:~# ping ns.example.com
    ping: unknown host ns.example.com
    
    root@cloud2:~# grep hosts /etc/nsswitch.conf 
    hosts:          files dns
    

    my ntp server is configured for ns.example.com, but all I get is nxdomain on ntpq

    any ideas?

    EDIT:

    This also applies to external DNS entries. I have my router both as a DNS forwarder on the custom DNS server and as an entry in resolvconf.

    E.G.

    root@cloud2:~# host google.com | head
    google.com has address 74.125.225.65
    google.com has address 74.125.225.66
    google.com has address 74.125.225.67
    google.com has address 74.125.225.68
    google.com has address 74.125.225.69
    google.com has address 74.125.225.70
    google.com has address 74.125.225.71
    google.com has address 74.125.225.72
    google.com has address 74.125.225.73
    google.com has address 74.125.225.78
    root@cloud2:~# traceroute google.com
    google.com: Temporary failure in name resolution
    Cannot handle "host" cmdline arg `google.com' on position 1 (argc 1)
    
    • jdthood
      jdthood over 11 years
      Odd. Please add the content of your /etc/resolv.conf file. Also mention which Ubuntu release you are running.
    • Steve-o
      Steve-o over 11 years
      DNS cache such as named or sssd caching negative lookups?
    • David Khan
      David Khan over 11 years
      @Steve-o I had looked for DNS caching, I've been burned plenty of times by nscd in the past so that's a good suggestion :-)
  • jdthood
    jdthood over 11 years
    I don't see any unusual spaces in the earlier resolv.conf.
  • jdthood
    jdthood over 11 years
    By the way, is this a custom Puppet module or one you got from somewhere else? If the latter then we should see to it that the bug gets fixed upstream.
  • David Khan
    David Khan over 11 years
    The unsual spaces are leading spaces, which might be tricky to see given the way the gray boxes are. (I realize you've probably noticed, but I want to leave this question for posterity). Also, this is what I baesd my module on: danielhelm.com/blog/60-puppet-dns-client-module, but remember that ubuntu uses the resolvconf service - so I edited /etc/resolvconf/resolv.conf.d/head I'm putting a comment on that site...
  • jdthood
    jdthood over 11 years
    I have edited the answer (pending acceptance) so as to make it clearer that there are spaces at the beginnings of the lines. I consider this to be a shortcoming in the glibc resolver; it should ignore leading whitespace, especially if host does so.
  • jdthood
    jdthood over 11 years
    I left a comment on that site too. I also filed a wish in the Debian BTS (#699061) requesting that leading whitespace be ignored in resolv.conf.
  • ulidtko
    ulidtko about 10 years
    What methods did you use to debug that? I'm experiencing exactly the same issue, but no leading spaces in my resolv.conf whatsoever.