Не удается подключиться к Pi в локальной сети через hostname.local в Windows


15

Я впервые настраиваю Raspberry Pi и подключаюсь к нему по SSH на Mac в той же сети, вот так:

ssh pi@raspberrypi.local

Однако в моем окне Windows 10 (также в той же сети) это имя хоста не разрешается. Я пробовал ipconfig /flushdns, nslookup raspberrypi.localи подобные команды , чтобы получить мою машину Windows , чтобы увидеть Raspberry Pi , но безрезультатно. Поскольку он работает на моем Mac, это не похоже на проблему с роутером.

Что я могу сделать, чтобы подключиться к моему Pi по имени хоста в Windows?


Windows 10 теперь официально поддерживает SSH через подсистему Linux.
YouAGitForNotUsingGit

Ответы:


21

Как To Geek имеет хорошую статью, которая освещает эту проблему. В двух словах, .localдомены самоотчетны каждому хосту (через Multicast DNS ), и другие машины в сети должны их прослушивать. Windows поставляется с такой службой ( LLMNR ), однако она нестандартна и поэтому не очень хорошо работает. Вместо этого вам следует установить службу Apple Bonjour ( установить ссылку ). После установки Bonjour вы сможете подключаться к своему Pi в Windows через .localимена хостов.


Современные Raspbian версии должны поставляться с Avahi для обеспечения mDNS. Если он не работает, убедитесь, что avahi-daemonон установлен и работает на вашем Pi; если он не запущен, установите его:

sudo apt-get install avahi-daemon

Не поменять ли .localчасть .intили .homeобойти эту проблему?
Исмаэль Мигель

1
@ismael - нет, tld не является проблемой, это Windows 10, не зная об устройстве ... .local настроен для работы с локальной сетью, другой tld будет работать хуже / нужно больше настроек в моем опыт.
DrCord

По моему опыту, редактирование файла hosts будет работать. Я использую это для плохо настроенного сервера. (Я настроил это так из-за нехватки времени и потому, что это просто для проверки кода перед развертыванием). Пока что всегда работал на меня.
Исмаэль Мигель

1
@IsmaelMiguel редактирование файла hosts работает, но это не очень надежное решение. Каждый раз, когда машине назначается новый IP-адрес, вам нужно отредактировать файл, и если у вас есть несколько машин, с которых вы пытаетесь подключиться, вам нужно синхронизировать несколько файлов хоста. mDNS делает все это за вас.
dimo414

С mDNS / Bonjour / Avahi вы никогда не должны менять TLD. Local является официальным, указанным в RFC, и многие устройства (например, многие принтеры) даже не могут быть перенастроены для другого TLD. Кроме того, .local гарантированно никогда не будет назначен в качестве официального TLD (хотя он уже широко использовался для доменов Active Directory, когда кодировался mDNS). .home практически гарантированно вызывает конфликты.
user87363
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.