We are using dnsmasq on our firewall machine and have set up the machine with the hosts file for all our printers and other shared resource machines. This should let us use this as a distributed hosts file, as dnsmasq will respond to queries that it sees in the local machine’s hosts.
This is working well from Windows machines. A NAS device, “tusker”, for example, is set up as 192.168.42.4. I can “ping tusker
” from any windows machine and it will correctly resolve that to 192.168.42.4. We also have some Linux workstations, however, and none of them will resolve any single-name domain name. They are a mix of mostly Debian-based distros (Debian, Ubuntu, Mint, Arch) and universally the response to “ping tusker
” on any of them is “temporary failure in name resolution”. They don’t seem to be passing on any single-name domain name queries to the DNS server. It sees there are no entries in its local hosts file and stops there without sending the query up.
I’ve tried “options ndots:0” in resolv.conf to no effect. Is there a way to tell the Linux resolver to always send names up to resolve regardless of how many levels are in the host name?