DNS im virtuellen Cloud-Netzwerk

Mit dem Domain Name System (DNS) können Rechner Hostnamen anstelle von IP-Adressen verwenden, um miteinander zu kommunizieren. Dieses Feature ist auf Traffic innerhalb eines virtuellen Cloud-Netzwerks (VCN) zur Verwendung von DNS mit Internettraffic beschränkt. Informationen hierzu finden Sie unter DNS und Trafficmanagement

Optionen für DNS im VCN

Im Folgenden werden die Optionen zur Auflösung von DNS-Namen für die Instanzen im VCN aufgeführt. Sie treffen diese Auswahl für jedes Subnetz im VCN, indem Sie das Set von DHCP-Optionen des Subnetzes verwenden. Dieser Prozess ist ähnlich wie bei der Konfiguration der Routentabelle und Sicherheitslisten, die mit jedem Subnetz verknüpft sind. Weitere Informationen finden Sie unter DHCP-Optionen.

Hinweis

Mit der DHCP-Option für den Domain Name Server geben Sie den DNS-Typ für das verknüpfte Subnetz an. Wenn Sie den Wert der Option ändern, starten Sie entweder den DHCP-Client auf der Instanz neu oder starten die Instanz neu. Andernfalls wird die Änderung erst wirksam, wenn der DHCP-Client die Lease aktualisiert (innerhalb von 24 Stunden).

STANDARDAUSWAHL: INTERNET- UND VCN-RESOLVER
Dies ist eine von Oracle bereitgestellte Option, die aus zwei Teilen besteht:
  • Internet-Resolver: Hier können Instanzen Hostnamen auflösen, die öffentlich im Internet veröffentlicht sind. Die Instanzen benötigen keinen Internetzugriff über ein Internetgateway  oder eine Verbindung zu Ihrem On-Premise-Netzwerk (wie eine Site-to-Site-VPN-IPsec-Verbindung über ein DRG ).
  • VCN-Resolver: Ermöglicht Instanzen das Auflösen von (von Ihnen zuweisbaren) Hostnamen anderer Instanzen in demselben VCN. Weitere Informationen finden Sie unter Infos zu DNS-Domains und -Hostnamen.
Standardmäßig verwenden neue VCNs, die Sie erstellen, den Internet- und VCN-Resolver. Wenn Sie die Netzwerk-API verwenden, bezieht sich diese Auswahl auf die VcnLocalPlusInternet-Aufzählung im DhcpDnsOption-Objekt.
Hinweis

Im Internet- und VCN-Resolver können Instanzen standardmäßig keine Namen von Hosts in Ihrem On-Premise-Netzwerk auflösen, das über Site-to-Site-VPN oder FastConnect mit Ihrem VCN verbunden ist. Diese Funktionalität kann entweder mit einem benutzerdefinierten Resolver oder durch Konfigurieren des privaten DNS-Resolvers des VCN erreicht werden.

BENUTZERDEFINIERTER RESOLVER
Verwenden Sie DNS-Server Ihrer Wahl zur Auflösung (maximal drei). Dabei könnte es sich um DNS-Server handeln, die:
  • Über das Internet verfügbar sind. Beispiel: 216.146.35.35 für Dyn's Internet Guide.
  • Sich in Ihrem VCN befinden.
  • sich in Ihrem On-Premise-Netzwerk befinden, das über Site-to-Site-VPN oder FastConnect (über ein DRG ) mit Ihrem VCN verbunden ist.

DNS-Domains und -Hostnamen

Wenn Sie anfänglich ein VCN und Subnetze erstellen, können Sie dafür jeweils DNS-Labels angeben. Subnetz-DNS-Labels können nur festgelegt werden, wenn das VCN selbst mit einem DNS-Label erstellt wird. Die Labels zusammen mit der übergeordneten Domain oraclevcn.com bilden den VCN-Domainnamen und den Subnetzdomainnamen:

  • VCN-Domainname: <VCN-DNS-label>.oraclevcn.com
  • Subnetzdomainname: <subnet-DNS-label>.<VCN-DNS-label>.oraclevcn.com

