Назад | Перейти на главную страницу

Как связаны обнаружение службы DNS, многоадресный DNS и Bonjour?

Я немного запуталась в терминологии. Я хотел начать использовать Bonjour. В качестве первого шага я попытался найти простой способ его использования. И я подумал, что, возможно, смогу вызвать Bonjour из командной строки для регистрации и обнаружения сервисов.

Когда я спросил других, как это сделать, мне ответили о mDNS (который работает для Mac и Linux, но не для Windows). Люди также сказали мне, что я могу использовать «dns-sd» (который работает в Windows). Мне сказали, что «dns-sd» - это просто псевдоним для mDNS.

Но! Позже я узнал, что DNS Service Discovery и Multicast DNS - это две разные вещи (которые совместимы и работают особенно хорошо, когда используются вместе, но не требуют друг друга).

Более того, мне кажется, что mDNS и DNS-SD - это два из трех основных компонентов Bonjour. Это правильно? Могу ли я использовать их без Bonjour? В моей Windows 7 я установил Bonjour и смог запустить «dns-sd» в командной строке. Но я не могу запустить mDNS.

Итак, я немного запутался в данный момент. Кто-нибудь может хоть немного прояснить ситуацию?

Я только что ответил на ваш предыдущий вопрос Вот.

Думаю, этот ответ касался вопросов, которые вы здесь задали, но на всякий случай:

Bonjour состоит из 3 частей:
1. IPv4 (и IPv6) локальная адресация канала (169.254.0.0/16 адресов в IPv4).
2. Разрешение многоадресного имени (по протоколу mDNS). Это позволяет хостам в специальной или изолированной локальной сети автоматически сопоставлять имена хостов с IP-адресами друг для друга путем многоадресной рассылки DNS-запросов и ответов между собой, без необходимости использования традиционного одноадресного DNS-сервера.
3. Обнаружение служб DNS, которое позволяет вам обнаруживать имена и сведения о службах данного типа. В локальной сети обнаружение службы DNS обычно также выполняется через mDNS, но с помощью «Wide Area Bonjour» вы можете фактически выполнить обнаружение службы DNS для всего домена через одноадресный DNS-сервер.

Инструмент dns-sd позволяет вам выполнять все запросы / поисковые запросы, необходимые для частей 2 и 3, примеры которых я привел в своем ответе на ваш другой вопрос.

Я думаю, что часть вашего замешательства связана с тем, что существуют инструменты командной строки с такими же именами, как и протоколы. mDNS - это имя протокола многоадресной службы доменных имен, но это также старое название распространенного инструмента командной строки для отправки запросов протокола mDNS и получения ответов. «dns-sd» - это текущее имя наиболее распространенного инструмента командной строки для обнаружения службы DNS, а также для выполнения поиска по разрешению многоадресных имен. Оба этих инструмента командной строки обычно вызывают API-интерфейсы, которые обрабатываются фоновым процессом / службой / демоном mDNSResponder.