5.2. Decouverte des pairs Diameter (Diameter Peer Discovery)
La découverte dynamique des agents Diameter (agents) simplifie et renforce le déploiement. Pour l'interopérabilité, les mécanismes suivants (configuration manuelle et DNS) sont décrits, basés sur les normes IETF. Les deux DOIVENT être pris en charge; l'un ou l'autre PEUT être utilisé.
La découverte intervient lorsqu'un client Diameter doit trouver un premier agent, ou lorsqu'un agent doit en trouver un autre pour la suite du traitement. Dans les deux cas, l'ordre de recherche recommandé est:
-
Consulter la liste statique (manuelle) des emplacements d'agents. Utilisés s'ils existent et répondent.
-
Effectuer une requête NAPTR pour un serveur dans un realm donné. Le realm doit être connu à l'avance, par exemple déduit du realm d'un NAI pour lequel une opération Diameter est nécessaire.
L'usage NAPTR suit l'application S-NAPTR DDDS [RFC3958]: le champ SERVICE contient les étiquettes d'application et de protocole. Pour Diameter, l'étiquette de service est aaa et les protocoles sont diameter.tcp, diameter.sctp, diameter.dtls, diameter.tls.tcp [RFC6408].
Le client applique la résolution [RFC3958] pour trouver un enregistrement SRV, A ou AAAA adapté. Les suffixes de domaine du champ replacement des NAPTR DEVRAIENT correspondre au domaine de la requête initiale. Voir l'annexe B.
- Sans NAPTR, interroger directement les SRV: TCP
_diameter._tcp.realm, TLS_diameters._tcp.realm, SCTP_diameter._sctp.realm, DTLS_diameters._sctp.realm. Si des SRV existent, requêtes A/AAAA selon [RFC2782]. Sinon abandon.
Avec un certificat de site (site certificate), le nom de domaine de la requête NAPTR et celui du replacement DOIVENT être valides par rapport au certificat remis en TLS/TCP, DTLS/SCTP ou IKE. De même pour la requête SRV et la cible SRV. Sinon un attaquant pourrait rediriger vers un autre domaine.
Le pair Diameter DOIT aussi vérifier que les pairs découverts sont autorisés pour leur rôle. L'authentification IKE ou TLS/DTLS, ou DNSSEC seuls, ne suffisent pas. Un serveur web peut avoir un certificat valide sans être serveur Diameter.
L'autorisation peut passer par une autorité de certification (CA) serveur Diameter: certificat avec OID d'usage étendu [RFC5280] indiquant un serveur Diameter. À la rédaction, aucune CA dédiée n'existait.
Un pair découvert dynamiquement crée une entrée dans la table des pairs (section 2.6). Les entrées DNS DOIVENT expirer ou se rafraîchir dans le TTL DNS. Hors realm local, une entrée de table de routage (section 2.7) pour le realm du pair est créée; son expiration DOIT correspondre à celle du pair.