IBM Cloud Docs
DNS-Datensätze verwalten

DNS-Datensätze verwalten

DNS-Datensätze stellen die Verbindung zwischen lesbaren Namen und IP-Adressen her. In den folgenden Abschnitten behandeln wir die Verwaltung von DNS-Datensätzen. Verwalten Sie DNS-Einträge über die Benutzeroberfläche, CLI oder API.

Hinzufügen von DNS-Einträgen in der Konsole

  1. Klicken Sie in der DNS-Zonentabelle auf den Zonennamen, dem ein oder mehrere Datensätze hinzugefügt werden sollen. Weitere Details zu der ausgewählten Zone werden angezeigt.
  2. Klicken Sie auf Datensatz hinzufügen, um eine Anzeige aufzurufen, in der Sie einen Datensatz erstellen können.

Sie können das Menü Typ verwenden, um den Typ des Datensatzes auszuwählen, den Sie erstellen möchten. Jedem DNS-Datensatztyp sind ein Name und eine Lebensdauer (Time-To-Live - TTL) zugeordnet.

Wenn Sie im Feld 'Name' einen Namen eingeben, wird automatisch ein Domänenname angehängt, falls Sie nicht manuell einen hinzugefügt haben. Wenn Sie beispielsweise www oder www.example.com im Feld 'Name' eingeben, verarbeitet die API beide Einträge als www.example.com. Wenn Sie den genauen Domänennamen in das Namensfeld eingeben, wird er nicht an sich selbst angehängt (zum Beispiel wird example.com als example.com verarbeitet). Die Liste der DNS-Datensätze zeigt jedoch nur die Namen ohne den hinzugefügten Domänennamen an. Deshalb werden www.example.com als www und example.com als example.com angezeigt.

Der minimale unterstützte TTL-Wert ist 1 min und der maximale Wert ist 12 hours. Der Standardwert für TTL ist 15 min, aber die Benutzer können ihn ändern.

Hinzufügen eines Datensatzes vom Typ A in der Konsole

Um diesen Datensatztyp hinzuzufügen, müssen gültige Werte in den Feldern Name und IPv4-Adresse vorhanden sein. Geben Sie einen Wert für TTL aus dem Listenmenü an, mit einem Standardwert von 15 min.

Erforderliche Felder

  • Name
  • IPv4-Adresse
  • TTL (Standardwert ist 15 min)

Hinzufügen eines Datensatzes vom Typ AAAA in der Konsole

Um diesen Datensatztyp hinzuzufügen, müssen gültige Werte in den Feldern Name und IPv6-Adresse vorhanden sein. Geben Sie einen Wert für TTL aus dem Listenmenü an, mit einem Standardwert von 15 min.

Erforderliche Felder

  • Name
  • IPv6-Adresse
  • TTL (Standardwert ist 15 min)

Fügen Sie in der Konsole einen Eintrag vom Typ CNAME hinzu

Um diesen Datensatztyp hinzuzufügen, muss ein gültiger Wert im Feld Name vorhanden sein, und ein vollständig qualifizierter Domänenname muss im Feld Ziel (FQDN) enthalten sein. Ein Wert für TTL kann auch aus dem Listenmenü angegeben werden, mit dem Standardwert von 15 min.

Erforderliche Felder

  • Name
  • Ziel (für CNAME)
  • TTL (Standardwert ist 15 min)

Hinzufügen eines MX-Typ-Eintrags in der Konsole

Um diesen Datensatztyp hinzuzufügen, müssen ein gültiger Wert im Feld Name, ein vollständig qualifizierter Domänenname im Feld Mail-Server (FQDN) und eine gültige Zahl im Feld Priorität vorhanden sein. Geben Sie einen Wert für TTL aus dem Listenmenü an, mit einem Standardwert von 15 min.

Erforderliche Felder

  • Name
  • E-Mail-Server
  • TTL (Standardwert ist 15 min)
  • Priorität (Standardwert ist 1)

