DNS-Zonendatei formatieren
Eine DNS-Zonendatei (Domain Name Service) ist eine Textdatei, die eine DNS-Zone beschreibt. Das BIND-Dateiformat ist das branchenweit bevorzugte Zonendateiformat und hat sich mittlerweile in DNS-Serversoftware etabliert.
Das Format wird in RFC 1035 definiert.
Beschränkungen und Überlegungen zu Zonendateien
Servicelimits
Der Oracle Cloud Infrastructure DNS-Service ist auf 1.000 Zonen pro Account und 25.000 Datensätze pro Zone begrenzt. Kunden, die Zonen- und Datensatzgrößen oberhalb dieser Werte benötigen, wird empfohlen, sich unter support.oracle.com an den Support zu wenden.
Beschränkungen für Zonendateien
Zonendateiuploads sind auf eine Größe von 1 MB pro Zonendatei beschränkt.
Um diese Beschränkung zu umgehen, erstellen Sie zunächst mit dem API-Vorgang console oder CreateZone
eine Zone. Verwenden Sie dann den API-Vorgang PatchDomainRecords
, um der Zone Datensätze in Batches von 100 hinzuzufügen.
Beschränkungen für Importe und Exporte
Das Exportieren von Zonendateien, die ALIAS-Datensatztypen enthalten oder Trafficmanagement (TM) verwenden, wird nicht unterstützt. Dies liegt daran, dass Zonendateien als RFC-Standarddatensätze exportiert werden, ALIAS-Datensätze und TM jedoch keine Standarddatensatztypen sind. Mit dem API-Vorgang GetZoneRecords
können Sie ein Backup von benutzerdefinierten Datensätzen abrufen. Verwenden Sie den Parameter limit
, um Batches von jeweils 100 Datensätzen zu erstellen.
Das Importieren und Exportieren für globale Zonen wird sowohl in der Konsole als auch in der API unterstützt, mit Ausnahme von ALIAS- und TM-Datensätzen.
Bei privaten Zonen wird der Import mit dem API-Vorgang CreateZone
unterstützt. Zonenexport wird nicht unterstützt.
Beispiel für eine Zonendatei
Dies ist ein Beispiel für eine von Oracle Cloud Infrastructure DNS heruntergeladene Zone.
$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.
Datensatzklassen
In der vorherigen Beispielzonendatei werden keine Datensatzklassen angezeigt. OCI DNS arbeitet nur mit Internet-(IN-)Klassendateien, lässt aber aus Effizienzgründen die Klasseninformationen IN Zonendateien weg.
Anatomie einer Zonendatei
$ORIGIN
gibt einen DNS-Knotenbaum an und startet normalerweise eine DNS-Zonendatei. Alle Hostlabels, die auf den Ursprung folgen, hängen den Ursprungshostnamen an, um einen vollqualifizierten Hostnamen zu assemblieren. Jedes Hostlabel in einem Datensatz, das einen vollqualifizierten Domainnamen verwendet, der mit einem Punkt endet, fügt den Ursprungshostnamen nicht an.
Beispiel: Bei ORIGIN example.com.
wird an jeden Datensatz, bei dem auf das Hostlabelfeld kein Punkt folgt, example.com
. angehängt.
Das Symbol "@" ist ein spezielles Label, das angibt, dass $ORIGIN
das Symbol "@" ersetzen muss. Dies wird normalerweise für den Apex einer Zone verwendet.
SOA-Datensatz - Auf $ORIGIN
folgt der Start of Authority-(SOA-)Datensatz der Zone. Für jede Zone ist ein SOA-Datensatz erforderlich. Er enthält den Namen der Zone, die E-Mail-Adresse der für die Verwaltung der Zonendatei der Domain verantwortlichen Partei, die aktuelle Seriennummer der Zone, den primären Name Server der Zone und verschiedene Timingelemente (in Sekunden gemessen).
SOA-Datensatzformat
@ IN SOA {primary-name-server} {hostmaster-email} (
{serial-number}
{time-to-refresh}
{time-to-retry}
{time-to-expire}
{minimum-TTL-for-negative-cache} )
- Primärer Name Server - Der Name Server, der die ursprüngliche Zonendatei und keine mit AXFR übertragene Kopie enthält.
- Hostmaster-E-Mail - Adresse der Partei, die für die Zone verantwortlich ist. Ein Punkt (".") wird anstelle eines "@"-Symbols verwendet. Bei E-Mail-Adressen, die Punkte enthalten, ersetzen Sie die Punkte durch einen Bindestrich ("/").
- Seriennummer - Versionsnummer der Zone. Die Seriennummer erhöht sich mit jedem folgenden Update der Zone.
- Zeit bis zur Aktualisierung - Gibt an, wie lange ein Name Server wartet, bevor geprüft wird, ob eine Seriennummer innerhalb der primären Zonendatei erhöht wird (in Sekunden). Eine höhere Seriennummer, die von einem sekundären DNS-Nameerver ermittelt wird, bedeutet, dass zur Synchronisierung der Datensätze eine Übertragung erforderlich ist. Gilt nur für Zonen, die Secondary DNS verwenden.
- Wiederholungszeit – Gibt an, wie lange ein Name Server wartet, bevor erneut versucht wird, eine Zone nach einem nicht erfolgreichen Versuch zu aktualisieren (in Sekunden). Gilt nur für Zonen, die Secondary DNS verwenden.
- Zeit bis zum Ablauf - Gibt an, wie lange ein Name Server wartet, bevor Daten von einer sekundären Zone als ungültig betrachtet und Abfragen für diese Zone nicht beantwortet werden (Sekunden). Gilt nur für Zonen, die Secondary DNS verwenden.
- Minimale TTL - Minimale Gültigkeitsdauer (TTL). Gibt an, wie lange ein Name Server oder Resolver eine negative Antwort cacht (in Sekunden).
Anatomie eines Datensatzes innerhalb einer Zonendatei
Eine Zonendatei ist eine Sammlung von Resource Records. Jeder Datensatzeintrag wird in der folgenden Sequenz beschrieben:
Format: | Hostlabel | TTL | Datensatzklasse | Datensatztyp | Datensatzdaten |
---|---|---|---|---|---|
Beispiel: | example.com. | 60 | IN | A | 104.255.228.125 |
- Hostlabel - Mit einem Hostlabel kann der Hostname eines Datensatzes definiert werden. Außerdem kann angegeben werden, ob der
$ORIGIN
-Hostname an das Label angehängt wird. Vollqualifizierte Hostnamen, die mit einem Punkt enden, hängen den Ursprung nicht an. - TTL - Die Gültigkeitsdauer (TTL) entspricht der Zeit, während der ein DNS-Datensatz von einem externen DNS-Server oder -Resolver zwischengespeichert wird (in Sekunden).
- Datensatzklasse - Es sind drei Klassen von DNS-Datensätzen vorhanden: IN (Internet), CH (Chaosnet) und HS (Hesiod). Oracle Cloud Infrastructure DNS verwendet nur die IN-Datensatzklasse.
- Datensatztyp - Der Typ eines Datensatzes, z.B. CNAME, AAAA oder TXT.
- Datensatzdaten - Die Daten innerhalb einer DNS-Antwort, wie eine IP-Adresse, ein Hostname oder andere Informationen. Verschiedene Datensatztypen enthalten verschiedene Typen von Datensatzdaten.
Aus GoDaddy exportierte Zonendateien für den Import ändern
GoDaddy.com exportiert Zonendateien in ein proprietäres Format. Damit der OCI-DNS-Service eine aus GoDaddy exportierte Zonendatei korrekt importieren kann, müssen Sie die Datei direkt ändern. Folgen Sie diesen Anweisungen, um die Zonendatei zu aktualisieren.
- Exportieren Sie die Zonendatei aus GoDaddy. Lesen Sie die Dokumentation von GoDaddy, um zu sehen, wie dies geschieht.
- Öffnen Sie die Datei in einem beliebigen bevorzugten Texteditor.
- Stellen Sie der Datei vor dem SOA-Datensatz eine neue Zeile mit den folgenden Informationen voran, einschließlich des nachgestellten Punktes:
$ORIGIN [yourdomain].
- Nachdem die Datei geändert wurde, speichern Sie die Änderungen an der Datei, und verwenden Sie die Zonenimportfunktion, um die Datei in die DNS-Konfiguration zu importieren. Weitere Informationen zum Zonenimport finden Sie unter DNS-Zonen verwalten.
Wenn die Zonendatei dynamische A-Datensätze enthält, wie
@ 600 IN A GoCentral Published Site
, müssen Sie diese Datensätze mit den korrekten IP-Adressen der Website ändern. Informationen darüber, wie Sie diese Informationen beziehen können, finden Sie unter GoDaddy. Beispiel:@ 600 IN A 192.0.2.255
Beispiel:
Dies ist ein Beispiel für eine von GoDaddy exportierte Zonendatei. Der fett formatierte Code ist der Code, der aus der Datei entfernt werden muss, damit er in Oracle Cloud Infrastructure DNS importiert werden kann.
Das Setzen eines Semikolons am Anfang einer Zeile ist eine gültige Kommentarsyntax für eine Zonendatei gemäß RFC 1035. Zur einfacheren Verwendung und Formatierung wird jedoch empfohlen, den großen Abschnitt mit Kommentaren am Anfang der von GoDaddy bereitgestellten Zonendatei zu entfernen, wie dargestellt.
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"
Das folgende Beispiel zeigt eine geänderte Zonendatei, die in OCI DNS importiert werden kann. Vor dem Import muss der fett formatierte Code der Zonendatei vorangestellt werden.
$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"