Это коллекция обнаружения служб DNS с открытым исходным кодом Apple. Коллекция состоит из набора демонов, инструментов и библиотек, которые можно использовать вместе или по отдельности при развертывании и использовании обнаружения служб DNS. Коллекция состоит из следующих подсистем:
Демон ответчика mDNS (mDNSResponder) выполняет функции преобразователя DNS-заглушки, преобразователя информации, опубликованной с использованием многоадресной DNS (mDNS), а также издателя информации mDNS. mDNSResponder отслеживает многоадресный трафик через порт 5353 (порт mDNS), чтобы отслеживать услуги, рекламируемые в локальной сети. mDNSResponder выполняет разрешение DNS для нелокальных запросов и разрешает запросы в специальном домене «.local» с помощью mDNS. mDNSResponder используется в macOS в качестве системного преобразователя, а также обеспечивает рекламу и обнаружение службы Bonjour и может предоставлять те же услуги на других платформах, таких как Linux и BSD.
[Нажмите здесь, чтобы узнать, как настроить и использовать mDNSResponder.][1]
Пограничный маршрутизатор сети-заглушки OpenThread можно использовать для предоставления услуги маршрутизатора-заглушки для сетей Thread (ячеистая сеть 802.15.4) с использованием OpenThread. Маршрутизатор-заглушка — это маршрутизатор, который обслуживает одну или несколько изолированных (заглушек) сетей и может автоматически подключаться к инфраструктурной сети , например к домашней сети Wi-Fi. Целью тупикового маршрутизатора является обеспечение:
[Нажмите здесь, чтобы узнать, как настроить и использовать пограничный сетевой маршрутизатор с открытым потоком][2]
Прокси-сервер обнаружения DNSSD реализует прокси-сервер обнаружения DNSSD IETF ([RFC8766][3]) и DNS Push ([RFC 8765][4]). Вместе они обеспечивают авторитетную службу DNS с целью обнаружения служб DNS, используя mDNS вместо базы данных DNS с отслеживанием состояния. Это позволяет сетевой инфраструктуре автоматически обеспечивать обнаружение служб DNS через DNS, что устраняет распространенную проблему в многоканальных сетях, где службы могут быть обнаружены хостом только тогда, когда он подключен к правильному каналу.
[Нажмите здесь, чтобы узнать, как настроить и использовать прокси-сервер обнаружения DNSSD][5]
Рекламный прокси-сервер протокола регистрации служб DNSSD выполняет функции сервера [Протокол регистрации служб DNSSD][6]: он принимает регистрации служб от клиентов SRP. Регистрация служб затем объявляется по одному или нескольким каналам инфраструктуры с использованием многоадресной DNS.
[Нажмите здесь, чтобы узнать, как настроить и использовать рекламный прокси-сервер протокола регистрации службы DNSSD][7]
Клиент протокола регистрации службы DNSSD реализует клиентскую часть [Протокола регистрации службы DNSSD][8]. Реализация основного клиента реализована таким образом, что ее можно легко встроить с помощью небольшого API, который должен быть реализован во встроенной среде. Предоставляются два примера API: один для Thread, а другой для Posix. Реализация Posix создает клиент командной строки, который можно использовать как демон для регистрации службы или для проверки различных аспектов реализации протокола регистрации службы.
[Нажмите здесь, чтобы получить дополнительную информацию о клиенте протокола регистрации службы DNSSD][9]
Прокси-сервер обновления протокола регистрации служб DNSSD действует как сервер [Протокол регистрации служб DNSSD][10]: он принимает регистрации служб от клиентов SRP. Регистрация SRP затем используется для создания серии обновлений DNS ([RFC2136][11]). Эти обновления можно аутентифицировать с помощью TSIG. Сервер SRP отвечает клиенту после завершения всех обновлений DNS или отвечает, когда одна часть обновления DNS завершается сбоем. Эффект от запуска прокси-сервера обновления протокола SRP такой же, как если бы обновляемый DNS-сервер сам был сервером SRP.
[Нажмите здесь, чтобы узнать, как настроить и использовать прокси-сервер обновления протокола регистрации службы DNSSD][12]
Инструмент командной строки DNSSD (dns-sd) позволяет использовать службы, предоставляемые mDNSResponder. Услуги можно рекламировать, просматривать и решать. Этот инструмент предоставляет широкий спектр различных параметров командной строки и является отличным способом изучить функциональность DNS-SD.
[Нажмите здесь, чтобы узнать об инструменте командной строки DNSSD][13]
Клиентская библиотека DNSSD при использовании с демоном ответчика mDNS предоставляет полнофункциональную службу разрешения имен DNS-заглушек, службу рекламы DNSSD, а также службу просмотра и разрешения DNSSD. Библиотека является асинхронной и может быть легко интегрирована в существующий поток асинхронного сервера.
[Нажмите здесь, чтобы узнать о клиентской библиотеке DNSSD][14]
[Нажмите здесь, чтобы узнать о том, как mDNSResponder справляется со временем][15] [1]: Documents/mDNSResponder.md [2]: Documents/openthread-border-router.md [3]: https://www.rfc-editor .org/rfc/rfc8766.html «RFC8766» [4]: https://www.rfc-editor.org/rfc/rfc8765.html [5]: Documents/discovery-proxy.md [6]: https://datatracker.ietf.org/doc/draft-ietf-dnssd- srp/[7]: Документы/реклама-прокси.md [8]: https://datatracker.ietf.org/doc/draft-ietf-dnssd-srp/ [9]: Documents/srp-client.md [10]: https://datatracker.ietf.org/doc/draft-ietf -dnssd-srp/ [11]: https://tools.ietf.org/html/rfc2136 [12]: Documents/srp-update-proxy.md [13]: Documents/dns-sd.md [14]: Documents/dnssd-client-library.md [15]: Documents/relative-time-in-mDNSResponder.md