Wenn Sie dann eine Instanz starten, können Sie einen Hostnamen zuweisen. Er wird der VNIC zugewiesen, die automatisch beim Starten der Instanz erstellt wird (also die primäre VNIC). Zusammen mit dem Domainnamen des Subnetzes bildet der Hostname den vollqualifizierten Domainnamen der Instanz (FQDN):

  • Instanz-FQDN: <hostname>.<subnet-DNS-label>.<VCN-DNS-label>.oraclevcn.com

Beispiel: database1.privatesubnet1.abccorpvcn1.oraclevcn.com.

Der FQDN wird in die private IP-Adresse der Instanz aufgelöst. Außerdem ermöglicht der Internet- und VCN-Resolver das umgekehrte DNS-Lookup, mit dem Sie den Hostnamen bestimmen können, der der privaten IP-Adresse entspricht.

Wenn Sie einer Instanz eine sekundäre VNIC hinzufügen, können Sie einen Hostnamen angeben. Der resultierende FQDN wird in die private IP-Adresse der VNIC aufgelöst (also der primären privaten IP).

Wenn Sie einer VNIC eine sekundäre private IP hinzufügen, können Sie einen Hostnamen angeben. Der resultierende FQDN wird in diese private IP-Adresse aufgelöst.

Wichtig

Oracle empfiehlt, dass Sie immer den Instanz-FQDN verwenden, wenn Sie Nachrichten an einen Host senden, oder alternativ nur den Hostnamen für Nachrichten angeben, die innerhalb eines VCN gesendet werden.

Anforderungen an DNS-Labels und -Hostnamen

  • VCN- und Subnetzlabels: Maximal 15 alphanumerische Zeichen und müssen mit einem Buchstaben beginnen. Beachten Sie, dass Bindestriche und Unterstriche NICHT zulässig sind. Der Wert kann später nicht geändert werden.
  • Hostnamen: maximal 63 Zeichen, Buchstaben und Zahlen sind zulässig. Bindestriche sind zulässig. Beachten Sie, dass der Hostname keine Punkte enthalten, nicht mit einem Bindestrich beginnen oder enden und nicht nur aus Zahlen bestehen darf. Hostnamen müssen mit RFCs 952 und 1123 konform sein. Der Wert kann später geändert werden.
Wichtig

Der Networking-Service lässt Hostnamen mit bis zu 63 Zeichen zu. Einige ältere Betriebssysteme setzen jedoch kürzere Hostnamen durch. In Linux kann die maximal zulässige Länge für Hostnamen folgendermaßen bestimmt werden:

getconf HOST_NAME_MAX

Wenn eine Instanz einen Hostnamen hat, der länger als die BS-spezifische Maximallänge ist, kann der FQDN der Instanz nicht innerhalb des VCN aufgelöst werden. Mit dem Service Networking können Sie die VNIC aktualisieren und den Hostnamen in einen kürzeren Wert ändern.

Eindeutigkeit:

  • VCN-DNS-Label muss in Ihren VCNs eindeutig sein (nicht erforderlich, aber Best Practice)
  • Subnetz-DNS-Labels müssen innerhalb des VCN eindeutig sein
  • Hostnamen müssen innerhalb des Subnetzes eindeutig sein
Tipp

Verwechseln Sie das DNS-Label oder den Hostnamen nicht mit dem benutzerfreundlichen Namen, den Sie dem Objekt zuweisen können (also dem Anzeigenamen), der nicht eindeutig sein muss.

Validierung und Generierung des Hostnamens

Wenn Sie DNS-Labels für das VCN und die Subnetze festgelegt haben, validiert Oracle den Hostnamen auf DNS-Compliance und Eindeutigkeit beim Starten der Instanz. Wenn eine dieser Anforderungen nicht erfüllt wird, verläuft die Startanforderung nicht erfolgreich.

Wenn Sie beim Starten der Instanz keinen Hostnamen angeben, versucht Oracle, den Anzeigenamen der Instanz als Hostnamen zu verwenden. Wenn die Validierung des Anzeigenamens nicht erfolgreich verläuft, generiert Oracle automatisch einen DNS-konformen Hostnamen, der im Subnetz eindeutig ist. Sie können den generierten Hostnamen auf der Seite der Instanz in der Konsole anzeigen. In der API ist der Hostname Teil des VNIC-Objekts.

