首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >unix计算机如何通过主机名找到彼此?

问unix计算机如何通过主机名找到彼此?
EN

Unix & Linux用户
提问于 2014-08-08 14:44:01
回答 3查看 3.8K关注 0票数 5

我有一个家庭网络,有几个窗口和安装了samba的Linux机器。

在Windows上,我可以通过主机名找到彼此的计算机。

然而,在Linux计算机上,我无法通过主机名找到任何其他计算机--只有IP地址才能工作。

实际上,Linux似乎甚至无法解决它自己:

代码语言:javascript
复制
user@atom:~$ host atom
Host atom not found: 3(NXDOMAIN)
EN

回答 3

Unix & Linux用户

发布于 2014-08-08 15:22:41

Windows使用不同的系统对Linux进行主机名解析。

Linux使用/etc/hosts文件和/或DNS来解析名称。

/etc/hosts文件仅仅是一个IP地址和名称的列表,曾经是将名称映射到IP地址的唯一方法,然后才意识到它正在变得越来越大。解决方案是DNS (域名系统),它是一个分布式数据库,现在是整个互联网的基础。

您只使用DNS的host命令--而不是/etc/hosts,因此除非它有DNS条目,否则它无法找到您的本地计算机。

若要按名称访问所有Linux机器,请创建一个/etc/hosts文件:

代码语言:javascript
复制
127.0.0.1    localhost.localdomain    localhost
192.168.0.5  laptop.mydomain.net  laptop
192.168.0.6  server.mydomain.net  server
192.168.0.7  printer.mydomain.net printer

并将其分发到所有Linux计算机,或安装DNS。dnsmasq是一个轻量级的DNS/DHCP服务器,非常适合小型网络。

Windows使用自己的NetBIOS名称解析,其中每台计算机在局域网上广播一条特殊消息,以查找具有特定名称的计算机的IP地址。这就是为什么Windows机器在同一网络上时往往会自动找到对方的原因。他们把这个缓存起来以备将来使用,这样网络上就不会有太多的聊天了。

此广播名称解析(用于更大的部署)的另一种选择是WINS (Windows Internet命名服务),它是计算机和/或服务名称到IP地址的中央数据库。现在Windows的现代版本使用DNS,因为它是事实上的名称解析标准,比WINS更具有可伸缩性。

票数 2
EN

Unix & Linux用户

发布于 2014-08-08 15:06:50

如果您在家里没有DNS服务器,这是不可能的,似乎有几个选项。

  1. 阅读avahi服务器(请参阅这条线),看看它是否解决了您的问题。请注意关于将".local“附加到主机名的注释。顺便问一下,当您在命令提示符下输入"hostname“时,您得到了什么?我还建议阅读主页的主机名,尤指。关于FQDN的部分。
  2. 编辑/etc/hosts

编辑:正如评论所要求的,下面是我链接的线程的一些细节。您可以在linux机器中实现zeroconf,以便在本地网络上宣传它们的主机名。一个典型的安装(对于ubuntu)是"sudo apt install avahi-daemon“。Avahi在ubuntu和其他linuxes上实现zeroconf,您只需要安装守护进程来宣传主机名。我在这里读到的另一个线程(https://superuser.com/questions/491747/how-can-i-resolve-local-addresses-in-windows)中说,Bonjour,一个来自苹果的零can实现,可以安装在Windows上来执行同样的功能。

票数 1
EN

Unix & Linux用户

发布于 2014-08-08 15:13:27

Windows计算机通过使用NetBIOS找到彼此。基本上,网络上的所有节点都会选择一台计算机来负责名称解析,而新的节点只需查询这个节点。

如果您没有设置DNS服务器,那么您的host命令应该会失败。这相当于Windows上的nslookup。如果您在Windows计算机上运行nslookup到另一台windows计算机,它也将在没有DNS的情况下失败,因为这就是您所选择的命令的查询内容。

也就是说,您应该能够通过IP地址引用其他机器,或者将它们的IP地址添加到/etc/hosts中。IIRC Gnome有一些Samba集成选项,可以让您在SMB工作组中导航,类似于您对windows的想法。但是我记不起我头顶上的包裹的名字了。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/149246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档