У меня есть две платы Raspberry Pi под управлением Linux (Raspbian). Их полная идентичность сбивает меня с толку, когда я вижу их рекламируемые имена хостов:
Первое - это kitchen.local
; второе - это BATHROOM
.
Файл /etc/hostname — это kitchen
и bathroom
соответственно для обоих устройств.
Итак, мой вопрос: что добавляет .local
или заставляет второе устройство иметь все заглавные буквы в имени хоста?
Я не уверен, как это все работает и имеет ли значение следующее: я запрашиваю имена хостов с помощью Angry IP Scanner. Мой DHCP-сервер — это маршрутизатор с OpenWRT на нем. DNS-сервер — это мой модем, который, как я полагаю, действует как своего рода кэш.
решение1
Ваш инструмент сканирования может использовать несколько различных протоколов обнаружения/просмотра для поиска имен обнаруженных устройств, а также для разных протоколов существуют различные соглашения.
Служба имен NetBIOS очень старая и традиционно использует имена хостов, состоящие ВСЕХ ЗАГЛАВНЫХ БУКВ.
IETF ZeroConf поддерживает смешанный регистр и использует именование .local. (Примечание об именовании: ZeroConf изначально был Apple Rendezvous/Bonjour и с тех пор был стандартизирован IETF. Базовые протоколы, которые он использует, называются mDNS (multicast DNS) и DNS-SD (DNS Service Discovery), поэтому некоторые называют его этими именами. Наиболее распространенной реализацией Linux, вероятно, по-прежнему является Avahi, хотя в некоторых дистрибутивах используется открытый исходный код mDNSResponder от Apple, а OpenWrt создал свой собственный демон mDNS.)
Собственная технология Microsoft LLMNR (разрешение имен многоадресной рассылки локального канала) является своего рода нестандартным полуклоном ZeroConf и также использует именование .local, просто чтобы запутать ситуацию.
Возможно, ваш сканер просто придерживается того имени, которое он обнаружит первым, через тот протокол, который отреагирует первым.