Wenn Sie beim Starten der Instanz mit dem SDK oder der CLI keinen Hostnamen oder Anzeigenamen angeben, generiert Oracle keinen Anzeigenamen oder Hostnamen. Das heißt, dass die Instanz nicht mit dem Internet- und VCN-Resolver aufgelöst werden kann.

Wenn Sie beim Starten der Instanz mit der Konsole keinen Hostnamen oder Anzeigenamen angeben, generiert Oracle automatisch einen Anzeigenamen und einen entsprechenden DNS-Datensatz, sofern ein gültiges DNS-Label mit dem Subnetz verknüpft ist.

Hinweis

Der Linux-Betriebssystemhostname auf der Instanz wird automatisch auf den Hostnamen gesetzt, den Sie beim Starten der Instanz festgelegt haben (oder den von Oracle generierten Hostnamen). Wenn Sie den Hostnamen direkt in der Instanz ändern, wird der FQDN der Instanz nicht aktualisiert.

Wenn Sie eine sekundäre VNIC zu einer Instanz hinzufügen oder einer VNIC eine sekundäre private IP hinzufügen, versucht Oracle nie, einen Hostnamen zu generieren. Geben Sie einen gültigen Hostnamen an, wenn die private IP-Adresse mit dem Internet- und VCN-Resolver aufgelöst werden soll.

DHCP-Optionen für DNS

Zwei DHCP-Optionen beziehen sich auf das DNS in Ihrem VCN:

  • Domain Name Server: Zur Angabe Ihrer Wahl für den DNS-Typ (Internet- und VCN-Resolver oder Benutzerdefinierter Resolver).

    • Standardwert in dem Standardset von DHCP-Optionen: Internet- und VCN-Resolver
  • Suchdomain: Zur Angabe einer einzelnen Suchdomain. Bei der Auflösung einer DNS-Abfrage hängt das Betriebssystem diese Suchdomain an den abgefragten Wert an. Sie können nur eine Suchdomain für das Set von DHCP-Optionen angeben.

    • Standardwert im Standardset von DHCP-Optionen: Der VCN-Domainname (<VCN-DNS-label>.oraclevcn.com), wenn Sie während der Erstellung ein DNS-Label für das VCN, aber keinen Suchdomainwert angegeben haben. Wenn Sie einen Suchdomainwert angegeben haben, wird dieser Wert für die Suchdomainoption verwendet. Wenn Sie kein DNS-Label angegeben haben, enthält das Standardset von DHCP-Optionen keine Suchdomainoption.
Achtung

Oracle empfiehlt, dass Sie immer den Instanz-FQDN verwenden, wenn Sie Nachrichten an einen Host in einem anderen Subnetz/VCN senden, und sich nicht auf die DNS-Suchdomain verlassen.

Wichtig

Im Allgemeinen fügt der Networking-Service beim ersten Erstellen von jedem Set von DHCP-Optionen (Standardoptionen oder von Ihnen erstellte benutzerdefinierte Optionen) automatisch die Suchdomainoption hinzu und setzt sie auf den VCN-Domainnamen ( <VCN-DNS-label>.oraclevcn.com), wenn alle Bedingungen zutreffen:

  • VCN verfügt über ein DNS-Label
  • DNS-Typ = Internet- und VCN-Resolver
  • Sie haben beim Erstellen des Sets von DHCP-Optionen KEINE Suchdomain Ihrer Wahl angegeben

Nach dem Erstellen des Sets von DHCP-Optionen können Sie die Suchdomainoption jederzeit entfernen oder auf einen anderen Wert setzen.

DNS-Hostnamen in einem VCN aktivieren

Nur neue VCNs, die nach dem Release der Internet- und VCN-Resolver-Funktion erstellt wurden, haben automatischen Zugriff darauf. Wie Sie DNS-Hostnamen für ein neues VCN aktivieren, hängt davon ab, welche Schnittstelle Sie verwenden.