Hinzufügen eines PTR-Datensatzes in der Konsole

Um diesen Datensatztyp hinzuzufügen, müssen Sie über einen bestehenden Datensatz des Typs 'A' oder 'AAAA' verfügen, der noch keinem anderen PTR-Datensatz zugeordnet ist. Wählen Sie einen vorhandenen Datensatz aus dem Listenmenü aus. Geben Sie einen Wert für TTL aus dem Listenmenü an, mit einem Standardwert von 15 min.

Erforderliche Felder

  • Vorhandenen Datensatz auswählen
  • TTL (Standardwert ist 15 min)

Hinzufügen eines SRV-Datensatzes in der Konsole

Um diesen Datensatztyp hinzuzufügen, müssen gültige Werte in den Feldern Name, Servicename und Ziel vorhanden sein. Verwenden Sie das Listenmenü, um ein Protokoll auszuwählen, wobei das UDP-Protokoll der Standardwert ist. Darüber hinaus können Sie Priorität, Gewichtung und Port angeben. Diese drei Felder haben standardmäßig den Wert 1. Geben Sie einen Wert für TTL aus dem Listenmenü an, mit einem Standardwert von 15 min.

Erforderliche Felder

  • Name
  • Servicename
  • Ziel
  • TTL (Standardwert ist 15 min)
  • Protokoll (Standardwert ist UDP)
  • Priorität (Standardwert ist 1)
  • Gewichtung (Standardwert ist 1)
  • Port (Standardwert ist 1)

Hinzufügen eines Datensatzes vom Typ TXT in der Konsole

Um diesen Datensatztyp hinzuzufügen, müssen gültige Werte in den Feldern Name und Inhalt vorhanden sein. Geben Sie einen Wert für TTL aus dem Listenmenü an, mit einem Standardwert von 15 min.

Aus Sicherheits- und Datenschutzgründen wird empfohlen, dass Sie keine Datensätze des Typs 'TXT' für sensible und vertrauliche Daten verwenden.

Erforderliche Felder

  • Name
  • Content
  • TTL (Standardwert ist 15 min)

DNS-Einträge in der Konsole aktualisieren

Klicken Sie in einer Datensatzzeile auf das Symbol Bearbeiten, um eine Anzeige zu öffnen, in der Sie den Datensatz aktualisieren können.

DNS-Einträge in der Konsole löschen

Klicken Sie in einer Datensatzzeile auf das Symbol Löschen, um eine Anzeige zu öffnen, in der Sie den Löschprozess bestätigen können.

Ressourcendatensätze in der Konsole importieren

Führen Sie die folgenden Schritte aus, um Ressourcendatensätze zu importieren:

  1. Wählen Sie in Ihrer DNS Services-Instanz die Zone aus, in die Sie Datensätze importieren möchten

  2. Klicken Sie im Abschnitt mit den Zonendetails auf Datensatzaktion auswählen und wählen Sie Datensätze importieren aus

  3. Sie können die Importdatei in die angezeigte Anzeige ziehen und ablegen oder auf den Link zum Hochladen von Ihrem Computer klicken

    Importdateien müssen im reinen Textformat vorliegen und dürfen 8 MB nicht überschreiten

  4. Klicken Sie auf Datensätze importieren

Ihre Importdatei sollte das folgende Beispielformat aufweisen:

www.test.com.  900 IN  A   127.0.0.1
www.test.com.  900 IN  AAAA    ::1
w3.test.com.   900 IN  CNAME   mydomain.com.
www.test.com.  900 IN  MX  1 mail.example.com.
_service._tcp.www.sample.com.   900 IN  SRV 1 1 1 mydomain.com.
www.test.com.  900 IN  TXT "my content"

