![通过主机名访问服务器?](https://linux22.com/image/805888/%E9%80%9A%E8%BF%87%E4%B8%BB%E6%9C%BA%E5%90%8D%E8%AE%BF%E9%97%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9F.png)
我有一个混合网络,其中大部分是 Windows 机器、一台 Mac 和一些 Linux 机器。没有 DNS 或 WINS 服务器,添加一个服务器超出了我的控制范围。如果我在计算机上全新安装 10.04 桌面版,那么网络上的所有其他机器都可以通过主机名顺利访问该机器。
但是,如果我将 10.04 服务器放在同一台计算机上,那么其他计算机只能通过 IP 地址访问它。主机名无法解析。我需要在服务器上做什么才能让网络上的所有其他计算机都可以访问它?
答案1
答案2
您必须在某处拥有 DNS(域名系统)服务器来处理该名称解析。某些路由器的 DNS 服务器与其 DHCP 服务器耦合。检查您的路由器,看看它是否有 DNS 服务器并且已禁用。Ubuntu 在请求 IP 地址时会自动将配置的主机名发送到 DHCP 服务器,如果路由器有启用的 DNS 服务器,它也会将该名称/IP 报告给 DNS 服务器。
除此之外,您还可以将 Ubuntu 计算机的名称和 IP 地址放入 Windows 机器上的 hosts 文件中c:\WINDOWS\system32\drivers\etc\hosts
。只要您的 Ubuntu 机器的 IP 地址不变(或不经常变化),这可能是一个简单而长期的解决方案。
答案3
您使用 netbios 名称配置 nmbd,然后可以在本地网络上使用该 netbios 名称而无需知道 IP 地址。
有一次,在与我认识的 Windows 系统管理员交谈时,我惊讶地被告知,当您将 Windows PC 插入网络时,即使您不知道该机器的新 IP,您仍然可以使用它的 Windows 名称在网络上找到它。
我以为这是某种疯狂的魔法,但事实证明,您可以通过安装、配置和运行 nmbd 在 Linux 上实现同样的效果。这是 Samba 的一部分。
了解更多,查看此链接。
听起来这就是你要问的。