Q:

hosts file seems to be ignored

I have almost fresh Ubuntu desktop box. OS was installed two weeks ago and updated from karmic repositories. Last week I had no problems with DNS. But this week something had changed. I'm not sure what and when, and not sure whether I changed any configs.
So now I have some really weird situation. According to logs name resolving should work normally.
/etc/hosts
127.0.0.1   localhost test
127.0.1.1   desktop

/etc/host.conf
order hosts,bind
multi on

/etc/resolv.conf
# Generated by NetworkManager
search search servers obtained via DHCP
nameserver 192.168.0.3

/etc/nsswitch.conf
passwd:         compat
group:          compat
shadow:         compat

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

But if fact it is not.
user@test ~>ping test
PING localhost (127.0.0.1) 56(84) bytes of data.
[skip]

Pinging is ok.
user@test ~>host test
test.mydomain.com has address xx.xxx.161.201

I suspect that NetworkManager might cause this misbehavior, but don't know where to start to check it.
Any thoughts, suggestions?

A:

With this configuration, most applications will happily work with your entry from /etc/hosts.
However host doesn't look at /etc/nsswitch.conf.  That is by design, not by accident, since host is specifically a DNS lookup program.  /etc/hosts is not DNS, it's (mostly) what we used before we had DNS.
The same is also true for dig and nslookup - they're DNS specific too.

A:

The host command (along with dig and nslookup) is part of the bind DNS utilities. As a DNS resolver utility, it does DNS resolution alone.
If you're interested in fetching an entry from any libnss-driven data store, you can use the getent program. To get a hosts entry, for example, use it like this:
getent hosts google.com

This follows the resolution order set out under hosts: in /etc/nsswitch.conf in order, which includes /etc/hosts if "files" is lised as one of the options.

