I have a LAN setup with a bunch of windows and linux boxes. The LAN is built on top of the AT&T DSL Router. I don't have any type of DNS Server running. All the windows machines can identify themselves by machine name over the network. Even a Linux NAS box can also be accessible by machine name. However, I recently built a CentOS linux box and I want it to be accessible by machine name. I've tried setting the hostname but it does not work. Can someone help me with this problem?

link|improve this question
feedback

migrated from stackoverflow.com Jun 6 '11 at 20:34

This question came from our site for professional and enthusiast programmers.

4 Answers

I think, there are two options:

  • Manually creating an /etc/hosts and distributing it on the different machines (takes a lot of maintenance), see http://en.wikipedia.org/wiki/Hosts_%28file%29

  • locally installing a small DNS server, e.g. dnsmasq. dnsmasq can also work as a DHCP server and will include the hostnames that it records via DHCP in its DNS replies

Maybe, the AT&T box also has some local DNS features? I don't know that box, though.

link|improve this answer
It is Netopia 3000. If it helps. I could not find anything useful though about this box, which can help me. – user766453 Jun 6 '11 at 19:03
feedback

windows hosts are accessable by name because they can be found by their netbios name http://en.wikipedia.org/wiki/NetBIOS

For your linux box you can:

  • Add a dns server
  • Install samba and configure it to use netbios name
  • Add ip/name of your linux machine to other box in your lan (/etc/hosts if linux, c:\windows\system32\drivers
link|improve this answer
Installing samba did solve the problem. – OutputLogic Feb 1 at 21:55
feedback

If you run Samba on the Linux box, you should be able to access the Linux box from the Windows boxes, by using the Linux box's hostname.

(There is a lot more to it than that, but that's the simplest solution)

link|improve this answer
feedback

I'm going to assume you're using DHCP, and that the clients are sending their hostname to the DHCP server, which is updating a local DNS server (try nslookup ${somehostname} to verify the server address).

CentOS5 does not, AFAIK, send the hostname over DHCP by default. Add:

DHCP_HOSTNAME=${yourhostname}

to /etc/sysconfig/ifcfg-eth0.

If it's a static IP, see the hosts file, dnsmasq, BIND, or some Windows-based DNS server. Caveat: your router is probably functioning as a DNS server, so you'd need to make some client configuration changes if you set up a local DNS server in order to have them look at it first.

link|improve this answer
I am getting "server can't find ${yourhostname}: NXDOMAIN" error. Although this command does display the router IP correctly. Also, DHCP_HOSTNAME is also set correctly in /etc/sysconfig/networking/devices/ifcfg-eth0. – user766453 Jun 6 '11 at 21:47
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.