Nach dem Import der Datensätze können Sie die Details des Importstatus überprüfen, einschließlich der Anzahl der erfolgreich hochgeladenen Dateien und der Datensätze, die nicht hochgeladen werden konnten. Wenn Sie zusätzliche Dateien hochladen müssen, klicken Sie auf Weitere Dateien hochladen und wiederholen Sie die Importschritte. Klicken Sie auf das Symbol X oben rechts in der Anzeige, um die Importanzeige zu schließen.

Ressourcendatensätze in der Konsole exportieren

Führen Sie die folgenden Schritte aus, um Ressourcendatensätze zu exportieren:

  1. Wählen Sie in Ihrer DNS Services-Instanz die Zone aus, aus der Sie Datensätze exportieren möchten
  2. Klicken Sie im Abschnitt mit den Zonendetails auf Datensatzaktion auswählen und wählen Sie Datensätze exportieren aus
  3. Geben Sie einen Namen für Ihre exportierte Datei ein oder übernehmen Sie den Standardnamen records.txt
  4. Klicken Sie auf Herunterladen

Die exportierte Datei wird an die von Ihrem Browser angegebene Standarddownloadposition heruntergeladen.

Verwalten von DNS-Recordings über die CLI

Verwenden Sie zunächst den Befehl ibmcloud dns instance-target, um die zu verwendende Ziel-DNS Services-Instanz festzulegen.

$ ibmcloud dns instances
Retrieving service instances for service 'dns-svcs' ...
OK

Name                 ID                                     Location   State    Service Name
DNS Services-km      ffffffff-b042-41fd-885e-000000000000   global     active   dns-svcs

$ ibmcloud dns instance-target "DNS Services-km"

Speichern Sie die Zonen-ID in einer Variablen, sodass Sie sie in den folgenden Befehlen verwenden können, ohne sie jedes Mal eingeben zu müssen. Führen Sie zum Beispiel den folgenden Befehl aus, um die Zonen-ID in einer Variablen zu speichern:

DNS_ZONE_ID="example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae"

Erstellen eines Ressourcendatensatzes vom Typ " A über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-create mit der Option --type A, um einen Ressourcensatz des Typs A zu erstellen. --name und --ipv4 sind die obligatorischen Optionen.

$ ibmcloud dns resource-record-create $DNS_ZONE_ID --type A --name www --ipv4 192.168.1.100
Creating resource record in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID            A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6
Name          www.example.com
Type          A
Created On    2020-04-10 09:12:07.858707275 +0000 UTC
Modified On   2020-04-10 09:12:07.858707275 +0000 UTC
TTL           900
Data
    ip        192.168.1.100

Erstellen eines Ressourcendatensatzes vom Typ 'SRV' über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-create mit der Option --type SRV, um einen Ressourcensatz des Typs SRV zu erstellen. --name, --service, --protocol und --target sind die obligatorischen Optionen.

$ ibmcloud dns resource-record-create $DNS_ZONE_ID --type SRV --name video --service _sip --protocol tcp --priority 10 --weight 10 --port 953 --target media.example.com
Creating resource record in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID             SRV:c7c8938b-87c7-4aee-95fa-63f28452c8d4
Name           _sip._tcp.video.example.com
Type           SRV
Created On     2020-04-10 09:15:56.940189115 +0000 UTC
Modified On    2020-04-10 09:15:56.940189115 +0000 UTC
TTL            900
Data
    port       953
    priority   10
    target     media.example.com
    weight     10

Erstellen eines Ressourcendatensatzes vom Typ "TXT" über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-create mit der Option --type TXT, um einen Ressourcensatz des Typs TXT zu erstellen. --name und --text sind obligatorische Optionen.

$ ibmcloud dns resource-record-create $DNS_ZONE_ID --type TXT --name text --text "This is a text record."
Creating resource record in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID            TXT:92648285-c7e5-49ef-bf8b-a5be91d5c5d3
Name          text.example.com
Type          TXT
Created On    2020-04-10 09:16:50.169135062 +0000 UTC
Modified On   2020-04-10 09:16:50.169135062 +0000 UTC
TTL           900
Data
    text      This is a text record.

