问题描述
我有一个混合的网络,其中大多数是Windows机器,Mac和一些Linux机器。没有DNS或WINS服务器,添加一台超出我的控制范围。如果我在计算机上全新安装了10.04桌面,则网络上的所有其他计算机都可以通过主机名访问该计算机。
但是,如果我将10.04服务器放在同一台计算机上,则其他计算机只能通过IP地址访问它。主机名无法解析。我需要在服务器上做什么以便网络上的所有其他计算机都可以访问它?
最佳答案
这与Avahi有关,Avahi是Zeroconf的实现,它在本地网络上发布主机名。
您可以通过安装守护程序在服务器上开始使用Avahi:
sudo apt-get install avahi-daemon
从那时起,您应该准备就绪。如果您还有其他麻烦,请查看/usr/share/doc/avahi-daemon/
中的文档。
次佳答案
您必须在某处拥有DNS(域名系统)服务器来处理该名称解析。一些路由器将DNS服务器与DHCP服务器耦合在一起。检查您的路由器,看看它是否有一个并被禁用。 Ubuntu在请求IP地址时会自动将配置的主机名发送到DHCP服务器,并且如果路由器具有启用的DNS服务器,它也应将该名称/IP报告给DNS服务器。
简而言之,您可以将Ubuntu框的名称和IP地址放在c:\WINDOWS\system32\drivers\etc\hosts
的Windows计算机上的hosts文件中。如果您的Ubuntu计算机的IP地址没有变化(或经常变化),那可能是一个简单的长期解决方案。
第三种答案
您使用netbios名称配置nmbd,然后可以在不知道IP地址的情况下在本地网络上使用该netbios名称。
有一次,当我与我所知道的Windows SysAdmin交谈时,我很惊讶地被告知,当您将Windows PC插入网络时,即使您不知道该计算机的新IP,仍然可以在其中找到它。使用Windows的名称来连接网络。
我以为这是某种疯狂的魔术,但是事实证明,通过安装,配置和运行nmbd,您可以在Linux上实现相同的目的。这是Samba的一部分。
要了解更多信息,请输入check out this link。
听起来这就是您要问的问题。