Windows DNS-Weiterleitungen und DNS-Bedingte Weiterleitungen sind ein wichtiger Teil Ihrer DNS-Infrastruktur. In diesem Tutorial werden wir AD DNS-Weiterleitungen behandeln und zeigen, wie Sie sie in Ihrer Umgebung verwalten können.
Sie werden feststellen, dass Sie gelegentlich diese Weiterleitungsadressen hinzufügen oder verwalten müssen. Einige dieser Änderungen müssen auf mehreren DNS-Servern in Ihrem Unternehmen vorgenommen werden. Glücklicherweise ermöglichen Ihnen Befehle wie das PowerShell-Cmdlet Set-DnsServerForwarder
und andere, beide DNS-Dienste problemlos zu verwalten.
Dieser Blog-Beitrag hat ein begleitendes Video, erstellt von TechSnips-Mitarbeiter David Lamb. Schauen Sie es sich gerne an oder lesen Sie weiter, wenn Sie den Text bevorzugen!
Ersetzen von DNS-Weiterleitungen
DNS-Weiterleitungen werden von einem DNS-Server verwendet, um Anfragen nach Adressen zu suchen, die in keiner Zone enthalten sind, für die der Server zuständig ist. Dies ermöglicht Ihren DNS-Servern eine effiziente Möglichkeit zur Auflösung von Namen. Ohne die Weiterleitungen müsste Ihr DNS-Server die Root-Hint-Server abfragen, um unbekannte Adressen aufzulösen.
Obwohl diese Weiterleitungsadressen auf jedem DNS-Server separat konfiguriert sind, erleichtert PowerShell die Verwaltung erheblich, indem es uns das Cmdlet Set-DnsServerForwarder
verwenden lässt.
Beginnen Sie damit, die aktuell konfigurierten Weiterleitungen für den lokalen DNS-Server anzuzeigen. Dies können Sie mit dem Befehl Get-DnsServerForwarder
tun. Wir verwenden zuerst den Befehl Get-*
, um alle vorhandenen Weiterleitungen zu finden.
Wie unten zu sehen ist, sind zwei Weiterleitungen mit den IP-Adressen 8.8.8.8 und 8.8.4.4 konfiguriert.

Fügen Sie nun eine zusätzliche Weiterleitung hinzu. Diese Weiterleitung könnte möglicherweise ein neuer DNS-Server sein, den Sie in Ihrer DMZ konfiguriert haben, oder eine Weiterleitungsadresse, die von Ihrem Internetdienstanbieter bereitgestellt wird. Verwenden Sie in diesem Fall den Befehl Set-DnsServerForwarder
, um die neue Adresse festzulegen, und überprüfen Sie dann mit Get-DnsServerForwarder
, ob die Adresse korrekt festgelegt wurde.

Leider führte dies nicht zum gewünschten Ergebnis. Wie Sie oben sehen können, ersetzt der Befehl Set-DnsServerForwarder
tatsächlich die Liste der Weiterleitungen anstatt sie hinzuzufügen. Um die Adresse zur Liste hinzuzufügen, anstatt die gesamte Liste zu ersetzen, müssen Sie den Befehl Add-DnsServerForwarder
verwenden.
Korrigieren Sie dies, indem Sie die Liste durch die ursprünglichen zwei Weiterleitungen ersetzen, fügen Sie die neue Adresse hinzu und überprüfen Sie, ob Sie erfolgreich waren.

Sie haben nun alle drei Weiterleitungen hinzugefügt.
Entfernen von DNS-Weiterleitungen
Angenommen, Sie möchten eine Weiterleitungsadresse entfernen, würden Sie den Befehl Remove-DnsServerForwarder
verwenden, wie unten gezeigt. Überprüfen Sie dann, ob die Adresse entfernt wurde.
Wenn Set-DnsServerForwarder
die DNS-Weiterleitung ersetzt, entfernt Remove-DnsServerForwarder
sie vollständig.

Skalierung auf mehrere DNS-Server
Manchmal müssen Sie in der Lage sein, eine Weiterleitungsadresse auf mehreren DNS-Servern hinzuzufügen oder zu entfernen. In diesem Fall funktioniert Set-DnsServerForwarder
nicht. Glücklicherweise macht PowerShell das Skalieren dieser Aufgabe auf mehrere DNS-Server relativ einfach. Wenn Sie Invoke-Command
verwenden, geben Sie eine Liste aller unserer DNS-Server an und geben Sie Add-DnsServerForwarder
in den Wert des Scriptblock-Parameters ein. Sie können alle DNS-Server mit einem einzigen Befehl ändern. Verwenden Sie dann einen ähnlichen Befehl, um die Ergebnisse unserer Änderungen anzuzeigen.

DNS-Bedingte Weiterleitungen
A special type of forwarder, called a conditional forwarder, cannot be modified with the Set-DnsServerForwarder
cmdlet. This type of forwarder can be used when you have been provided with the IP address(es) of the DNS server(s) for a known DNS domain name.
DNS-bedingte Weiterleitungen werden vom DNS-Server verwendet, bevor die zuvor in diesem Artikel aufgeführten Server-Weiterleitungen verwendet werden.
Zum Beispiel, wenn Sie eine bedingte Weiterleitung für tailspintoys.com konfiguriert haben, wird Ihr DNS-Server nach Überprüfung feststellen, dass es sich nicht um eine Domäne handelt, für die er zuständig ist. Er überprüft die bedingten Weiterleitungen und findet einen Eintrag. An diesem Punkt fragt Ihr DNS-Server den DNS-Server nach der gewünschten Adresse in der Domäne tailspintoys.com ab.
Eine schöne Funktion von DNS-bedingten Weiterleitungen ist, dass sie auf dieselbe Weise wie jede Active Directory-integrierte DNS-Zone auf andere DNS-Server repliziert werden können.
Beginnen Sie damit, zu überprüfen, ob eine bedingte Weiterleitung konfiguriert ist, indem Sie das Cmdlet Get-DnsServerZone
verwenden.

Bedingte Weiterleitungen werden in dieser Liste mit einem ZoneType von forwarder angezeigt. In diesem Fall haben wir keine konfiguriert. Sie werden also Add-DnsServerConditionalForwarderZone
verwenden, um die bedingte Weiterleitung zu erstellen, sie auf die gesamte Active Directory-Forest-Replikation einstellen und dann bestätigen, dass sie erstellt wurde.

Die Ausgabe zeigt, dass Sie unsere bedingte Weiterleitung konfiguriert haben und bereit ist.
Zusammenfassung
Mit PowerShell können Sie DNS-Weiterleitungen wirklich einfach verwalten. Sie sollten jetzt in der Lage sein, PowerShell zu verwenden, um AD DNS-Weiterleitungen auf viele verschiedene Arten zu verwalten und zu automatisieren. Wir haben diese Weiterleitung von praktisch jedem Blickwinkel betrachtet.
Source:
https://adamtheautomator.com/dns-conditional-forwarder/