Wenn Sie ein VCN und Subnetze mit der Konsole erstellen
  1. Beim Erstellen des VCN:
    • Wählen Sie DNS-Hostnamen in diesem VCN verwenden aus.
    • Geben Sie ein DNS-Label Ihrer Wahl für das VCN an. Wenn Sie diese Option auswählen, aber kein DNS-Label angeben, nimmt die Konsole an, dass Sie den Internet- und VCN-Resolver im VCN verwenden, und generiert automatisch ein DNS-Label für das VCN. Die Konsole verwendet den von Ihnen angegebenen VCN-Namen, entfernt nicht-alphanumerische Zeichen, stellt sicher, dass das erste Zeichen ein Buchstabe ist, und kürzt das Label auf 15 Zeichen. Die Konsole zeigt das Ergebnis an, und falls es Ihnen nicht gefällt, können Sie stattdessen Ihren eigenen Wert in das Feld DNS-Label eingeben. Siehe Infos zu DNS-Domains und -Hostnamen.
  2. Beim Erstellen der Subnetze:
    • Wählen Sie erneut DNS-Hostnamen in diesem Subnetz verwenden aus
    • Geben Sie ein DNS-Label Ihrer Wahl für jedes Subnetz an. Wenn Sie das Kontrollkästchen aktivieren, jedoch kein DNS-Label für ein bestimmtes Subnetz angeben, geht die Konsole davon aus, dass Sie den Internet- und VCN-Resolver im VCN verwenden, und generiert automatisch ein DNS-Label für das Subnetz. Die Konsole verwendet den von Ihnen angegebenen Subnetznamen, entfernt nicht-alphanumerische Zeichen, stellt sicher, dass das erste Zeichen ein Buchstabe ist, und kürzt das Label auf 15 Zeichen. Die Konsole zeigt das Ergebnis an, und falls es Ihnen nicht gefällt, können Sie stattdessen Ihren eigenen Wert in das Feld DNS-Label eingeben. Siehe Infos zu DNS-Domains und -Hostnamen.
      Hinweis

      Subnetz-DNS-Subnetz-Labels können nur festgelegt werden, wenn das VCN selbst mit einem DNS-Label erstellt wird.
    • Verknüpfen Sie alle Sets von DHCP-Optionen mit dem DNS-Typ "Internet-Resolver" und "VCN-Resolver". Das Standardset von DHCP-Optionen im VCN verwendet standardmäßig den Internet- und VCN-Resolver.
  3. Beim Starten von Instanzen:
    • Wählen Sie die Option zum Zuweisen eines privaten DNS-Datensatzes aus.
    • Geben Sie einen Hostnamen (oder zumindest einen Anzeigenamen) für jede Instanz an. Weitere Informationen finden Sie unter Infos zu DNS-Domains und -Hostnamen.

Wenn Sie beim Erstellen des VCN nicht die Option DNS-Hostnamen in diesem VCN verwenden auswählen, können Sie das DNS-Label für das VCN oder die Subnetze nicht festlegen und während des Instanzstarts keinen Hostnamen angeben.

Hinweis

Im vorherigen Verfahren wird davon ausgegangen, dass Sie das VCN und die Subnetze einzeln in der Konsole erstellen. Die Konsole verfügt über ein Feature, mit dem ein VCN mit Subnetzen und ein Internetgateway gleichzeitig erstellt werden. Wenn Sie diese Funktion zum Erstellen von VCN und Subnetzen verwenden, generiert die Konsole automatisch DNS-Labels dafür.

Wenn Sie ein VCN und Subnetze mit der API erstellen
  1. Beim Erstellen des VCN:

    • Geben Sie ein DNS-Label für das VCN an. Siehe Infos zu DNS-Domains und -Hostnamen. Wenn Sie keinen Wert festlegen (NULL), geht Oracle davon aus, dass Sie den Internet- und VCN-Resolver nicht verwenden möchten, selbst wenn die DHCP-Optionen DhcpDnsOption serverType = VcnLocalPlusInternet enthalten.
  2. Beim Erstellen der Subnetze:

    • Geben Sie ein DNS-Label für jedes Subnetz an. Siehe Infos zu DNS-Domains und -Hostnamen. Wenn Sie ein DNS-Label für das VCN angegeben haben, jedoch kein DNS-Label für das Subnetz angeben, geht Oracle davon aus, dass der Internet- und VCN-Resolver nicht von den Instanzen im Subnetz verwendet werden sollen, und die Möglichkeit, Hostnamen zur Kommunikation mit Instanzen im VCN zu verwenden, ist nicht mehr verfügbar.
      Hinweis

      Subnetz-DNS-Subnetz-Labels können nur festgelegt werden, wenn das VCN selbst mit einem DNS-Label erstellt wurde.
    • Verknüpfen Sie alle Sets von DHCP-Optionen, die DhcpDnsOptionserverType = VcnLocalPlusInternet enthalten. Dies ist die Standard-DHCP-Option im VCN.
  3. Beim Starten von Instanzen:

    • Wählen Sie die Option zum Zuweisen eines privaten DNS-Datensatzes aus.
    • Geben Sie einen Hostnamen (oder zumindest einen Anzeigenamen) für jede Instanz an. Weitere Informationen finden Sie unter Infos zu DNS-Domains und -Hostnamen.

