Verwenden von DNS-Richtlinien für Split-Brain-DNS-Bereitstellung

Gilt für: Windows Server 2022, Windows Server 2019, Windows Server 2016

Sie können dieses Thema verwenden, um zu erfahren, wie Sie die DNS-Richtlinie in Windows Server® 2016 für DNS-Split-Brain-Bereitstellungen konfigurieren, bei denen es zwei Versionen einer einzelnen Zone gibt: eine für die internen Benutzer im Intranet Ihrer Organisation und eine für die externen Benutzer, bei denen es sich in der Regel um Benutzer im Internet handelt.

Hinweis

Informationen zur Verwendung der DNS-Richtlinie für die Split-Brain-DNS-Bereitstellung mit integrierten Active Directory-DNS-Zonen finden Sie unter Verwenden der DNS-Richtlinie für Split-Brain-DNS in Active Directory.

Bisher erforderte dieses Szenario, dass DNS-Administratoren zwei verschiedene DNS-Server verwalten, die jeweils Dienste für jede Gruppe von Benutzern bereitstellten, sowohl intern als auch extern. Wenn nur wenige Datensätze innerhalb der Zone aufgeteilt wurden oder beide Instanzen der Zone (intern und extern) an dieselbe übergeordnete Domäne delegiert wurden, wurde dies zu einem Verwaltungsfehler.

Ein weiteres Konfigurationsszenario für die Split-Brain-Bereitstellung ist die selektive Rekursionssteuerung für die DNS-Namensauflösung. Unter bestimmten Umständen wird von den Enterprise-DNS-Servern erwartet, dass sie eine rekursive Auflösung über das Internet für die internen Benutzer ausführen, während sie auch als autoritative Namenserver für externe Benutzer fungieren und die Rekursion für sie blockieren müssen.

Dieses Thema enthält folgende Abschnitte:

Beispiel für die Bereitstellung von DNS-Split-Brain

Im Folgenden finden Sie ein Beispiel dafür, wie Sie die DNS-Richtlinie verwenden können, um das zuvor beschriebene Szenario des Split-Brain-DNS zu erreichen.

In diesem Abschnitt werden die folgenden Themen behandelt:

In diesem Beispiel wird ein fiktives Unternehmen, Contoso, verwendet, das eine Karrierewebsite unter www.career.contoso.com unterhält.

Die Website verfügt über zwei Versionen, eine für die internen Benutzer, in denen interne Stellenausschreibungen verfügbar sind. Diese interne Website ist unter der lokalen IP-Adresse 10.0.0.39 verfügbar.

Die zweite Version ist die öffentliche Version desselben Standorts, die unter der öffentlichen IP-Adresse 65.55.39.10 verfügbar ist.

Wenn keine DNS-Richtlinie vorhanden ist, muss der Administrator diese beiden Zonen auf separaten Windows Server-DNS-Servern hosten und separat verwalten.

Mithilfe von DNS-Richtlinien können diese Zonen jetzt auf demselben DNS-Server gehostet werden.

Die folgende Abbildung zeigt dieses Szenario.

Split-Brain DNS Deployment

Funktionsweise der DNS-Split-Brain-Bereitstellung

Wenn der DNS-Server mit den erforderlichen DNS-Richtlinien konfiguriert ist, wird jede Namensauflösungsanforderung anhand der Richtlinien auf dem DNS-Server ausgewertet.

Die Serverschnittstelle wird in diesem Beispiel als Kriterium verwendet, um zwischen den internen und externen Clients zu unterscheiden.

Wenn die Serverschnittstelle, auf der die Abfrage empfangen wird, mit einer der Richtlinien übereinstimmt, wird der zugeordnete Zonenbereich verwendet, um auf die Abfrage zu reagieren.

