Formatage d'un fichier de zone DNS
Un fichier de zone de service de noms de domaine (DNS) est un fichier texte décrivant une zone DNS. Le format de fichier BIND est plébiscité par le secteur pour les fichiers de zone. Il est couramment utilisé par les logiciels de serveur DNS.
Le format est défini dans la norme RFC 1035.
Limites et remarques relatives aux fichiers de zone
Limites de service
Le service Oracle Cloud Infrastructure DNS est limité à 1 000 zones par compte et à 25 000 enregistrements par zone. Nous invitons les clients ayant des besoins plus importants en nombre de zones et d'enregistrements à contacter le support technique à l'adresse support.oracle.com.
Limites de fichier de zone
La taille des téléchargements de fichier de zone est limitée à 1 méga-octet (Mo) par fichier de zone.
Afin de contourner cette limite, utilisez d'abord la console ou l'opération d'API CreateZone
pour créer une zone. Utilisez ensuite l'opération d'API PatchDomainRecords
pour ajouter des enregistrements à la zone par batch de 100.
Limites d'import et d'export
L'export de fichiers de zone contenant des types d'enregistrement ALIAS ou utilisant Traffic Management (TM) n'est pas pris en charge. En effet, les fichiers de zone sont exportés en tant qu'enregistrements standard RFC, et les enregistrements ALIAS et TM ne sont pas des types d'enregistrement standard. Vous pouvez utiliser l'opération d'API GetZoneRecords
pour obtenir une sauvegarde des enregistrements non standard. Utilisez le paramètre limit
pour créer des batches de 100 enregistrements chacun.
L'import et l'export pour les zones globales sont pris en charge à la fois dans la console et dans l'API, à l'exception des enregistrements ALIAS et TM.
Pour les zones privées, l'import est pris en charge à l'aide de l'opération d'API CreateZone
. L'exportation de zone n'est pas prise en charge.
Exemple de fichier de zone
Exemple de fichier de zone téléchargé en local à partir d'Oracle Cloud Infrastructure DNS.
$ORIGIN example.com.
@ 3600 SOA ns1.p30.oraclecloud.net. (
zone-admin.dyndns.com. ; address of responsible party
2016072701 ; serial number
3600 ; refresh period
600 ; retry period
604800 ; expire time
1800 ) ; minimum ttl
86400 NS ns1.p68.dns.oraclecloud.net.
86400 NS ns2.p68.dns.oraclecloud.net.
86400 NS ns3.p68.dns.oraclecloud.net.
86400 NS ns4.p68.dns.oraclecloud.net.
3600 MX 10 mail.example.com.
3600 MX 20 vpn.example.com.
3600 MX 30 mail.example.com.
60 A 204.13.248.106
3600 TXT "v=spf1 includespf.oraclecloud.net ~all"
mail 14400 A 204.13.248.106
vpn 60 A 216.146.45.240
webapp 60 A 216.146.46.10
webapp 60 A 216.146.46.11
www 43200 CNAME example.com.
Classes d'enregistrement
Dans l'exemple de fichier de zone précédent, aucune classe d'enregistrement n'est affichée. OCI DNS fonctionne uniquement avec les enregistrements de classe IN (Internet, IN), mais omet les informations de classe dans les fichiers de zone pour optimiser l'efficacité.
Structure d'un fichier de zone
$ORIGIN
indique une arborescence de noeuds DNS et démarre généralement un fichier de zone DNS. Les libellés d'hôte qui suivent l'origine sont ajoutés à la fin du nom d'hôte d'origine pour former un nom d'hôte qualifié complet. Les libellés d'hôte d'un enregistrement qui utilise un nom de domaine qualifié complet se terminant par un point ne sont pas ajoutés à la fin du nom d'hôte d'origine.
Exemple : avec ORIGIN example.com.
, example.com
. est ajouté à la fin de tous les enregistrements dont le champ de libellé d'hôte n'est pas suivi d'un point.
Le symbole "@" est un libellé spécial qui indique que $ORIGIN
doit remplacer le symbole "@". Il est généralement utilisé pour le noeud supérieur d'une zone.
Enregistrement SOA : $ORIGIN
est suivi de l'enregistrement SOA de la zone. Un enregistrement SOA est requis pour chaque zone. Il contient le nom de la zone, l'adresse électronique de la partie responsable de l'administration du fichier de zone du domaine, le numéro de série en cours de la zone, le serveur de noms principal de la zone et divers éléments temporels (mesurés en secondes).
Format d'enregistrement SOA
@ IN SOA {primary-name-server} {hostmaster-email} (
{serial-number}
{time-to-refresh}
{time-to-retry}
{time-to-expire}
{minimum-TTL-for-negative-cache} )
- Serveur de noms principal : serveur de noms qui contient le fichier de zone d'origine, et non une copie transférée par AXFR.
- Adresse électronique de l'hôte maître : adresse de la partie responsable de la zone. Un point "." est utilisé à la place du symbole "@". Pour les adresses électroniques contenant des points, remplacez ces derniers par des barres obliques "/".
- Numéro de série : numéro de version de la zone. Le numéro de série augmente à chaque mise à jour suivante de la zone.
- Durée avant actualisation : durée en secondes pendant laquelle un serveur de noms attend avant de vérifier s'il existe une augmentation de numéro de série au sein du fichier de zone principal. Si un serveur de noms DNS secondaire a détecté une augmentation du numéro de série, un transfert est requis pour synchroniser les enregistrements. S'applique uniquement aux zones qui utilisent un DNS secondaire.
- Temps de nouvelle tentative – Durée pendant laquelle un serveur de noms attend avant de réessayer de mettre à jour une zone après une tentative ayant échoué, en secondes. S'applique uniquement aux zones qui utilisent un DNS secondaire.
- Durée avant expiration : durée en secondes pendant laquelle un serveur de noms attend avant de considérer les données d'une zone secondaire comme non valides et d'arrêter de répondre aux requêtes pour cette zone. S'applique uniquement aux zones qui utilisent un DNS secondaire.
- Durée de vie minimale : Durée en secondes pendant laquelle un serveur de noms ou un résolveur met en mémoire cache une réponse négative.
Structure d'un enregistrement dans un fichier de zone
Un fichier de zone est un ensemble d'enregistrements de ressource où chaque entrée d'enregistrement est décrite par la séquence suivante :
Format : | Libellé d'hôte | Durée de vie | Classe d'enregistrement | Type d'enregistrement | Données d'enregistrement |
---|---|---|---|---|---|
Exemple : | example.com. | 60 | IN | A | 104.255.228.125 |
- Libellé d'hôte : libellé d'hôte permettant de définir le nom d'hôte d'un enregistrement et d'indiquer si le nom d'hôte
$ORIGIN
est ajouté à la fin du libellé. Les noms d'hôte qualifiés complets qui se terminent par un point ne sont pas ajoutés à la fin de l'origine. - Durée de vie : la durée de vie correspond au laps de temps pendant lequel un enregistrement DNS est mis en mémoire cache par un serveur DNS externe ou un résolveur. Elle est définie en secondes.
- Classe d'enregistrement : il existe trois classes d'enregistrement DNS : IN (Internet), CH (Chaosnet) et HS (Hesiod). Oracle Cloud Infrastructure DNS utilise uniquement la classe d'enregistrement IN.
- Type d'enregistrement : type d'un enregistrement, tel que CNAME, AAAA ou TXT.
- Données d'enregistrement : données contenues dans une réponse DNS, telles qu'une adresse IP, un nom d'hôte ou d'autres informations. Les différents types d'enregistrement contiennent différents types de données d'enregistrement.
Modification des fichiers de zone exportés à partir de GoDaddy pour importation
GoDaddy.com exporte les fichiers de zone dans un format propriétaire. Pour que le service DNS OCI puisse importer correctement un fichier de zone exporté à partir de GoDaddy, vous devez modifier directement le fichier. Suivez les instructions suivantes pour mettre à jour le fichier de zone.
- Exportez le fichier de zone à partir de GoDaddy. Reportez-vous à la documentation de GoDaddy pour voir comment cela est fait.
- Ouvrez le fichier dans l'éditeur de texte de votre choix.
- Ajoutez une ligne au début du fichier, avant l'enregistrement SOA, et saisissez le code suivant sans oublier le point final :
$ORIGIN [yourdomain].
- Une fois le fichier modifié, enregistrez les modifications apportées au fichier et utilisez la fonction d'import de zone pour importer le fichier dans la configuration DNS. Pour plus d'informations sur l'import de zone, reportez-vous à Gestion des zones DNS.
Si le fichier de zone inclut des enregistrements A dynamiques, tels que
@ 600 IN A GoCentral Published Site
, vous devez modifier ces enregistrements avec les adresses IP correctes du site Web. Contactez GoDaddy pour plus d'informations sur la façon d'obtenir ces informations. Exemple :@ 600 IN A 192.0.2.255
Exemple :
Voici un exemple de fichier de zone exporté à partir de GoDaddy. Le code en gras doit être enlevé du fichier afin que celui-ci puisse être importé dans Oracle Cloud Infrastructure DNS.
Le placement d'un point-virgule au début d'une ligne est une syntaxe de commentaire valide pour un fichier de zone selon la norme RFC 1035. Toutefois, pour faciliter l'utilisation et le formatage, nous vous recommandons de supprimer la grande section de commentaires au début du fichier de zone fourni par GoDaddy, comme illustré ci-dessous.
Domain: example.com
; Exported (y-m-d hh:mm:ss): 2019-01-10 13:05:04
;
; This file is intended for use for informational and archival
; purposes ONLY and MUST be edited before use on a production
; DNS server.
;
; In particular, you must update the SOA record with the correct
; authoritative name server and contact e-mail address information,
; and add the correct NS records for the name servers which will
; be authoritative for this domain.
;
; For further information, please consult the BIND documentation
; located on the following website:
;
; http://www.isc.org/
;
; And RFC 1035:
;
; http://www.ietf.org/rfc/rfc1035.txt
;
; Please note that we do NOT offer technical support for any use
; of this zone data, the BIND name server, or any other third-
; party DNS software.
;
; Use at your own risk.
; SOA Record
example.com. 3600 IN SOA ns41.domaincontrol.com. dns.net. (
2018122702
28800
7200
604800
3600
)
; A Records
@ 600 IN A 192.0.2.249
blog 10800 IN A 192.0.2.255
dev 1800 IN A 192.0.2.254
dev01 1800 IN A 192.0.2.253
dev02 1800 IN A 192.0.2.252
dev03 1800 IN A 192.0.2.251
dev04 1800 IN A 192.0.2.250
; CNAME Records
abc123b432dc7785b7ef31f04f25c3e71 1800 IN CNAME verify.bing.com.
akamai 600 IN CNAME www.example.com.edgekey.net.
email 3600 IN CNAME email.secureserver.net.
; MX Records
@ 604800 IN MX 10 amlxe.l.google.com.
@ 604800 IN MX 10 aplxe.l.google.com.
; TXT Records
@ 3600 IN TXT "google-site-verification=3J82-80dbMyCo5Q5C1G11JszeOnZPGCSYlHcPcXg"
@ 3600 IN TXT "google-site-verification=eS_QPYLE_W4nduSrlN-cddxG7ZqOnB743xsbX918"
L'exemple suivant présente un fichier de zone modifié prêt à être importé dans OCI DNS. Le code en gras doit être ajouté au début du fichier de zone avant l'import.
$ORIGIN example.com.
example.com. 3600 IN SOA ns41.domaincontrol.com. dns.net. (
2018122702
28800
7200
604800
3600
)
; A Records
@ 600 IN A 192.0.2.249
blog 10800 IN A 192.0.2.255
dev 1800 IN A 192.0.2.254
dev01 1800 IN A 192.0.2.253
dev02 1800 IN A 192.0.2.252
dev03 1800 IN A 192.0.2.251
dev04 1800 IN A 192.0.2.250abc123b432dc7785b7ef31f04f25c3e71 1800 IN CNAME verify.bing.com.
; CNAME Records
akamai 600 IN CNAME www.example.edgekey.net.
email 3600 IN CNAME email.secureserver.net.
; MX Records
@ 604800 IN MX 10 amlxe.l.google.com.
@ 604800 IN MX 10 aplxe.l.google.com.
; TXT Records
@ 3600 IN TXT "google-site-verification=3J82-80dbMyCo5Q5C1GM8os1VYVEOnZPGCSYlHcPcXg"
@ 3600 IN TXT "google-site-verification=eS_QPYLE_W4nduSrlN-cddxG7ZqOnB7k7uIG7qrsyu8"