У меня есть несколько серверов Linux в моей домашней сети, к которым я получаю доступ через "hostname.local", однако при использовании компьютера с Windows они не могут решить эту проблему, если я не иду по IP-адресу.
Как мне сделать так, чтобы мой компьютер с Windows мог разрешать адреса hostname.local? Я знаю, как редактировать, C:\Windows\System32\drivers\etc\hosts
но наверняка должен быть какой-то автоматический способ заставить Windows просто найти эти машины?
Ответы:
Обычно
.local
имена разрешаются с использованием mDNS - серверы Linux, вероятно, работают под управлением Avahi, а для Windows есть собственный Bonjour от Apple.Старая версия Bonjour (v2.0) включена в Bonjour Print Services . Он также доступен в виде шоколадной упаковки .
Последняя версия (v3.x) недоступна для самостоятельной загрузки, но устанавливается как часть iTunes (и нескольких других приложений ). Для извлечения
Bonjour64.msi
из программы установки iTunes можно использовать менеджер архивов (например, 7-Zip или WinRAR) .источник
msiexec /a iTunes.msi TARGETPATH=iTunes.out
.Как отмечает @Kevin Keane здесь (и в разделе комментариев выше), Windows 10 теперь забивает mDNS-порт 5353 сервисом, который работает только для современных приложений Windows. Таким образом, чтобы позволить Bonjour вернуться на порт, служба windows mDNS должна быть отменена путем редактирования реестра, описанного в приведенной выше ссылке.
В версиях Windows 10, отличных от Home, вместо редактирования реестра можно использовать редактор групповой политики:
Мне не пришлось перезагружаться.
Предостережение, у меня уже были установлены как iTunes, так и Bonjour Print Services. Простое удаление Bonjour Print Services и переустановка не работали - мне пришлось зайти в программы удаления и удаления, удалить Bonjour и Bonjour Print Services, а затем переустановить Bonjour Print Services, прежде чем пинговать .local адреса снова начали работать (только для хоста virtualbox гость linux с работающим avahi-демоном). Я думаю, это потому, что моя служба «Bonjour Service» была привязана к Bonjour, а не к Bonjour Print Services, и сама не проходила перерегистрацию.
источник
.local
именем прекрасно работает в Linux.