我的Raspberry Pi无法通过其局域网中的主机名找到。

我在局域网中还有其他几台Ubuntu计算机,它们都可以通过其主机名ping通。

在我的Raspberry Pi上:

pi@raspberrypi ~ $ hostname
raspberrypi


在同一局域网中的另一台计算机上:

ping raspberrypi
ping: unknown host raspberrypi



评论

重复的问题:unix.stackexchange.com/questions/77189/…。已关闭,因为这是一个一般的Linux网络问题,与Raspberry Pi无关。

如果我有一个使用Ubuntu 14.04的Odroid,一个使用Debian的MÎNIX以及我在同一网络中使用Ubuntu 15.10引导的虚拟PC而没有出现此问题,为什么它不依赖Raspberry Pi?自从我升级到Jessie以来,只有在具有Raspian的Raspberry Pi 2上存在此问题。

只是作为一个旁注,这可能不会影响大多数阅读此书的人,但是有些人可能已经安装了avahi,并且想知道为什么它对他们不起作用->一种可能是您的网络配置不支持多播。 />
@clamp不应该ping raspberrypi.local,我认为.local部分至关重要。

#1 楼

您是否尝试过使用IP地址执行ping测试?如果可行,通常是将名称解析为IP地址。

有很多方法可以解决此问题。您可以


使用pi的static-ip和主机名在/ etc / hosts文件中添加一个条目
在dhcp服务器中添加静态保留并将记录添加到本地dns服务器(如果您的路由器支持的话)
在pi上运行NIS,Avahi或Samba之类的服务。选择取决于您要ping的操作系统。

Windows客户端将从安装Samba中受益。
OS / X客户端将从Avahi或Samba中受益。
Linux客户端可能从NIS或Samba中受益,具体取决于安装的内容。我想Ubuntu计算机使用samba来公布其主机名。




评论


是的,可以通过ip ping通,但它没有静态ip地址。

–夹钳
13年5月26日在21:20

您要从哪个操作系统ping pi和ubuntu盒?如果您使用的是Linux计算机,您是否可以看到/etc/nsswitch.conf中的hosts:值是什么?

–苏拉吉拉姆(Surajram Kumaravel)
13年5月26日在21:22

谢谢。我已经通过Samba解决了我的问题。 Samba在某些时候会很有用,因为这样可以更轻松地访问文件

–fedmich
16 Mar 14 '16 at 16:02

#2 楼

如果要通过主机名而不是IP地址进行连接,则必须使用avahi-daemon(zeroconf)。从RPi高级安装程序上的Raspberry Pi文档中:

在Raspberry Pi上使用以下命令安装avahi:

sudo apt-get install avahi-daemon


更新启动引导,以便avahi-daemon

sudo insserv avahi-daemon


通过以下方式应用新配置:

sudo /etc/init.d/avahi-daemon restart


Raspberry Pi现在应该可以寻址了从其他计算机(例如raspberrypi.local)下载,例如:
ssh pi@raspberrypi.local或http://raspberrypi.local(如果您安装了HTTP服务)。

如果无法连接在Windows PC上通过SSH从Windows PC上可能未安装Bonjour服务。

获取Windows的Bonjour:下载Windows v2.0.2的Bonjour打印服务。只需安装。

评论


这应该是选择的答案

– Sudar
13年8月10日在15:43

愚蠢的,只是让其他人知道:就我而言,我的家用路由器(倍耐力Centro Grande)正在为我的LAN处理dhcp。在升级到Raspian Jessie之前,我从未遇到过Raspian或LAN中的任何其他Linux的ssh或网络问题。这会自动安装dhcpd和avahi。我必须同时删除avahi-daemon和isc-dhcpd-server以避免dhcp和名称服务器与路由器冲突。现在,我的Raspberry可以通过其名称再次使用。

–user38336
16年1月18日在16:16



我遇到了与@ShyRobbiani相同的问题-禁用/删除avahi-daemon会使我的rpi像在洁西之前一样在我的家庭网络中被拾取。

–keithl8041
17年1月1日在18:54



我的raspbian上无法使用“ insserv” ...?

–oo_dev
17-10-18在15:01

@ copa017至少在我的Raspbian Lite上也不在这里,而只是sudo apt-get install insserv。否则,请按照上述说明进行操作。测试并为我工作!

–乔纳斯(Jonas)
17/12/26在19:53