Comment 18 for bug 235560

Revision history for this message
Steve Langasek (vorlon) wrote :

If you are using opendns, then address resolution will not work correctly because samba gives precedence to DNS records over broadcast name resolution by default. This is considered a reasonable default because broadcast name resolution is not scalable and should be a method of last resort; however, opendns breaks the assumption that DNS servers won't return bogus records when asked for hosts that they have no clue about. This should be considered a bug in opendns, but since they are unlikely to fix that misbehavior any time soon, you can work around this by setting the following value in the [global] section of your /etc/samba/smb.conf:
 name resolve order = lmhosts wins bcast host

Alternatively, you can configure your network to use a wins server instead (though this is probably overkill for a home network).

The other problem mentioned in this bug report is when 'wins' is mentioned in /etc/nsswitch.conf. I think this is a bad idea in general because NetBIOS name resolution semantics are not entirely compatible with traditional 'host' lookups, but since we provide the nss_wins backend we should at least try to fix the bugs in it. And there are bugs in it, which may cause problems particularly when called by something which itself uses samba code (i.e., anything that uses libsmbclient, including nautilus).

As a workaround for this bug, you can again adjust your name resolve order to either 'lmhosts wins bcast host' to use NSS as a last resort, or just 'lmhosts wins bcast' if you know you should never need NSS lookups of hostnames.