Wenn Sie beim Erstellen des VCN kein DNS-Label angeben, ist Folgendes nicht möglich:

  • DNS-Label für die Subnetze festlegen (wodurch der Aufruf CreateSubnet nicht erfolgreich verläuft)
  • Beim Instanzstart einen Hostnamen angeben (wodurch der Aufruf LaunchInstance nicht erfolgreich verläuft)
  • Einer sekundären VNIC oder einer sekundären privaten IP einen Hostnamen zuweisen

Szenario 1: Internet- und VCN-Resolver mit DNS-Hostnamen im ganzen VCN verwenden

Bei einem typischen Szenario wird der Internet- und VCN-Resolver für das gesamte VCN aktiviert. Dadurch können alle Instanzen im VCN miteinander kommunizieren, ohne ihre IP-Adressen zu kennen. Befolgen Sie dazu die Anweisungen unter Infos zu DNS-Domains und -Hostnamen, und weisen Sie dem VCN und jedem Subnetz ein DNS-Label zu. Weisen Sie anschließend jeder Instanz beim Start einen Hostnamen (oder wenigstens einen Anzeigenamen) zu. Wenn Sie eine sekundäre VNIC oder eine sekundäre private IP hinzufügen, weisen Sie ihr auch einen Hostnamen zu. Die Instanzen können dann mit FQDNs anstatt mit IP-Adressen miteinander kommunizieren.

Szenario 2: Privaten DNS-Resolver zum Auflösen von DNS-Hostnamen verwenden

Mit einem privaten DNS-Resolver können Sie DNS-Abfragen für ein VCN mit einer von Ihnen erstellten Konfiguration beantworten. Der Resolver horcht standardmäßig auf 169.254.169.254. Sie können jedoch auch Endpunkte definieren, um auf Abfragen zu horchen und diese an andere Resolver in anderen VCNs, das On-Premise-Netzwerk eines Kunden oder ein anderes privates Netzwerk weiterzuleiten. Weitere Informationen finden Sie unter Private DNS-Resolver.

Szenario 3: Unterschiedliche DHCP-Optionen pro Subnetz verwenden

Bei Szenario 1 wird davon ausgegangen, dass Sie den Internet- und VCN-Resolver auf dieselbe Weise in allen Subnetzen und somit auf allen Instanzen im VCN verwenden möchten. Sie können jedoch unterschiedliche DNS-Einstellungen für jedes Subnetz konfigurieren, da die DHCP-Optionen auf Subnetzebene konfiguriert werden. Zu beachten ist nur, dass in dem Subnetz, in dem Sie die DNS-Abfrage generieren möchten, die entsprechenden Internet- und VCN-Resolver-Einstellungen konfiguriert werden müssen.

Wenn beispielsweise Instanz A in Subnetz A den Hostnamen von Instanz B in Subnetz B auflösen soll, müssen Sie Subnetz A für die Verwendung des Internet- und VCN-Resolvers konfigurieren. Wenn Sie umgekehrt möchten, dass der Hostname von Instanz A durch Instanz B aufgelöst wird, müssen Sie Subnetz B für die Verwendung des Internet- und VCN-Resolvers konfigurieren.

Sie können für jedes Subnetz andere Sets von DHCP-Optionen konfigurieren. Beispiel: Sie können die Suchdomain von Subnetz A auf subneta.vcn1.oraclevcn.com festlegen. Das bedeutet, dass alle Instanzen in Subnetz A nur mithilfe von Hostnamen miteinander kommunizieren können. Ebenso können Sie die Suchdomain von Subnetz B auf subnetb.vcn1.oraclevcn.com festlegen, damit auch die Instanzen von Subnetz B nur mit Hostnamen miteinander kommunizieren können.