Erstellen eines Ressourcendatensatzes vom Typ "MX" über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-create mit der Option --type MX, um einen MX-Ressourcendatensatz des Typs zu erstellen. --name und --exchange sind die obligatorischen Optionen.

$ ibmcloud dns resource-record-create $DNS_ZONE_ID --type MX --name mail --preference 10 --exchange exchange.example.com
Creating resource record in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID               MX:900750bf-881d-402f-a482-20447f2e64a2
Name             mail.example.com
Type             MX
Created On       2020-04-10 09:18:08.299278244 +0000 UTC
Modified On      2020-04-10 09:18:08.299278244 +0000 UTC
TTL              900
Data
    preference   10
    exchange     exchange.example.com

Erstellen eines Ressourcendatensatzes vom Typ "PTR" über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-create mit der Option --type PTR, um einen PTR-Ressourcendatensatz des Typs zu erstellen. --name und --ptrdname sind die obligatorischen Optionen.

$ ibmcloud dns resource-record-create $DNS_ZONE_ID --type PTR --name 192.168.1.100 --ptrdname www.example.com
Creating resource record in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID             PTR:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6
Name           192.168.1.100
Type           PTR
Created On     2020-04-10 09:34:49.722454606 +0000 UTC
Modified On    2020-04-10 09:34:49.722454606 +0000 UTC
TTL            900
Data
    ptrdname   www.example.com

Erstellen eines Ressourcendatensatzes vom Typ "CNAME" über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-create mit der Option --type CNAME, um einen CNAME-Ressourcendatensatz des Typs zu erstellen. --name und --cname sind obligatorische Optionen.

$ ibmcloud dns resource-record-create $DNS_ZONE_ID --type CNAME --name web --cname www.example.com
Creating resource record in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID            CNAME:6e80f079-effd-409a-a520-b8c1b10f6e6e
Name          web.example.com
Type          CNAME
Created On    2020-04-10 09:36:13.186040793 +0000 UTC
Modified On   2020-04-10 09:36:13.186040793 +0000 UTC
TTL           900
Data
    cname     www.example.com

Erstellen eines Ressourcendatensatzes vom Typ "AAAA" über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-create mit der Option --type AAAA, um einen AAAA-Ressourcendatensatz des Typs zu erstellen. --name und --ipv6 sind obligatorische Optionen.

$ ibmcloud dns resource-record-create $DNS_ZONE_ID --type AAAA --name www --ipv6 2019::2020
Creating resource record in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID            AAAA:37e1e701-e549-4ca1-8c22-86574bf4aaed
Name          www.example.com
Type          AAAA
Created On    2020-04-10 09:37:15.063814601 +0000 UTC
Modified On   2020-04-10 09:37:15.063814601 +0000 UTC
TTL           900
Data
    ip        2019::2020

Abrufen eines Ressourcendatensatzes über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record, gefolgt von der Zonen-ID und der Ressourcendatensatz-ID, um Details zu einem Ressourcendatensatz abzurufen.

$ ibmcloud dns resource-record $DNS_ZONE_ID A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6
Getting resource record 'A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6' in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID            A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6
Name          www.example.com
Type          A
Created On    2020-04-10 09:12:07.858707275 +0000 UTC
Modified On   2020-04-10 09:34:49.986883927 +0000 UTC
TTL           900
Data
    ip        192.168.1.100

Ressourcendatensätze von der CLI aus auflisten

Verwenden Sie den Befehl ibmcloud dns resource-records, gefolgt von der Zonen-ID, um alle Ressourcendatensätze aufzulisten.

