2.4.2. AliasMode
2.4.2. AliasMode
En AliasMode, l'enregistrement SVCB crée un alias d'un service vers un TargetName. Les RRsets SVCB NE DEVRAIENT avoir qu'un seul RR en AliasMode. Si plusieurs RR AliasMode sont présents, les clients ou les résolveurs récursifs DEVRAIENT en choisir un au hasard.
Le but principal d'AliasMode est de permettre l'aliasing au sommet de zone (zone apex), où CNAME n'est pas autorisé (voir, par exemple, [RFC1912], Section 2.4). En AliasMode, le TargetName sera le nom d'un domaine qui se résout en enregistrements SVCB, AAAA et/ou A. (Voir la Section 6 pour l'aliasing des types de RR compatibles SVCB.) Contrairement à CNAME, les enregistrements AliasMode n'affectent pas la résolution d'autres types de RR et s'appliquent uniquement à un service spécifique, pas à un nom de domaine entier.
Le TargetName AliasMode NE DEVRAIT PAS être égal au nom du propriétaire, car cela entraînerait une boucle. En AliasMode, les destinataires DOIVENT ignorer tous les SvcParams présents. Les analyseurs de fichiers de zone PEUVENT émettre un avertissement si un enregistrement AliasMode a des SvcParams. L'utilisation de SvcParams dans les enregistrements AliasMode n'est actuellement pas définie, mais une spécification future pourrait étendre les enregistrements AliasMode pour inclure des SvcParams.
Par exemple, l'opérateur de "foo://example.com:8080" pourrait pointer les requêtes vers un service fonctionnant à "foosvc.example.net" en publiant:
_8080._foo.example.com. 3600 IN SVCB 0 foosvc.example.net.
L'utilisation d'AliasMode maintient une séparation des préoccupations: le propriétaire de "foosvc.example.net" peut ajouter ou supprimer des enregistrements SVCB ServiceMode sans nécessiter de modification correspondante de "example.com". Notez que si "foosvc.example.net" promet de toujours publier un enregistrement SVCB, cet enregistrement AliasMode peut être remplacé par un CNAME au même nom de propriétaire.
AliasMode est particulièrement utile pour les types de RR compatibles SVCB qui ne nécessitent pas de préfixe underscore, tels que le type de RR HTTPS. Par exemple, l'opérateur de "https://example.com" pourrait pointer les requêtes vers un serveur à "svc.example.net" en publiant cet enregistrement au sommet de zone:
example.com. 3600 IN HTTPS 0 svc.example.net.
Notez que le nom du propriétaire de l'enregistrement SVCB PEUT être le nom canonique d'un enregistrement CNAME, et le TargetName PEUT être le propriétaire d'un enregistrement CNAME. Les clients et les résolveurs récursifs DOIVENT suivre les CNAME normalement.
Pour éviter les chaînes d'alias illimitées, les clients et les résolveurs récursifs DOIVENT imposer une limite sur le nombre total d'alias SVCB qu'ils suivront pour chaque demande de résolution. Cette limite NE DOIT PAS être zéro, c'est-à-dire que les implémentations DOIVENT être capables de suivre au moins un enregistrement AliasMode. La valeur exacte de cette limite est laissée aux implémentations.
Les zones qui nécessitent de suivre plusieurs enregistrements AliasMode pourraient rencontrer des problèmes de compatibilité et de performances.
Comme les clients hérités ne sauront pas utiliser cet enregistrement, les opérateurs de services devront probablement conserver des enregistrements AAAA et A de secours aux côtés de cet enregistrement SVCB, bien que dans un cas courant, la cible de l'enregistrement SVCB puisse offrir de meilleures performances et serait donc préférable pour les clients implémentant cette spécification.
Les enregistrements AliasMode s'appliquent uniquement aux requêtes pour le type de RR spécifique. Par exemple, un enregistrement SVCB ne peut pas créer d'alias vers un enregistrement HTTPS ou vice versa.