In unserem Beispiel erhalten die DNS-Abfragen für www.career.contoso.com, die auf der privaten IP-Adresse (10.0.0.56) empfangen werden, eine DNS-Antwort, die eine interne IP-Adresse enthält. und die DNS-Abfragen, die auf der öffentlichen Netzwerkschnittstelle empfangen werden, erhalten eine DNS-Antwort, die die öffentliche IP-Adresse im Standardzonenbereich enthält (dies entspricht der normalen Abfrageauflösung).

Konfigurieren der DNS-Split-Brain-Bereitstellung

Zum Konfigurieren der DNS-Split-Brain-Bereitstellung mithilfe der DNS-Richtlinie müssen Sie die folgenden Schritte ausführen.

Die folgenden Abschnitte enthalten detaillierte Konfigurationsanweisungen.

Wichtig

Die folgenden Abschnitte enthalten Beispiele für Windows PowerShell-Befehle, die Beispielwerte für viele Parameter enthalten. Achten Sie darauf, dass Sie Beispielwerte in diesen Befehlen durch Werte ersetzen, die für Ihre Bereitstellung geeignet sind, bevor Sie diese Befehle ausführen.

Erstellen der Zonenbereiche

Ein Zonenbereich ist eine eindeutige Instanz der Zone. Eine DNS-Zone kann mehrere Zonenbereiche umfassen, wobei jeder Zonenbereich eigene DNS-Einträge enthält. Ein und derselbe Eintrag kann in mehreren Bereichen mit unterschiedlichen oder denselben IP-Adressen vorhanden sein.

Hinweis

Standardmäßig ist ein Zonenbereich in den DNS-Zonen vorhanden. Dieser Zonenbereich hat denselben Namen wie die Zone, und DNS-Legacyvorgänge funktionieren in diesem Bereich. In diesem Standardzonenbereich wird die externe Version von www.career.contoso.com gehostet.

Sie können den folgenden Beispielbefehl verwenden, um den Zonenbereich contoso.com zu partitionieren, um einen internen Zonenbereich zu erstellen. Der interne Zonenbereich wird verwendet, um die interne Version von www.career.contoso.com beizubehalten.

Add-DnsServerZoneScope -ZoneName "contoso.com" -Name "internal"

Weitere Informationen finden Sie unter Add-DnsServerZoneScope.

Hinzufügen von Einträgen zu den Zonenbereichen

Der nächste Schritt besteht darin, die Datensätze, die den Webserverhost darstellen, den beiden Zonenbereichen intern und Standard (für externe Clients) hinzuzufügen.

Im internen Zonenbereich wird der Datensatz www.career.contoso.com mit der IP-Adresse 10.0.0.39 hinzugefügt, bei der es sich um eine private IP-Adresse handelt, und im Standardzonenbereich wird derselbe Datensatz www.career.contoso.com mit der IP-Adresse 65.55.39.10 hinzugefügt.

In den folgenden Beispielbefehlen wird kein -ZoneScope-Parameter angegeben, wenn der Datensatz dem Standardzonenbereich hinzugefügt wird. Dies ähnelt dem Hinzufügen von Datensätzen zu einer Vanilla-Zone.

Add-DnsServerResourceRecord -ZoneName "contoso.com" -A -Name "www.career" -IPv4Address "65.55.39.10" Add-DnsServerResourceRecord -ZoneName "contoso.com" -A -Name "www.career" -IPv4Address "10.0.0.39” -ZoneScope "internal"

Weitere Informationen finden Sie unter Add-DnsServerResourceRecord.

Erstellen der DNS-Richtlinien

Nachdem Sie die Serverschnittstellen für das externe Netzwerk und das interne Netzwerk identifiziert und die Zonenbereiche erstellt haben, müssen Sie DNS-Richtlinien erstellen, die die internen und externen Zonenbereiche verbinden.

Hinweis