$ ibmcloud dns resource-records $DNS_ZONE_ID
Listing resource records in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK
ID                                           Name                          Type    TTL
AAAA:37e1e701-e549-4ca1-8c22-86574bf4aaed    www.example.com               AAAA    900
CNAME:6e80f079-effd-409a-a520-b8c1b10f6e6e   web.example.com               CNAME   900
MX:900750bf-881d-402f-a482-20447f2e64a2      mail.example.com              MX      900
TXT:92648285-c7e5-49ef-bf8b-a5be91d5c5d3     text.example.com              TXT     900
SRV:c7c8938b-87c7-4aee-95fa-63f28452c8d4     _sip._tcp.video.example.com   SRV     900
A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6       www.example.com               A       900
PTR:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6     192.168.1.100                 PTR     900

Aktualisieren eines Ressourcendatensatzes über die CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-update, gefolgt von der Zonen-ID und der Ressourcendatensatz-ID, um einen Ressourcendatensatz zu aktualisieren.

$ ibmcloud dns resource-record-update $DNS_ZONE_ID A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6 --name www --ipv4 10.10.1.1
Updating resource record 'A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6' in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

ID            A:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6
Name          www.example.com
Type          A
Created On    2020-04-10 09:12:07.858707275 +0000 UTC
Modified On   2020-04-10 09:40:55.204076727 +0000 UTC
TTL           900
Data
    ip        10.10.1.1

Löschen eines Ressourcendatensatzes aus der CLI

Verwenden Sie den Befehl ibmcloud dns resource-record-delete, gefolgt von der Zonen-ID und der Ressourcendatensatz-ID, um einen Ressourcendatensatz zu löschen.

$ ibmcloud dns resource-record-delete $DNS_ZONE_ID PTR:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6
Really delete resource record 'PTR:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6' in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km'? [y/N]> y
Deleting resource record 'PTR:f20cfe91-b936-4bad-a8d1-f7afa4ac32a6' in zone 'example.com:f7f40364-a5e6-48f7-9fc9-387434c579ae' for service instance 'DNS Services-km' ...
OK

Verwalten von DNS-Einträgen mit der API

Speichern Sie zuerst den API-Endpunkt in einer Variablen, damit Sie ihn in API-Anforderungen verwenden können, ohne die vollständige URL eingeben zu müssen. Führen Sie zum Beispiel den folgenden Befehl aus, um den Produktionsendpunkt in einer Variablen zu speichern:

DNSSVCS_ENDPOINT=https://api.dns-svcs.cloud.ibm.com

Um zu verifizieren, dass diese Variable gespeichert wurde, führen Sie den Befehl echo $DNSSVCS_ENDPOINT aus und stellen Sie sicher, dass die Antwort nicht leer ist.

Erstellen eines Ressourcendatensatzes vom Typ " A mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records \
  -H "Authorization: $TOKEN" \
  -d '{
    "name":"www.example.com",
    "type":"A",
    "rdata": {
            "ip":"1.2.6.7"
        },
    "ttl":300
}'

Antwort

{
    "id": "fa57d5d0-7729-4770-af27-6d7f8dce860c",
    "created_on": "2019-08-12 08:03:03.910471016 +0000 UTC",
    "modified_on": "2019-08-12 08:03:03.910471016 +0000 UTC",
    "rtype": "A",
    "ttl": 300,
    "name": "www.example.com",
    "id": "A:fa57d5d0-7729-4770-af27-6d7f8dce860c",
    "rdata": {
        "ip": "1.2.6.7"
    }
}

Erstellen eines Ressourcendatensatzes vom Typ "SRV" mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records \
  -H "Authorization: $TOKEN" \
  -d '{
    "type": "SRV",
    "name": "example.com",
    "service": "srv",
    "protocol": "udp",
    "rdata": {
        "priority": 100,
        "weight": 100,
        "port": 8000,
        "target": "siphost.com"
    }
}'

Antwort

