Resolve linux hostname in windows

16,380

Solution 1

It is an old question, but I hope that I still can help some people who are stuck on this issue.

On, for example, Ubuntu you can do the following:

Open the following file: /etc/nsswitch.conf

nano /etc/nsswitch.conf

Change this line:

hosts: files dns

To:

hosts: files wins dns

Then install winbind:

sudo apt-get install winbind

Note: if you already have samba installed, you may find winbind is already enabled.

Check that the winbind service exists and is enabled:

sudo systemctl status winbind.service

You can enable the service as follows:

sudo systemctl enable winbind.service

Now your Linux hostname can be resolved on your Windows PC.

To find out what your hostname is on Linux use:

hostname

Solution 2

If you don't have a DNS server on your network (e.g. from your router), then you need to enable the Samba service and open up the NetBIOS ports (137-139) in your firewalls. The Fedora Firewall tools already have a default entry set up for this (may be described as something to do with "Windows File Sharing").

Solution 3

Rather than messing with Samba and the NetBIOS name service, I prefer to add the name to %SYSTEMDIR%\drivers\etc\hosts. The format and function of this file is identical to /etc/hosts on Linux. So you would add something like:

192.168.0.50  mylinuxmachine

Of course this works best if you assign static (or pseudo-static) IP addresses. By pseudo-static I mean the client uses DHCP, but the MAC address is stored in the DHCP server so that it always gives out the same IP address. You can still do this and have normal dynamic IP addresses for other hosts, just make sure to not assign any static addresses that fall in the dynamic range.

Share:
16,380

Related videos on Youtube

Martin Giffy D'Souza
Author by

Martin Giffy D'Souza

Updated on September 17, 2022

Comments

  • Martin Giffy D'Souza
    Martin Giffy D'Souza over 1 year

    I have a simple home network with Windows 7 machines and Linux machines (Fedora 12 and 13). I'd like to be able to resolve the Linux machine names from the windows machine. For example:

    -- Windows 7 ping mylinuxmachine

    Currently this does not resolve. Any ideas?

  • user1686
    user1686 almost 14 years
    More specifically, NetBIOS name resolution is done by the nmbd daemon of Samba. (If you only need name resolution but don't want the Linux box to act as a SMB server, it is possible to disable smbd.)
  • vlsh
    vlsh almost 5 years
    Excellent! Got my raspberry pi to be visible by its host name on windows network! I was ready to give this up.