Il s'agit de la collection de découverte de services DNS Open Source d'Apple. La collection se compose d'un ensemble de démons, d'outils et de bibliothèques qui peuvent être utilisés ensemble ou séparément lors du déploiement et de l'utilisation de la découverte de services DNS. La collection se compose des sous-systèmes suivants :
Le démon de répondeur mDNS (mDNSResponder) sert à la fois de résolveur de stub DNS, de résolveur d'informations publiées à l'aide du DNS multicast (mDNS) et d'éditeur d'informations mDNS. mDNSResponder surveille le trafic de multidiffusion sur le port 5353, le port mDNS, pour suivre les services annoncés sur le réseau local. mDNSResponder effectue la résolution DNS pour les requêtes non locales et résout les requêtes dans le domaine spécial « .local » à l'aide de mDNS. mDNSResponder est utilisé sur macOS comme résolveur système et fournit également la publicité et la découverte du service Bonjour, et peut fournir les mêmes services sur d'autres plates-formes, telles que Linux et BSD.
[Cliquez ici pour savoir comment configurer et utiliser mDNSResponder.][1]
Le routeur de bordure de réseau OpenThread Stub peut être utilisé pour fournir un service de routeur de stub pour les réseaux Thread (maille 802.15.4) utilisant OpenThread. Un routeur stub est un routeur qui dessert un ou plusieurs réseaux isolés (stub) et peut se connecter automatiquement à un réseau d'infrastructure , tel qu'un réseau Wi-Fi domestique. Le but d’un routeur stub est de permettre :
[Cliquez ici pour savoir comment configurer et utiliser un routeur de bordure réseau Open Thread Stub][2]
Le proxy de découverte DNSSD implémente le proxy de découverte DNSSD IETF ([RFC8766][3]) et DNS Push ([RFC 8765][4]). Ensemble, ils fournissent un service DNS faisant autorité, à des fins de découverte de services DNS, en utilisant mDNS au lieu d'une base de données DNS avec état. Cela permet à l'infrastructure réseau de fournir automatiquement la découverte des services DNS via DNS, ce qui élimine le problème courant sur les réseaux multi-liens où les services ne peuvent être découverts par un hôte que lorsqu'il est connecté au bon lien.
[Cliquez ici pour savoir comment configurer et utiliser un proxy de découverte DNSSD][5]
Le proxy publicitaire du protocole d'enregistrement du service DNSSD implémenté agit comme un serveur [DNSSD Service Registration Protocol][6] : il accepte les enregistrements de service des clients SRP. Les enregistrements de service sont ensuite annoncés sur une ou plusieurs liaisons d'infrastructure à l'aide d'un DNS multicast.
[Cliquez ici pour savoir comment configurer et utiliser un proxy publicitaire du protocole d'enregistrement du service DNSSD][7]
Le client du protocole d'enregistrement du service DNSSD implémente le côté client du [protocole d'enregistrement du service DNSSD][8]. L'implémentation du client principal est implémentée de telle manière qu'elle peut être facilement intégrée à l'aide d'une petite API qui doit être implémentée dans l'environnement embarqué. Deux exemples d'API sont fournis, un pour Thread et un autre pour Posix. L'implémentation Posix crée un client de ligne de commande qui peut être utilisé comme démon pour enregistrer un service ou pour valider divers aspects des implémentations du protocole d'enregistrement de service.
[Cliquez ici pour plus d'informations sur le client du protocole d'enregistrement du service DNSSD][9]
Le proxy de mise à jour du protocole d'enregistrement du service DNSSD agit comme un serveur [DNSSD Service Registration Protocol][10] : il accepte les enregistrements de service des clients SRP. L'enregistrement SRP est ensuite utilisé pour générer une série de mises à jour DNS ([RFC2136][11]). Ces mises à jour peuvent être authentifiées à l'aide de TSIG. Le serveur SRP répond au client une fois toutes les mises à jour DNS terminées, ou répond lorsqu'une partie de la mise à jour DNS échoue. L’effet de l’exécution du proxy de mise à jour du protocole SRP est comme si le serveur DNS en cours de mise à jour était lui-même un serveur SRP.
[Cliquez ici pour savoir comment configurer et utiliser un proxy de mise à jour du protocole d'enregistrement du service DNSSD][12]
L'outil de ligne de commande DNSSD (dns-sd) fournit un moyen d'exercer les services fournis par mDNSResponder. Les services peuvent être annoncés, parcourus et résolus. L'outil offre une grande variété d'options de ligne de commande différentes et constitue un excellent moyen d'explorer les fonctionnalités de DNS-SD.
[Cliquez ici pour en savoir plus sur l'outil de ligne de commande DNSSD][13]
La bibliothèque client DNSSD fournit, lorsqu'elle est utilisée avec le démon mDNS Responder, un service complet de résolution de noms de stub DNS, un service de publicité DNSSD et un service de navigation et de résolution DNSSD. La bibliothèque est asynchrone et peut être facilement intégrée à un flux de serveur asynchrone existant.
[Cliquez ici pour en savoir plus sur la bibliothèque client DNSSD][14]
[Cliquez ici pour en savoir plus sur la façon dont mDNSResponder gère le temps][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] : Documents/advertising-proxy.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