mDNS 不适用于 Raspberry Pi Zero W

mDNS 不适用于 Raspberry Pi Zero W

因此,我刚刚获得了 Raspberry Pi Zero W 并安装了 Raspbian Stretch Lite(无头 Debian Stretch)。我能够在无头模式下配置 WiFi,并且 Raspberry 连接到我的家庭 WiFi 网络。

然后我运行nmap 192.168.100.0/24 -p 22并找出该设备的 IP:

Starting Nmap 7.70 ( https://nmap.org ) at 2019-06-07 22:01 +03

Nmap scan report for 192.168.100.57
Host is up (0.0095s latency).

PORT   STATE SERVICE
22/tcp open  ssh

Nmap done: 256 IP addresses (5 hosts up) scanned in 2.76 seconds

看起来192.168.100.57就是我正在寻找的机器人。通过 SSH 连接有效:

ssh [email protected]
Linux raspberrypi-1 4.14.98+ #1200 Tue Feb 12 20:11:02 GMT 2019 armv6l

pi@raspberrypi-1:~ $ hostname
raspberrypi-1

我已经对它进行了一些尝试,并将主机名更改为raspberrypi-1,但我要求的所有操作也都使用默认名称(raspberrypi)。

Avahi 正在我的 Raspberry 上运行:

pi@raspberrypi-1:~ $ ps axu | grep avahi
avahi      247  0.0  0.7   6384  3168 ?        Ss   17:54   0:00 avahi-daemon: running [raspberrypi-1.local]
avahi      255  0.0  0.3   6384  1480 ?        S    17:54   0:00 avahi-daemon: chroot helper
pi         829  0.0  0.4   4360  2028 pts/0    S+   19:10   0:00 grep --color=auto avahi

通过名称进行自我 pingraspberrypi-1.local也有效:

pi@raspberrypi-1:~ $ ping raspberrypi-1.local
PING raspberrypi-1.local (192.168.100.57) 56(84) bytes of data.
64 bytes from 192.168.100.57 (192.168.100.57): icmp_seq=1 ttl=64 time=0.230 ms
^C
--- raspberrypi-1.local ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms

现在,我正尝试通过笔记本电脑的主机名连接到 Pi:

$ ssh [email protected]                                                                                                                                                         
ssh: Could not resolve hostname raspberrypi-1.local: Name or service not known

avahi-resolve能够解析该名称!

$ avahi-resolve -nv raspberrypi-1.local                                                                                                                                                   
Server version: avahi 0.7; Host name: millennium-falcon.local
raspberrypi-1.local     192.168.100.57

但是,avahi-browse -arp没有显示我的 Pi。

我的笔记本电脑/etc/nsswitch.conf是:

passwd: files mymachines systemd
group: files mymachines systemd
shadow: files

publickey: files

hosts: files mymachines mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns mdns4 myhostname
networks: files

protocols: files
services: files
ethers: files
rpc: files

netgroup: files

并且/etc/resolv.conf是:

nameserver fe80::1%wlp2s0
nameserver 82.209.240.241
nameserver 82.209.243.241

我不明白我的配置出了什么问题,以及为什么我无法使用其主机名连接到 Pi。WAIDW?

答案1

/etc/mdns.allow在我的笔记本电脑上创建一个文件后,问题似乎消失了:

$ ll /etc/mdns.allow                                                                                                                                                                      
-rw-r--r-- 1 root root 15 Jun  7 23:56 /etc/mdns.allow
$ cat /etc/mdns.allow                                                                                                                                                                     
.local.
.local

我找到了解决方案这里。仍然不确定为什么它默认不起作用……

相关内容