{
    "created_on": "2019-08-16 08:07:41.113606 +0000 UTC",
    "modified_on": "2019-08-16 08:07:41.113606 +0000 UTC",
    "rtype": "SRV",
    "ttl": 60,
    "name": "example.com",
    "id": "SRV:7562b1f9-1a6a-4189-b794-dd84c91d6a28",
    "rdata": {
        "priority": 100,
        "weight": 100,
        "port": 8000,
        "target": "siphost.com"
    },
    "service": "srv",
    "protocol": "udp"
}

Erstellen eines Ressourcendatensatzes vom Typ "TXT" mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records \
  -H "Authorization: $TOKEN" \
  -d '{
    "type": "TXT",
    "name": "txt.example.com",
    "rdata": {
        "txtdata": "txt strings"
    }
}'

Antwort

{
    "created_on": "2019-08-16 08:15:53.360664 +0000 UTC",
    "modified_on": "2019-08-16 08:15:53.360664 +0000 UTC",
    "rtype": "TXT",
    "ttl": 60,
    "name": "txt.example.com",
    "id": "TXT:c6221d5f-69d7-4717-9951-4f69b2680fd4",
    "rdata": {
        "txtdata": "txt strings"
    }
}

Erstellen eines Ressourcendatensatzes vom Typ "MX" mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records \
  -H "Authorization: $TOKEN" \
  -d '{
    "type": "MX",
    "name": "mx1.example.com",
    "rdata": {
        "exchange": "mailserver.example.com",
        "preference": 10
    }
}'

Antwort

{
    "created_on": "2019-08-16 08:21:20.308716 +0000 UTC",
    "modified_on": "2019-08-16 08:21:20.308716 +0000 UTC",
    "rtype": "MX",
    "ttl": 60,
    "name": "mx1.example.com",
    "id": "MX:8e1b201e-00dd-46a0-a3ec-46573f908870",
    "rdata": {
        "preference": 10,
        "exchange": "mailserver.example.com"
    }
}

Erstellen eines Ressourcendatensatzes vom Typ "PTR" mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records \
  -H "Authorization: $TOKEN" \
  -d '{
    "type": "PTR",
    "name": "192.168.10.100",
    "rdata": {
       "ptrdname": "www1.example.com"
    }
}'

Antwort

{
    "created_on": "2019-08-30 06:48:16.971764628 +0000 UTC",
    "modified_on": "2019-08-30 06:48:16.971764628 +0000 UTC",
    "rtype": "PTR",
    "ttl": 60,
    "name": "100.10.168.192.in-addr.arpa",
    "id": "PTR:a47dd63a-e65a-4280-8f53-3cdb433cc78a",
    "rdata": {
        "ptrdname": "www1.example.com"
    }
}

Erstellen Sie einen Ressourcendatensatz vom Typ "CNAME" mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records \
  -H "Authorization: $TOKEN" \
  -d '{
    "type": "CNAME",
    "name": "cname.example.com",
    "rdata": {
       "cname": "clientinterface.com"
    }
}'

Antwort

{
    "created_on": "2019-08-16 08:29:36.710416 +0000 UTC",
    "modified_on": "2019-08-16 08:29:36.710416 +0000 UTC",
    "rtype": "CNAME",
    "ttl": 60,
    "name": "cname.example.com",
    "id": "CNAME:c95916ba-5504-499a-943a-21f5befe92b5",
    "rdata": {
        "cname": "clientinterface.com"
    }
}

Erstellen eines Ressourcendatensatzes vom Typ "AAAA" mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records \
  -H "Authorization: $TOKEN" \
  -d '{
    "type": "AAAA",
    "name": "test.example.com",
    "rdata": {
       "ip": "8000::2000"
    }
}'

Antwort

{
    "created_on": "2019-08-16 08:34:38.311539 +0000 UTC",
    "modified_on": "2019-08-16 08:34:38.311539 +0000 UTC",
    "rtype": "AAAA",
    "ttl": 60,
    "name": "test.example.com",
    "id": "AAAA:894e165b-f066-434d-9b58-4afc2dca62c9",
    "rdata": {
        "ip": "8000::2000"
    }
}

