Недавно я столкнулся avahi-daemon
и mdns
....
Мне нужен mDNS клиент в моей системе для соединения с mDNS сервером?
Или есть ли какой-либо другой способ подключить компьютер без mDNS клиента к mDNS серверу (hostname.local)?
Действительно ли возможно проверить с помощью ping-запросов от компьютера без mDNS сервисного выполнения.
Для получения общей картины необходимо посмотреть на что-то названное Zeroconf. Понятия Zeroconf были реализованы сначала и полностью Apple, но Apple использует маркетинговое имя Добрый день (первоначально Рандеву) для нее. mDNS (многоадресно передает DNS) является частью этого - посмотрите ниже.
Apple использует Добрый день для...
... AirPrint (когда iOS мобильные клиенты ищут доступный принтер в LAN, которую они могут использовать для "беспилотной печати"), или для
... Принтер CUPS совместно использует, чтобы быть опубликованным в LAN, или для
... музыкальная библиотека iTunes, совместно использующая на LAN, и для
... многие другие сервисы, которые должны работать без центрального сервера DNS, который будет установлен, настроили и поддержали.
В соответствии с Linux, эти те же понятия были реализованы проектом Avahi.
Bonjour/Zeroconf имеет 3 главных цели:
Полные технические понятия Zeroconf указаны в серии RFCs, главным образом:
Одним из основных архитекторов Zeroconf был Stuart Cheshire. После записи его мыслей о то, как реализовать исходный Протокол Привязки Имени AppleTalk простоты использования Apple по TCP/IP, объединяющему Stuart в сеть, было нанято Apple, чтобы помочь реализовать понятие Zeroconf для устройств Mac. Он затем также был основным автором вышеупомянутых связанных документов RFC.
Apple Добрый день реализация также доступна для Windows и Linux (хотя на Linux существует также независимая реализация под названием Avahi) как Открытый исходный код в соответствии с лицензией Apache v2.0.
IANA выполняет сервис имена и реестр портов, где разработчики, которые хотят определить и разработать новые сервисные типы для их систем, могут зарезервировать и зарегистрировать имена их.
Да, это.
Просто выполненный
avahi-browse -a
для получения непрерывно обновляемого списка сервисных объявлений от всех узлов на LAN и сервисах, они предлагают. Более подробный вывод перечислен
avahi-browse -v -a -t
-t
здесь также завершает команду автоматически (и не делает автоматического обновления список) после того, как это, как может предполагаться, имеет все обнаруженные в настоящее время активные службы.
Можно просмотреть для IPP-поддерживающего (интернет-Протокол Печати) принтеры как это:
avahi-browse _ipp._tcp -r -t
-r
"разрешит" найденные сервисы и покажет человекочитаемое имя их. _ipp._tcp
(странное) кодирование имени для сервисов, необходимо привыкнуть к тому, если Вы изучаете эту тему более подробно. В этом случае это - точный синтаксис, который будет использоваться для сервисов IPP в LAN. Вывод в качестве примера для вышеупомянутой команды:
+ wlan1 IPv4 Officejet 6500 [F051B9] Internet Printer local = wlan1 IPv4 Officejet 6500 [F051B9] Internet Printer local hostname = [HPA0B3CCF051B9.local] address = [192.168.78.24] port = [631] txt = ["Scan=T" "Duplex=F" "Color=T" "UUID=1c852a4d-b800-1f08-abcd-a0b3ccf051b9" "note=" "adminurl=http://HPA0B3CCF051B9.local." "mac=a0:b3:cc:f0:51:b9" "priority=30" "usb_MDL=Officejet 6600" "usb_MFG=HP" "product=(HP Officejet 6600)" "ty=Officejet 6600" "URF=CP1,MT1-2-8-9-10-11,OB9,OFU0,PQ3-4-5,RS300-600,SRGB24,W8,DEVW8,DEVRGB24-48,ADOBERGB24-48,IS1" "rp=ipp/printer" "pdl=application/vnd.hp-PCL,image/jpeg,application/PCLm,image/urf" "qtotal=1" "txtvers=1"]
Можно также просмотреть для сервисов в другом домене, который выставляет их Интернету. Один домен в качестве примера был Вами, может успешно выполниться с этим (большую часть времени) dns-sd.org:
avahi-browse --domain=dns-sd.org -a -v -r
Я скопировал часть этого ответа от Добрый день информация о теге в AskDifferent. Однако большая часть этой статьи информации о теге была написана мной так или иначе, таким образом, я не делаю вообще плохо себя чувствуют об этом....