Linux 机器的本地主机名错误

Linux 机器的本地主机名错误

情况1:

我有一台名为midhun.local 我可以在**中访问它http://midhun.local/**svn ...

但是无法通过此从其他计算机(Windows 和 Linux)访问主机名. 但它适用于 **http://192.168.1.192/**svn

案例 2:

我有另一台机器(Windows),主机名为 myname:555 在这种情况下,我可以访问https://我的名字:555/svn 在其他 Windows 机器上使用相同的 URL 即可访问。但如果尝试从 Linux 机器访问,则无法使用相同的 URL,而是https://192.1.168.111:555/svn将工作。

我该如何解决这个问题?我需要通过相同的名称从跨域访问。如何在局域网

提前致谢!!

答案1

您需要设置本地 DNS 服务器。在情况 1 中,“midhun.local”位于 /etc/hosts 中,因此它仅针对该计算机进行解析。情况 2 是由于 Windows 计算机获取 NetBIOS 名称,而 Linux 计算机却不获取。

这两种情况的解决方案都是本地 DNS 服务器和区域。

答案2

未通过 DNS 服务器共享的域名不会被其他机器知道。您可以做的是编辑 /etc/hosts 文件其他机器,并使其具有如下行:

192.168.1.192 midhun.local

这将使机器知道哪个有这样的主办方文件。

也可以看看:

答案3

我曾经遇到过这样的问题,因为域名后缀 .local 的处理方式有些特殊。有帮助的是更改 /etc/nsswitch.conf:您可以在此阅读整个过程发射台- 如果您只是对解决方案感兴趣:

修改 /etc/nsswitch.conf 为

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

(或无论其当前配置为何值)并删除[NOTFOUND=return]或放置dns在 之前[NOTFOUND=return]

答案4

您需要本地 DNS,以便将 IP 地址连接到本地网络中的主机名。您可以设置本地 DNS 服务器,也可以编辑网络上每台计算机上的某些文件。在 Ubuntu 上,此文件是 /etc/hosts 文件。在 Windows XP 上,在 Windows 系统文件夹中搜索 \system32\drivers\etc\hosts。对于少数计算机,编辑 hosts 文件绝对是最简单的方法。

相关内容