Abrufen eines Ressourcendatensatzes mit der API

Anforderung

curl -X GET \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records/$RECORD_ID \
  -H "Authorization: $TOKEN"

Antwort

{
    "created_on": "2019-08-12 08:03:03.910471016 +0000 UTC",
    "modified_on": "2019-08-12 08:03:32.875065176 +0000 UTC",
    "rtype": "A",
    "ttl": 300,
    "name": "www.example.com",
    "id": "A:fa57d5d0-7729-4770-af27-6d7f8dce860c",
    "rdata": {
        "ip": "9.4.6.7"
    }
}

Ressourcendatensätze mit der API auflisten

Anforderung

curl -X GET \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records?limit=50&offset=0 \
  -H "Authorization: $TOKEN"

Antwort

{
    "offset": 0,
    "limit": 50,
    "total_count": 1,
    "first": {
      "href": "https://api.dns-svcs.cloud.ibm.com/v1/instances/ec0c4ee2-5d1f-4066-bcf2-dc9f3122c638/dnszones/example.com:4759caa4-d4fa-4fb9-7848-f463de19b392/resource_records?limit=50"
    },
    "resource_records": [
        {
            "created_on": "2019-08-30 04:10:25.092468565 +0000 UTC",
            "modified_on": "2019-08-30 04:10:25.092468565 +0000 UTC",
            "rtype": "A",
            "ttl": 60,
            "name": "www.example.com",
            "id": "A:ec0c4ee2-5d1f-4066-bcf2-dc9f3122c639",
            "rdata": {
                "ip": "192.168.10.100"
            }
        }
    ]
}

Aktualisieren eines Ressourcendatensatzes mit der API

Anforderung

curl -X PUT \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records/$RECORD_ID \
  -H "Authorization: $TOKEN" \
  -d '{
    "name":"www",
    "rdata": {
            "ip":"7.7.7.7"
        },
    "ttl":300
}'

Antwort

{
    "created_on":"2019-09-10 20:03:25.249355942 +0000 UTC",
    "modified_on":"2019-09-11 16:13:17.350043736 +0000 UTC",
    "rtype":"A",
    "ttl":300,
    "name":"www",
    "id":"A:139eb9f3-c646-4eb6-92fa-3ddabfb1b84f",
    "rdata":{
        "ip":"7.7.7.7"
    }
}

Löschen eines Ressourcendatensatzes mit der API

Anforderung

curl -X DELETE \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/resource_records/$RECORD_ID \
  -H "Authorization: $TOKEN"

Antwort

HTTP 204 is returned, no content in response.

Massenimport von Ressourceneinträgen aus einer DNS-Zonendatei mit der API

Anforderung

curl -X POST \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/import_resource_records --form "file=@./bind.cfg" \
  -H "Authorization: $TOKEN"

Antwort

{
    "total_records_parsed": 17,
    "records_added": 17,
    "records_failed": 0,
    "records_added_by_type": {
        "A": 10,
        "AAAA": 2,
        "CNAME": 4,
        "SRV": 0,
        "TXT": 0,
        "MX": 0,
        "PTR": 1
    },
    "records_failed_by_type": {
        "A": 0,
        "AAAA": 0,
        "CNAME": 0,
        "SRV": 0,
        "TXT": 0,
        "MX": 0,
        "PTR": 0
    },
    "message": null,
    "errors": null
}

Exportieren Sie große Ressourceneinträge in eine DNS-Zonendatei mit der API

Anforderung

curl -X GET \
  $DNSSVCS_ENDPOINT/v1/instances/$INSTANCE_ID/dnszones/$DNSZONE_ID/export_resource_records -o dns_records.cfg \
  -H "Authorization: $TOKEN"

Antwort

HTTP 200 is returned with zone file content in byte format