Resolve Windows netbios names from Linux
Platforms:
any *nix distro
What You’ll Need:
Samba
In a heterogeneous LAN it is often useful to resolve network addresses by a computer’s name (ie. netbios name). This is especially true if the LAN does not have a DNS server so that host names can be used instead of IP addresses (which if dynamically assigned, could change often).
To enable Windows netbios name resolution from a Linux computer, make sure thatSamba is installed (although the smb service does not need to be running). The Samba suite includes winbind, which enables Windows host names to be resolved.
Then edit /etc/nsswitch.conf and change this line:
hosts: files dnsto this:
hosts: files dns winsThen test by pinging the computer name of Windows machine on the LAN:
$ ping windowsboxPING windowsbox (192.168.0.100) 56(84) bytes of data.64 bytes from 192.168.0.100: icmp_seq=1 ttl=128 time=0.117 ms64 bytes from 192.168.0.100: icmp_seq=2 ttl=128 time=0.127 ms64 bytes from 192.168.0.100: icmp_seq=3 ttl=128 time=0.127 ms64 bytes from 192.168.0.100: icmp_seq=4 ttl=128 time=0.127 ms64 bytes from 192.168.0.100: icmp_seq=5 ttl=128 time=0.128 msThis setting really comes in handy when mounting a shared folder of a dynamically IP’ed Windows box from Linux. Instead of using the Windows’ box IP address, just specify it’s netbios name. Example entry in /etc/fstab:
//windowsbox/my_share/ /mnt/my_mount_point/ cifs rw,username=xxx,password=xxx,domain=xxx 0 0