Qu'est-ce qu'un enregistrement DNS SRV ?

L'enregistrement du SRV est utilisé pour des services spéciaux comme le VOIP.

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • Comprendre le but d'un enregistrement SRV.
  • Découvrez les informations contenues dans un enregistrement SRV
  • Comprendre les ports

Copier le lien de l'article

DNS inclus gratuitement dans toutes les offres Cloudflare

Qu'est-ce qu'un enregistrement DNS SRV ?

L'enregistrement  DNS « service » (SRV) spécifie un hôte et un port pour des services spécifiques tels que voix sur IP (VoIP), messagerie instantanée, etc. La plupart des autres enregistrements DNS spécifient uniquement un serveur ou une adresse IP, mais les enregistrements SRV incluent également un port à cette adresse IP. Certains protocoles Internet nécessitent l'utilisation d'enregistrements SRV pour fonctionner.

Qu'est-ce qu'un port ?

Dans le domaine des réseaux, les ports sont des emplacements virtuels qui désignent les processus auxquels le trafic réseau est destiné dans un ordinateur. Les ports permettent aux ordinateurs de différencier facilement les différents types de trafic : Les flux VoIP sont acheminés vers un port différent de celui des messages électroniques, par exemple, même si les deux atteignent un ordinateur via la même connexion Internet. Tout comme les adresses IP, un numéro est attribué à chaque port.

Certains protocoles Internet, tels que IMAP, SIP et XMPP, doivent se connecter à un port spécifique en plus de se connecter à un serveur spécifique. Les enregistrements SRV permettent de spécifier un port dans le DNS.

Que contient un enregistrement SRV ?

Un enregistrement SRV contient les informations suivantes. Nous donnons ici des exemples de valeurs pour chaque champ.

service XMPP
proto* TCP
nom** example.com
TTL 86400
class IN
type SRV
priorité 10
poids 5
port 5223
cible server.example.com

* Abréviation de « protocole », comme dans protocole de transport.
**Nom de domaine.

Cependant, les enregistrements SRV sont en fait formatés de cette manière :

_service._proto.name. Classe TTL type d'enregistrement priorité poids port cible.

Notre exemple d'enregistrement SRV ressemblerait donc à ceci :

_xmpp._tcp.example.com. 86400 IN SRV 10 5 5223 server.example.com.

Dans l'exemple ci-dessus, « _xmpp » indique le type de service (le protocole XMPP) et « _tcp » indique le protocole de transport TCP , tandis que « example.com » est l'hôte, ou le nom de domaine. « Server.example.com » est le serveur cible et « 52230 » indique le port au sein de ce serveur.

Les enregistrements SRV doivent pointer vers un enregistrement A (en IPv4) ou un enregistrement AAAA (en IPv6). Le nom du serveur qu'ils listent ne peut pas être un CNAME. Ainsi, « server.example.com » doit mener directement à un enregistrement A ou AAAA sous ce nom.

Quelle est la différence entre la priorité et le poids dans les enregistrements SRV ?

Les enregistrements SRV indiquent la « priorité » et le « poids » des différents serveurs qu'ils répertorient. La valeur de la priorité d'un enregistrement SRV permet aux administrateurs de donner la priorité à un serveur qui prend en charge le service donné par rapport à un autre. Un serveur ayant une valeur de priorité inférieure recevra plus de trafic que les autres serveurs. Cependant, la valeur « poids » est similaire : un serveur avec un poids plus élevé recevra plus de trafic que les autres serveurs avec la même priorité.

La principale différence entre eux est que la priorité est examinée en premier. S'il y a trois serveurs, le serveur A, le serveur B et le serveur C, et qu'ils ont des priorités respectives de 10, 20 et 30, alors leur « poids » n'a pas d'importance. Le service interrogera toujours le serveur A en premier.

Mais supposons que les serveurs A, B et C aient tous une priorité de 10 - Comment un service va-t-il choisir entre eux–? C'est là que le poids devient un facteur : si le serveur A a une valeur de 5 pour « poids » et que les serveurs B et C ont une valeur de 3 et 2 pour « poids », le serveur A recevra le plus de trafic, le serveur B le deuxième et le serveur C le troisième.