In diesem Beispiel wird die Serverschnittstelle als Kriterium verwendet, um zwischen den internen und externen Clients zu unterscheiden. Eine weitere Methode zur Unterscheidung zwischen externen und internen Clients ist die Verwendung von Clientsubnetzen als Kriterium. Wenn Sie die Subnetze identifizieren können, zu denen die internen Clients gehören, können Sie die DNS-Richtlinie konfigurieren, um basierend auf dem Clientsubnetz zu unterscheiden. Informationen zum Konfigurieren der Datenverkehrsverwaltung mithilfe von Clientsubnetzkriterien finden Sie unter Verwenden der DNS-Richtlinie für Geo-Location-basierte Datenverkehrsverwaltung mit primären Servern.

Wenn der DNS-Server eine Abfrage für die private Schnittstelle empfängt, wird die DNS-Abfrageantwort vom internen Zonenbereich zurückgegeben.

Hinweis

Zum Zuordnen des Standardzonenbereichs sind keine Richtlinien erforderlich.

Im folgenden Beispielbefehl ist 10.0.0.56 die IP-Adresse auf der privaten Netzwerkschnittstelle, wie in der vorherigen Abbildung gezeigt.

Add-DnsServerQueryResolutionPolicy -Name "SplitBrainZonePolicy" -Action ALLOW -ServerInterface "eq,10.0.0.56" -ZoneScope "internal,1" -ZoneName contoso.com

Weitere Informationen finden Sie unter Add-DnsServerQueryResolutionPolicy.

Beispiel für eine selektive DNS-Rekursionssteuerung

Im Folgenden finden Sie ein Beispiel dafür, wie Sie die DNS-Richtlinie verwenden können, um das zuvor beschriebene Szenario der selektiven DNS-Rekursionssteuerung zu erreichen.

In diesem Abschnitt werden die folgenden Themen behandelt:

In diesem Beispiel wird dasselbe fiktive Unternehmen wie im vorherigen Beispiel Contoso verwendet, das eine Karrierewebsite unter www.career.contoso.com verwaltet.

Im Beispiel der DNS-Split-Brain-Bereitstellung reagiert derselbe DNS-Server sowohl auf den externen als auch auf den internen Client und stellt ihnen unterschiedliche Antworten zur Verfügung.

Einige DNS-Bereitstellungen erfordern möglicherweise denselben DNS-Server, um eine rekursive Namensauflösung für interne Clients durchzuführen und nicht als autoritativer Nameserver für externe Clients zu fungieren. Dieser Umstand wird als selektive DNS-Rekursionssteuerung bezeichnet.

In früheren Versionen von Windows Server bedeutete die Aktivierung der Rekursion, dass sie auf dem gesamten DNS-Server für alle Zonen aktiviert war. Da der DNS-Server auch externe Abfragen lauscht, wird die Rekursion sowohl für interne als auch für externe Clients aktiviert, sodass der DNS-Server zu einem offenen Resolver wird.

Ein DNS-Server, der als offener Resolver konfiguriert ist, kann anfällig für Ressourcenerschöpfung sein und von böswilligen Clients missbraucht werden, um Reflektionsangriffe zu erzeugen.

Aus diesem Grund möchten Contoso-DNS-Administratoren nicht, dass der DNS-Server für contoso.com eine rekursive Namensauflösung für externe Clients durchführt. Es ist nur eine Rekursionssteuerung für interne Clients erforderlich, während die Rekursionssteuerung für externe Clients blockiert werden kann.

Die folgende Abbildung zeigt dieses Szenario.

Selective Recursion Control

Funktionsweise der selektiven DNS-Rekursionssteuerung

Wenn eine Abfrage empfangen wird, für die der Contoso-DNS-Server nicht autoritativ ist, z. B. für https://www.microsoft.com, wird die Anforderung zur Namensauflösung anhand der Richtlinien auf dem DNS-Server ausgewertet.

Da diese Abfragen unter keine Zone fallen, werden die Richtlinien auf Zonenebene (wie im Split-Brain-Beispiel definiert) nicht ausgewertet.

