微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么Windows机器能解析本地名称?

我有一个小型网络,WindowsLinux机器连接到D-Link DIR-825路由器.

网络上的Windows计算机可以按名称访问所有其他计算机,而Linux计算机只能通过IP地址访问其他计算机.

我可以在路由器Web管理界面的DHCP客户端状态列表中看到列出名称及其DHCP分配地址的所有计算机.

为什么Linux机器无法通过名称找到任何其他机器,而Windows在查找Linux机器时没有问题?

我不是网络专家,而且我也在研究这个主题的答案.我目前的发现是:

> Windows使用NetBIOS名称,这种协议作为广播协议,允许他们在没有任何中央服务器的情况下找到彼此.
>现代发行版中的Linux机器本身使用称为Avahi的协议,该协议也是与服务器无关的广播协议.本地网络机器具有后缀.local,因此您可以使用ping hostname.local从Linux ping到Linux,或使用avahi-discover软件包查看它们. Gnome中的一些应用程序使用avahi列出网络中的计算机(例如,远程桌面查看器)
>在Linux机器上安装SAMBA将为其分配NetBIOS名称(或者,从技术上讲,将使Linux机器在其NetBIOS名称(认情况下为其主机名)的广播请求中进行广告宣传),并允许Windows机器查找Linux的.
> Gotcha:虽然带有Samba的Linux机器会回复NetBIOS协议请求,但是在Ubuntu这样的发行版中使用认设置它不会使用NetBIOS作为解析名称方法,这就是为什么Linux机器无法“看到”彼此或者Windows机器.为此,您需要编辑/etc/nsswitch.conf文件并将wins添加到此行的列表中:

hosts:files mdns4_minimal [NOTFOUND = return] dns wins mdns4
>您可能需要安装winbind(以及,如果没有自动安装,libnss-winbind)包以供上述工作.
>因此,对于可见性问题,您可以在所有Linux计算机上安装Samba(并编辑/etc/nsswitch.conf以启用NetBIOS名称解析),或者在Windows计算机上安装Avahi支持.
>至于文件共享,Samba为Windows提供Linux机器文件共享功能.没有必要为Linux机器编辑/etc/nsswitch.conf以在Nautilus的“网络”部分中查看彼此和Windows的共享文件夹(反之亦然)

我希望这有帮助! :d

原文地址:https://www.jb51.cc/windows/370195.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