Utilisation des enregistrements DNS TXT avec des caches de contenu pour les appareils Apple
Ajouter des enregistrements TXT au fichier de zone DNS
Ajoutez un ou plusieurs enregistrements TXT au fichier de zone du domaine local de votre serveur DNS. Ajoutez l’enregistrement DNS TXT à la zone qui :
fait autorité pour le domaine;
correspond au domaine de recherche par défaut pour les clients réseau.
Par exemple, si votre organisation propose un service DNS pour votre propre domaine et si elle représente la source d’autorité pour les noms d’hôte de betterbag.com, vous devez mettre l’enregistrement TXT de mise en cache dans le fichier de zone betterbag.com.
Important : Si vous n’hébergez pas le service DNS faisant autorité pour votre domaine, vous ne pouvez pas ajouter l’enregistrement TXT vous-même. Contactez votre fournisseur DNS pour lui demander d’ajouter l’enregistrement TXT fourni.
Si vous utilisez un serveur DNS BIND9, copiez l’enregistrement TXT généré et collez-le dans votre fichier de zone DNS.
Pour un DNS basé sur BIND9 sous Linux, ce fichier se trouve dans le répertoire /private/etc/bind/ et le nom du fichier de zone a été défini dans /private/etc/bind/named.conf (fort probablement « db.betterbag.com »).
Si vous utilisez un serveur DNS Windows, effectuez l’une des opérations suivantes :
Si vous avez généré l’enregistrement texte à l’aide du service de mise en cache de contenu : remplacez la variable ZoneName dans la commande générée par le nom de zone DNS de votre réseau, puis exécutez la commande sur l’ordinateur DNS Windows.
Si vous avez créé un enregistrement texte manuellement : saisissez manuellement les données de l’enregistrement TXT à l’aide des outils d’administration de Windows Server.
Utilisation des enregistrements DNS TXT pour publier du contenu sur plusieurs adresses IP publiques
Si votre serveur utilise plusieurs adresses IP publiques pour se connecter à Internet, de telle manière qu’un cache de contenu peut s’enregistrer à l’aide d’une adresse différente de celle utilisée par un client pour la découverte, vous devez donner aux caches de contenu et aux clients une liste de ces adresses. Apple utilise ces listes pour contre-vérifier l’enregistrement et les demandes de découverte concernant plusieurs adresses IP publiques.
Afin d’éviter la configuration manuelle des clients, la mise en cache des contenus utilise des enregistrements DNS TXT afin de publier les informations d’adresse IP publique des clients de votre réseau. L’enregistrement TXT doit être publié dans le domaine de recherche DNS par défaut utilisé par vos clients.
Avec macOS 10.15 ou ultérieur, vous pouvez également indiquer les adresses IP locales favorites pour réduire l’impact des caches d’autres contenus sur votre réseau. Si aucune adresse IP locale favorite n’est indiquée dans un enregistrement TXT, tous les clients utilisent n’importe quel cache de contenu disponible.
Les données valides pour l’enregistrement TXT pour les plages d’adresses IP publiques peuvent être générées automatiquement ou manuellement. Dans les deux cas, vous devez modifier l’enregistrement DNS, ou donner les réglages de votre fournisseur DNS pour créer ou modifier l’enregistrement TXT du fichier de zone. Vous ne pouvez pas générer automatiquement des enregistrements TXT pour les adresses IP locales favorites; il faut les créer manuellement.
Remarque : Ces enregistrements sont requis par votre réseau interne uniquement. L’enregistrement supplémentaire n’est pas requis par le serveur DNS externe.
Format des enregistrements DNS TXT
La syntaxe utilisée pour spécifier des enregistrements TXT et les caractères non-ASCII de ces enregistrements varie selon votre serveur DNS. Les présents exemples sont fournis à titre d’illustration seulement.
Les enregistrements texte DNS pour la mise en cache de contenu ont le même format que les enregistrements TXT DNS-SD (paires de valeurs de clé) :
name._tcp 10800 IN TXT "[prs|prn|fss|fsn]=addressRanges"
Utilisez les clés prs
et prn
pour les plages d’adresses IP publiques; utilisez les clés fss
et fsn
pour les plages d’adresses IP locales des caches de contenu favoris.
Les exemples suivants définissent tous le même ensemble de deux plages d’adresses IP : une plage qui commence à 17.53.22.2 et se termine à 17.53.22.254, et une autre qui contient une seule adresse IP : 17.53.23.1. La différence entre les deux est que le premier exemple utilise la clé prs
et le second, la clé prn
.
_aaplcache._tcp 10800 IN TXT "prs=17.53.22.2-17.53.22.254,17.53.23.1"
_aaplcache._tcp 10800 IN TXT
_aaplcache._tcp 10800 IN TXT "prn=\x24\x11\x35\x16\x02\x11\x35\x16\xfe\x14\x11\x35\x17\x01"
Les clés utilisent des formats différents pour les plages d’adresses IP précisées dans la valeur :
prs ou fss : La valeur de la clé
prs
oufss
est une séquence de plages d’adresses IP séparées par des virgules, au format de présentation (notation par points ASCII). Cette syntaxe est conçue pour simplifier la configuration. Une plage est constituée d’une seule adresse IP ou de deux adresses IP séparées par un trait d’union.prn ou fsn : La valeur de la clé
prn
oufsn
est une séquence de plages d’adresses IP secondaires au format binaire dans l’ordre des octets du réseau. Cette syntaxe est destinée aux séquences de plages trop longues pour un enregistrement DNS lorsqu’elles sont spécifiées au format de présentation. Chaque plage de la séquence est précédée d’un octet qui précise le type de plage qui suit :0x14 indique une seule adresse IPv4.
0x24 indique le début et la fin d’une plage d’adresse IPv4.
Vous pouvez enchaîner plusieurs enregistrements. Si vous le faites, nommez le premier enregistrement _aaplcache._tcp
et les autres _aaplcache1._tcp
jusqu’à _aaplcache24._tcp
pour un maximum de 25 enregistrements chaînés.
Pour maintenir la compatibilité avec les clients sous macOS 10.14 ou une version antérieure, placez les enregistrements qui utilisent les clés prs
ou prn
avant tout enregistrement qui utilise les clés fss
ou fsn
.
Chaînez les enregistrements en mettant un marqueur de continuation sur tous les enregistrements TXT, sauf le dernier.
Les syntaxes prs
et prn
peuvent être mélangées entre les enregistrements de la chaîne. Avec la syntaxe prs
, ajoutez « ,more
» à la fin de la valeur de l’enregistrement. Avec la syntaxe prn
, ajoutez « +
» (0x2b) à la fin de la valeur de l’enregistrement. Le premier enregistrement qui ne présente pas de marqueur de continuation termine la chaîne.
Les enregistrements chaînés sont résolus par lots de cinq à la fois. En d’autres termes, _aaplcache._tcp
et _aaplcache1._tcp
jusqu’à _aaplcache4._tcp
sont d’abord résolus en parallèle. S’ils se terminent tous par des marqueurs de continuation, alors _aaplcache5._tcp
jusqu’à _aaplcache9._tcp
sont résolus, et ainsi de suite.
Voici un exemple de trois enregistrements chaînés :
_aaplcache._tcp 10800 IN TXT "prs=17.250.1.1,17.250.2.1-17.250.2.254,more"
_aaplcache1._tcp 10800 IN TXT "prn=\x24\x11\xfa\x03\x01\x11\xfa\x03\xfe+"
_aaplcache2._tcp 10800 IN TXT "prs=17.250.4.5"
Exemple 1
Cet exemple démontre un scénario où un enregistrement prs
ou prn
et un enregistrement fss
ou fsn
sont requis.
Supposons que vous ayez déjà un enregistrement DNS TXT nommé « _aaplcache._tcp
» avec une valeur « prs=203.0.113.10-203.0.113.19
» et trois caches de contenu déployés avec les adresses locales 10.0.0.30, 10.1.0.30 et 10.2.0.30. Les deux premiers servent uniquement le contenu partagé alors que le dernier sert le contenu partagé et le contenu iCloud.
Pour empêcher les clients d’utiliser un cache de contenu non autorisé, vous pouvez ajouter « ,more
» à cet enregistrement et ajouter un second enregistrement comme suit :
_aaplcache._tcp prs=203.0.113.10-203.0.113.19,more
_aaplcache1._tcp fss=10.0.0.30,10.1.0.30,10.2.0.30
Tant qu’au moins un des trois caches de contenu utilise cette méthode, les appareils exécutant iOS 13, iPadOS 13.1, macOS 10.15, tvOS 13 ou une version ultérieure pour la recherche de contenu partagé, ceux-ci utilisent exclusivement ces caches de contenu. S’ils sont tous les trois hors ligne, les clients à la recherche de contenu partagé peuvent utiliser n’importe quel cache de contenu disponible.
Tant que 10.2.0.30 utilise cette méthode, les appareils exécutant iOS 13, iPadOS 13.1, macOS 10.15 et tvOS 13 ou une version ultérieure pour la recherche de contenu iCloud l’utilisent exclusivement. S’il est hors ligne, les clients à la recherche de contenu iCloud utilisent n’importe quel cache de contenu disponible.
Les appareils exécutant iOS 12, macOS 10.14 ou une version antérieure utilisent n’importe quel cache de contenu, pas seulement ces trois-là.
Exemple 2
Cet exemple démontre un scénario où un enregistrement prs
ou prn
n’est pas requis.
Supposons que vous n’ayez qu’une seule adresse IP publique et que vous n’utilisiez pas du tout la fonctionnalité d’enregistrement DNS TXT, mais que vous possédiez quelques caches de contenu sur un sous-réseau réservé aux serveurs (192.168.50/24).
Pour empêcher les caches de contenu non autorisés, vous pouvez configurer un enregistrement comme suit :
_aaplcache._tcp fss=192.168.50.1-192.168.50.254
Tant qu’au moins un cache de contenu est disponible dans cette plage pour le type de client qu’il recherche (contenu partagé ou iCloud), les clients sous iOS 13, iPadOS 13.1, macOS 10.15, tvOS 13 ou une version ultérieure l’utilisent exclusivement.