Der DNS-Server wertet die Rekursionsrichtlinien aus, und die Abfragen, die auf der privaten Schnittstelle empfangen werden, entsprechen der SplitBrainRecursionPolicy. Diese Richtlinie verweist auf einen Rekursionsbereich, in dem die Rekursion aktiviert ist.

Der DNS-Server führt dann eine Rekursion durch, um die Antwort https://www.microsoft.com aus dem Internet zu erhalten, und speichert die Antwort lokal zwischen.

Wenn die Abfrage auf der externen Schnittstelle empfangen wird, stimmen keine DNS-Richtlinien überein, und die Standardrekursionseinstellung – ist in diesem Fall deaktiviert – wird angewendet.

Dadurch wird verhindert, dass der Server als offener Resolver für externe Clients fungiert, während er als Zwischenspeicherlöser für interne Clients fungiert.

Konfigurieren der selektiven DNS-Rekursionssteuerung

Führen Sie die folgenden Schritte aus, um die selektive DNS-Rekursionssteuerung mithilfe der DNS-Richtlinie zu konfigurieren.

Erstellen von DNS-Rekursionsbereichen

Rekursionsbereiche sind eindeutige Instanzen einer Gruppe von Einstellungen, die die Rekursion auf einem DNS-Server steuern. Ein Rekursionsbereich enthält eine Liste von Weiterleitungen und gibt an, ob Rekursion aktiviert ist. Ein DNS-Server kann viele Rekursionsbereiche aufweisen.

Die Legacy-Rekursionseinstellung und die Liste der Weiterleitungen werden als Standard-Rekursionsbereich bezeichnet. Sie können den Standard-Rekursionsbereich, der durch den Namenspunkt (".") gekennzeichnet ist, nicht hinzufügen oder entfernen.

In diesem Beispiel ist die Standard-Rekursionseinstellung deaktiviert, während ein neuer Rekursionsbereich für interne Clients erstellt wird, in dem die Rekursion aktiviert ist.

Set-DnsServerRecursionScope -Name . -EnableRecursion $False
Add-DnsServerRecursionScope -Name "InternalClients" -EnableRecursion $True

Weitere Informationen finden Sie unter Add-DnsServerResourceRecord

Erstellen von DNS-Rekursionsrichtlinien

Mithilfe von Rekursionsrichtlinien für DNS-Server können Sie einen Rekursionsbereich für bestimmte Abfragen festlegen, die bestimmten Kriterien entsprechen.

Wenn der DNS-Server für bestimmte Abfragen nicht autoritativ ist, können Sie mit den Rekursionsrichtlinien des DNS-Servers steuern, wie diese Abfragen aufgelöst werden.

In diesem Beispiel wird der interne Rekursionsbereich mit aktivierter Rekursion der privaten Netzwerkschnittstelle zugeordnet.

Sie können den folgenden Beispielbefehl verwenden, um DNS-Rekursionsrichtlinien zu konfigurieren.

Add-DnsServerQueryResolutionPolicy -Name "SplitBrainRecursionPolicy" -Action ALLOW -ApplyOnRecursion -RecursionScope "InternalClients" -ServerInterfaceIP "EQ,10.0.0.39"

Weitere Informationen finden Sie unter Add-DnsServerQueryResolutionPolicy.

Jetzt wird der DNS-Server mit den erforderlichen DNS-Richtlinien für einen Split-Brain-Namenserver oder einen DNS-Server mit aktivierter selektiver Rekursionssteuerung für interne Clients konfiguriert.

Sie können Tausende von DNS-Richtlinien für Ihre Anforderungen an die Datenverkehrsverwaltung erstellen. Alle neuen Richtlinien werden bei eingehenden Abfragen dynamisch angewendet – ohne dass der DNS-Server neu gestartet werden muss.

Weitere Informationen finden Sie im Leitfaden zum DNS-Richtlinienszenario.