SOA Resource Record

Un article de Wikipédia, l'encyclopédie libre.

SOA (Start of Authority) est une section importante de la définition de zone dans le système DNS. Elle contient d'importantes informations concernant la zone DNS à laquelle elle se rapporte, notamment concernant le transfert de zone. Le SOA-Record est spécifié dans la RFC 1035[1].

Arrière-plan[modifier | modifier le code]

Normalement, les serveurs de noms DNS sont mis en place dans des clusters. La base de données au sein de ces clusters est synchronisée par le biais de transfert de zones. L'enregistrement SOA dans le fichier de zone contient des données pour contrôler le transfert, c'est le numéro de série et différents compteurs.

Il contient également les adresses e-mail de la personne responsable pour cette zone, ainsi que le nom du serveur principal. Habituellement, l'enregistrement SOA est situé dans la partie supérieure de la zone. Une zone sans enregistrement SOA ne respecte pas la norme, et n'est donc pas transférable.

Structure[modifier | modifier le code]

Nom
Nom de la zone.
IN
Zone (habituellement IN pour internet).
SOA
L'abréviation pour le Start of Authority.
Primaire
Maître principal pour cette zone.
Défini à quel serveur les mises à jour dynamiques doivent être envoyées.
Adresse mail
Mail du responsable de cette zone. Le @ est remplacé par un .. Les points avant les @ sont remplacés par \. ; par exemple john\.doe.example.com pour l'adresse mail john.doe@example.com.
Numéro De série
Est augmenté à chaque changement. Convention commune : YYYYMMDDVV ; donne un indice sur le moment ou la zone a été mise à jour pour la dernière fois.
Refresh
Nombre de secondes après lequel les serveurs secondaires devraient demander le numéro de série du serveur principal, afin de détecter les changements de zone. Recommandation de RIPE pour les zones petites et stables : 86400 ≙ 24 heures[2].
Retry
Nombre de secondes après lequel les serveurs de noms secondaires doivent réessayer de demander le numéro de série du maître si le maître ne répond pas. Il doit être inférieur à Refresh. Recommandation de RIPE NCC pour les zones petites et stables : 7200 ≙ 2 heures.
Expire
Nombre de secondes après lequel les serveurs de noms secondaires devraient arrêter de répondre à une demande pour cette zone si le maître ne répond pas. Cette valeur doit être supérieure à la somme de Refresh et de Retry. Recommandation de RIPE NCC pour les zones petites et stables : 3600000 ≙ 1000 heures.
TTL
Le « Time to live » pour la mise en cache négatif. (Recommandation de RIPE NCC pour les petites et stable zones: 172800 ≙ 2 jours.) À l'origine ce champ avait pour but de donner un TTL minimum pour toutes les ressources de la zone et il était utilisé si un enregistrement n'avait pas de TTL spécifié. Cela a été rendu obsolète par la RFC 2308[3].

Exemple SOA Record dans BIND[modifier | modifier le code]

@   IN SOA master.example.com. hostmaster.example.com. (
    2017030300 ; serial
    3600       ; refresh
    1800       ; retry
    604800     ; expire
    600 )      ; ttl

Changements de numéro de série[modifier | modifier le code]

Deux méthodes existent :

  • la première consiste à mettre le premier numéro de série à 1 et ce numéro est incrémenté à chaque changement ;
  • le numéro de série contient l'année, le mois et le jour de la dernière modification, suivis par les deux chiffres du compteur (par exemple 2017030301 = , 1er changement à ce jour) ou, parfois, l'heure actuelle. Cette méthode est recommandée dans la RFC 1912[4] 2.2.

Références[modifier | modifier le code]

  1. (en) Request for comments no 1035.
  2. « Recommendations for DNS SOA Values » : « These recommendations are aimed at small and stable DNS zones. »
  3. (en) M. Andrews, « Negative Caching of DNS Queries (DNS NCACHE) », Request for comments no 2308, mars 1998.
  4. (en) Request for comments no 1912.