Freigeben über


Übersicht über DHCP-Failover

Mit dem DHCP-Failover können zwei Microsoft DHCP-Server Verfügbarkeitsinformationen gemeinsam nutzen, um hohe Verfügbarkeit sicherzustellen, indem IP-Adressleases und Einstellungen zwischen einem primären Server und seinem Failoverpartner repliziert werden.

Alle Informationen zum Geltungsbereich werden zwischen den beiden DHCP-Servern ausgetauscht, einschließlich aktiver Leases. Dadurch kann ein DHCP-Server die Verantwortung für DHCP-Clients übernehmen, wenn der andere Server nicht verfügbar ist.

Dieser Artikel enthält eine Übersicht über dhcp-Failover.

Einführung in DHCP-Failover

Bei DHCP-Failover werden DHCPv4-Bereiche von einem primären DHCP-Server auf einen PARTNER-DHCP-Server repliziert und ermöglichen Redundanz und Lastenausgleich von DHCP-Diensten. DHCP-Server, die einen failoverfähigen DHCP-Bereich gemeinsam nutzen, werden als Failoverpartner bezeichnet. Die Implementierung des DHCP-Failovers von Microsoft basiert auf dem DHCP-Failoverprotokollentwurf (Internet Engineering Task Force, IETF).

Wenn zwei DHCP-Server für die Ausfallsicherung konfiguriert sind, teilen sie sich die Bereichsinformationen, einschließlich aller aktiven Leases. Dadurch können beide DHCP-Server Leases für Lastenausgleichs- oder Redundanzzwecke für dasselbe Subnetz bereitstellen. Bereichseinstellungen werden repliziert, wenn Sie das DHCP-Failover zum ersten Mal konfigurieren, und können später erneut repliziert werden, wenn Konfigurationsänderungen vorgenommen werden.

Die folgende Abbildung zeigt, wie Komponenten und Einstellungen für einen failoverfähigen DHCP-Bereich zwischen zwei DHCP-Servern gemeinsam genutzt werden.

Diagramm des DHCP-Failovers.

Die Bereiche und Einstellungen, die mit DHCP-Servern verwendet werden, die für DHCP-Failover konfiguriert sind, werden durch ein neues Objekt, das als DHCP-Failover-Beziehung bezeichnet wird, geteilt. Mehrere Konfigurationsoptionen sind mit DHCP-Failover verfügbar. Sie können Failover für alle Bereiche konfigurieren, die auf einem DHCP-Server vorhanden sind, oder nur für einige Bereiche. Sie können dieselben DHCP-Failovereinstellungen auch ganz einfach für mehrere Bereiche verwenden, indem Sie sie derselben Failoverbeziehung hinzufügen. Eine Failover-Beziehung besteht immer nur zwischen zwei DHCP-Servern. Ein Server kann jedoch viele Failover-Verbindungen haben, und jede dieser Verbindungen kann mit jeweils einem anderen DHCP-Server bestehen.

Von Bedeutung

Wenn Änderungen an einem Failover-aktivierten Bereich vorgenommen werden, müssen Sie diese Änderungen manuell auf dem Partnerserver replizieren, um Bereiche auf beiden DHCP-Servern zu synchronisieren. Die Replikation kopiert Bereichseinstellungen vom DHCP-Server, auf dem die Replikation auf den Partnerserver initiiert wird, und überschreibt Einstellungen auf dem Partnerserver. Daher ist es wichtig, immer die Replikation vom Server mit DHCP-Bereichseinstellungen zu initiieren, die Sie verwenden möchten.

DHCP-Failoverspezifikationen

Die folgenden Spezifikationen gelten für DHCP-Failover.

DHCP-Bereiche:

  • Sie können die DHCP-Failoverkonfiguration in einem DHCP-Bereich nicht so konfigurieren, dass mehr als zwei DHCP-Server einbezogen werden.

  • DHCP-Failover unterstützt nur DHCPv4-Bereiche. DHCPv6-Bereiche können nicht failoverfähig sein.

  • Wenn Parameter eines failoverfähigen Bereichs geändert werden, müssen diese Einstellungen manuell auf den PARTNER-DHCP-Server repliziert werden.

  • Die Replikation von Bereichseinstellungen kann von einem DHCP-Server zu seinem Failover-Partnerserver initiiert werden.

DHCP-Client/Server:

  • DHCP-Clients müssen mit beiden DHCP-Failoverpartnerservern kommunizieren können, entweder direkt oder mit einem DHCP-Relay.

  • Wenn dhcp-Failover aktiviert ist, kann ein DHCP-Client-Lease von einem anderen Server als dem, der es ursprünglich ausgestellt hat, erneuert werden.

  • Zwei separate, synchronisierte Client-Lease-Datenbanken werden unabhängig von jedem DHCP-Failover-Partnerserver verwaltet.

  • DHCP-Server, die als Failoverpartner konfiguriert sind, können sich in verschiedenen Subnetzen befinden, dies ist jedoch nicht erforderlich.

  • Clustered DHCP wird in Verbindung mit DHCP-Failover unterstützt. Für Failoverzwecke gilt ein DHCP-Cluster als einzelner DHCP-Server.

  • DHCP-Failover kann konfiguriert werden, und Einstellungen können geändert werden, ohne dass der DHCP-Serverdienst angehalten, beendet oder neu gestartet werden muss.

DHCP-Failoverpartner:

  • DHCP-Failoverpartner müssen mindestens Windows Server 2016 ausführen.

  • Zwei DHCP-Server, die als Failoverpartner konfiguriert sind, versuchen, eine dauerhafte TCP/IP-Verbindung aufrechtzuerhalten.

  • DHCP-Server, die als Failoverpartner konfiguriert sind, kennen den Status des DHCP-Diensts auf dem anderen Server und werden über alle Änderungen in diesem Status mit minimaler Verzögerung informiert.

  • Wenn zwei DHCP-Server, die als Failoverpartner konfiguriert sind, nicht kommunizieren können, werden Vorsichtsmaßnahmen getroffen, um zu vermeiden, dass dieselbe IP-Adresslease an zwei verschiedene DHCP-Clients ausgegeben wird.

  • Wenn ein DHCP-Server nicht verfügbar ist, bevor er alle DHCP-Clientinformationen erfolgreich mit seinem Failoverpartner synchronisieren kann, werden Vorsichtsmaßnahmen getroffen, um die DHCP-Leasekontinuität für DHCP-Clients sicherzustellen.

  • Zwei separate, synchronisierte Client-Lease-Datenbanken werden unabhängig von jedem DHCP-Failover-Partnerserver verwaltet.

Von Bedeutung

Wenn Sie Einstellungen zwischen DHCP-Failoverpartnerservern mit unterschiedlichen Betriebssystemversionen replizieren, ändern Sie immer Einstellungen, und initiieren Sie die Replikation vom DHCP-Server mit der neueren Betriebssystemversion. Dadurch wird sichergestellt, dass die Einstellungen von beiden Failover-Partnern erkannt und konsistent repliziert werden.

Sie können die DHCP-Failoverkonfiguration über den Server-Manager oder Windows PowerShell vornehmen. Informationen zur Verwendung von Windows PowerShell finden Sie unter DHCP-Server-Cmdlets in Windows PowerShell. Anweisungen zum Konfigurieren von DHCP im Server-Manager finden Sie in dieser schrittweisen Anleitung.

DHCP-Failover und IPv6

DHCP-Failover wird für IPv6-Bereiche (Internet Protocol Version 6) nicht unterstützt. Netzwerkadapter, die IPv6 verwenden, bestimmen in der Regel ihre eigene IPv6-Adresse mithilfe zustandsloser IP-Autokonfiguration. In diesem Modus liefert der DHCP-Server nur die DHCP-Optionskonfiguration, und der Server verwaltet keine Leasestatusinformationen. Eine Hochverfügbarkeitsbereitstellung für zustandslose DHCPv6 ist möglich, indem zwei Server mit identischer Optionskonfiguration eingerichtet werden. Selbst bei einer zustandsbehafteten DHCPv6-Bereitstellung werden die Bereiche nicht unter hoher Adressauslastung ausgeführt, wodurch geteilte Bereiche eine praktikable Lösung für hohe Verfügbarkeit darstellen.

DHCP-Failovermodi

Beim Erstellen einer DHCP-Failoverbeziehung stehen zwei DHCP-Failovermodi zur Verfügung:

  • Hot Standby-Modus: Dieser Modus bietet Redundanz für DHCP-Dienste.

  • Lastenausgleichsmodus: Dieser Modus weist DHCP-Client-Leases auf zwei Servern zu.

Sie können bei Bedarf zwischen dem Unmittelbar betriebsbereiter Standby- und dem Lastenausgleichsmodus wechseln, jedoch kann mit einem einzelnen DHCP-Bereich jeweils nur ein Modus verwendet werden. Sie können auch beide Modi auf demselben DHCP-Server verwenden, wenn Sie mehrere Failoverbeziehungen konfigurieren. Passen Sie Ihre Bereitstellung basierend auf der physischen Architektur Ihres Netzwerks an.

Unmittelbar betriebsbereiter Standbymodus

Im Hot Standby-Modus arbeiten zwei Server in einer Failoverbeziehung, bei der ein aktiver Server für das Leasing von IP-Adressen und Konfigurationsinformationen an alle Clients in einem Bereich oder Subnetz verantwortlich ist. Der Partnerserver geht von einer Standbyrolle aus, mit der Verantwortung für das Ausstellen von Leases an DHCP-Clients nur dann, wenn der aktive Server nicht verfügbar ist. Der Hot Standby-Modus eignet sich ideal für Szenarien, in denen der Failoverpartner nur vorübergehend verwendet werden soll, wenn der aktive Server nicht verfügbar ist.

Diagramm, das zeigt, wie der Hot Standby-Modus funktioniert.

Ein Server ist im Zusammenhang mit einer Failoverbeziehung entweder aktiv oder in Bereitschaft. Beispielsweise könnte ein Server, der die Rolle "aktiv" für eine bestimmte Beziehung hat, ein Standbyserver für eine andere Beziehung sein. Standardmäßig ist der Server, der zum Erstellen der Failoverbeziehung verwendet wird, der aktive Server, dies ist jedoch nicht erforderlich.

Wenn Sie den Hot Standby-Modus auswählen, müssen Sie auch den Prozentsatz der IP-Adressen auf dem aktiven Server konfigurieren, der für die Verwendung auf dem Standbyserver reserviert ist, wenn der aktive Server nicht reagiert. Standardmäßig beträgt dieser Reserveprozentsatz 5 %.

Der Reserveprozentsatz wird für neue DHCP-Leases verwendet. Wenn ein DHCP-Client versucht, eine DHCP-Lease mit dem Standbyserver zu verlängern, der nicht mit dem aktiven Server in Verbindung treten kann, wird dieselbe IP-Adresse erneuert, die zuvor dem DHCP-Client zugewiesen wurde. In diesem Fall wird eine befristete Lease für die maximale Client-Vorlaufzeit (MCLT) gewährt, nicht für die gesamte Lease-Laufzeit.

Wenn der Standbyserver alle verfügbaren Reserveprozentleases für neue DHCP-Clients ausgibt, bevor das MCLT abläuft, verweigert er die Ausgabe neuer DHCP-Leases und erneuert weiterhin vorhandene Leases. Nach Ablauf des MCLT darf der Standbyserver den gesamten verfügbaren IP-Adresspool für neue DHCP-Leases verwenden. Wenn sich der Server noch in einem unterbrochenen Zustand der Kommunikation befindet, verwendet er nicht den gesamten verfügbaren IP-Adresspool für neue DHCP-Leases.

Im Hot-Standby-Modus fungiert ein zentraler Büro- oder Rechenzentrumsserver in der Regel als Standby-Sicherungsserver. Dieser Server bietet Redundanz für einen lokalen DHCP-Server an einem Remotestandort, der die DHCP-Clients direkt bedient. In solchen Bereitstellungen sollte der Standbyserver nur Clients bereitstellen, wenn der lokale DHCP-Server nicht verfügbar ist.

Lastenausgleichsmodus

Der Lastenausgleichsmodus ist der Standardmodus der Bereitstellung. In diesem Modus stellen zwei DHCP-Server gleichzeitig IP-Adressen und Optionen für Clients in einem bestimmten Subnetz bereit. Die DHCP-Clientanforderungen werden per Lastenausgleich verarbeitet und auf die beiden DHCP-Server verteilt. Das Standardlastenausgleichsverhältnis zwischen den beiden Servern beträgt 50:50, dies kann jedoch auf ein beliebiges Verhältnis zwischen 0% und 100%angepasst werden.

Diagramm, das zeigt, wie der Lastenausgleichsmodus funktioniert.

Der Lastenausgleichsmechanismus wird in RFC 3074 definiert, in dem ein Hash aus der MAC-Adresse berechnet wird, die in jeder DHCP-Clientanforderung enthalten ist. Jedem DHCP-Server wird basierend auf den konfigurierten Lastenausgleichsprozenten ein Bereich von Hashwerten (auch als Hash-Bucket bezeichnet) zugewiesen. Die Server entscheiden, ob sie dafür vorgesehen sind, dem Client basierend auf ihrem zugewiesenen Hash-Bucket zu antworten.

Wenn ein DHCP-Server im Lastenausgleichsmodus den Kontakt mit seinem Failoverpartner verliert, beginnt er mit der Gewährung von Leases für alle DHCP-Clients. Wenn sie eine Leaseverlängerungsanforderung von einem DHCP-Client empfängt, der seinem Failoverpartner zugewiesen ist, verlängert sie vorübergehend dieselbe IP-Adress-Lease für die Dauer des MCLT. Wenn es eine Anforderung von einem Client empfängt, dem zuvor noch keine Lease zugewiesen wurde, gewährt es eine neue Lease aus seinem freien IP-Adresspool, bis dieser erschöpft ist, und verwendet dann den freien IP-Adresspool seines Failover-Partners. Wenn der DHCP-Server in einen Partner-Down-Zustand gerät, wartet er die MCLT-Dauer ab und übernimmt danach die Kontrolle über 100% des IP-Adresspools.

Der Modus für den Lastenausgleich eignet sich am besten für Bereitstellungen, bei denen sich beide Server in einer Failoverbeziehung am gleichen physischen Standort befinden. Beide Server reagieren auf DHCP-Clientanforderungen basierend auf dem vom Administrator konfigurierten Lastenverteilungsverhältnis.

DHCP-Failover und Windows-Failoverclustering

DHCP-Failover wird in den folgenden Konfigurationen mit gruppierter DHCP unterstützt:

  • Ein einzelner DHCP-Server kann eine Failoverbeziehung mit einem DHCP-Failovercluster aufweisen.

  • Ein DHCP-Failovercluster kann eine Failoverbeziehung zu einem anderen DHCP-Failovercluster haben.

In beiden Fällen müssen Sie dhcp-Failover so konfigurieren, dass der Name oder die IP-Adresse des Clusters verwendet wird, nicht der Name oder die IP-Adresse eines Clusterknotens. Wenn ein einzelner Clusterknoten als Failoverpartner konfiguriert ist, wechselt der primäre Server in einen unterbrochenen Kommunikationszustand, wenn der DHCP-Serverdienst zu einem anderen Knoten im Cluster wechselt.

Von Bedeutung

Wenn Sie einen freigegebenen geheimen Schlüssel verwenden, müssen Sie den freigegebenen Schlüssel manuell auf alle Clusterknoten replizieren. Sie können den freigegebenen Schlüssel im aktiven Clusterknoten replizieren, indem Sie das PowerShell-Cmdlet Set-DhcpServerv4Failover verwenden.

DHCP-Failover und dynamische DNS-Updates

Wenn DHCP-Server so konfiguriert sind, dass dynamische DNS-Updates im Auftrag des Clientcomputers ausgeführt werden, müssen beide DHCP-Server in einer DHCP-Failoverbeziehung dieselben DNS-Anmeldeinformationen verwenden, um DNS-Einträge zu aktualisieren. Wenn der Failoverpartner versucht, verschiedene Anmeldeinformationen zum Aktualisieren von DNS-Ressourceneinträgen zu verwenden, schlägt dieses Update fehl.

In den folgenden Schritten wird beschrieben, wie dynamische DNS-Updates fehlschlagen können, wenn ein Clientcomputer einen anderen DHCP-Server verwendet:

  1. Ein Windows DHCP-Server führt ein dynamisches Update im Auftrag eines DHCP-Clients aus.

  2. Der DHCP-Server erstellt den DNS-Namen des Clients und wird zum Besitzer dieses Namens.

  3. Jetzt kann nur der DHCP-Server selbst die DNS-Einträge für den Namen des Clients aktualisieren.

  4. Der ursprüngliche Server schlägt fehl und ein zweiter DHCP-Sicherungsserver ist online. Jetzt kann der zweite Server den Clientnamen nicht aktualisieren, da er nicht der Besitzer des Namens ist.

Eine Erläuterung dieses Szenarios finden Sie auch unter DNS-Eintragsbesitz und der DnsUpdateProxy-Gruppe .

Bereitstellungsüberlegungen

Berücksichtigen Sie vor der Bereitstellung des DHCP-Failovers Folgendes:

Zeitsynchronisierung

Damit DHCP-Failover ordnungsgemäß funktioniert, muss die Zeit zwischen den beiden Servern in einer Failoverbeziehung stets synchronisiert werden. Die Zeitsynchronisierung kann durch die Bereitstellung des Netzwerkzeitprotokolls (Network Time Protocol, NTP) oder eines anderen alternativen Mechanismus verwaltet werden. Wenn der Assistent für die Failoverkonfiguration ausgeführt wird, vergleicht er die aktuelle Uhrzeit auf den Servern, die für Failover konfiguriert werden. Wenn der Zeitunterschied zwischen den Servern größer als eine Minute ist, wird der Failover-Einrichtungsprozess mit einem kritischen Fehler gestoppt, und es wird verlangt, dass die Zeit auf den Servern synchronisiert wird.

Jede Failoverprotokollnachricht enthält ein Zeitfeld, das mit der koordinierten Weltzeit (COORDINATED Universal Time, UTC) aufgefüllt wird, wenn der Quellserver die Nachricht übertragen hat. Für jede Nachricht führt der empfangende Server eine Überprüfung der Zeitdifferenz zwischen dem Zeitstempelfeld im Paket und der Uhrzeit auf dem empfangenden Server durch. Wenn dieser Zeitunterschied größer als eine Minute ist, protokolliert der empfangende Server ein kritisches Ereignis, das angibt, dass die beiden Server nicht zeitsynchron sind.

Richtlinienbasierte Zuweisung

Windows Server enthält eine richtlinienbasierte IP-Adresszuweisungsfunktion, mit der ein Windows-DHCP-Administrator die DHCP-Clients nach einem bestimmten Attribut des Clients gruppieren kann, z. B. Anbieterklasse, Benutzerklasse, Client-ID oder MAC-Adresse. Administratoren gruppieren die Clients basierend auf diesen Attributen und können Parameter wie IP-Adresse, Standardgateway, DNS-Server und andere DHCP-Optionen einer bestimmten Gruppe von Clients zuweisen. Auf diese Weise kann der Administrator eine bessere Kontrolle über die Konfigurationsparameter ausüben, die an Endhosts übermittelt werden. Dieses Feature führt das Konzept mehrerer IP-Adressbereiche innerhalb eines einzigen Bereichs ein. Um dies zu berücksichtigen, erfolgt im Lastenausgleichsmodus die Verteilung der DHCP-Failover-Adressen pro IP-Adressbereich.

Windows-Firewall

DHCP-Failover verwendet TCP-Port 647 zum Empfangen von Failovernachrichten zwischen zwei Failover-Partner-Servern. Damit dieser Datenverkehr von der Windows-Firewall zugelassen werden kann, werden die folgenden eingehenden und ausgehenden Firewallregeln hinzugefügt, und Sie installieren dann die DHCP-Serverrolle:

  • Microsoft-Windows-DHCP-Failover – TCP-In

  • Microsoft-Windows-DHCP-Failover – TCP-Out

Relaisagenten

Anfängliche DHCPDISCOVER-Nachrichten werden von DHCP-Clients im Subnetz übertragen, zu dem sie gehören. Da Router in der Regel keinen Übertragungsdatenverkehr weiterleiten, ist ein Mechanismus erforderlich, um DHCP-Clients die Kommunikation mit DHCP-Servern zu ermöglichen, wenn sich der DHCP-Server nicht im selben Subnetz befindet. Relay-Agents (in der Regel auf einem Router bereitgestellt) dienen dazu, diese Funktion auszuführen, DHCP- und BOOTP-Nachrichten zwischen Clients und Servern in verschiedenen Subnetzen weiterzuführen. Relay-Agents sind häufig mit einem Netzwerkgerät konfiguriert, oder Sie können DHCP-Relay auf einem Windows Server konfigurieren, auf dem die Remotezugriffsrolle installiert ist. Weitere Informationen finden Sie unter Bereitstellen des DHCP-Relay-Agents.

Wenn Ihr DHCP-Relay auf einem Netzwerkgerät konfiguriert ist, finden Sie weitere Informationen in der Dokumentation Ihres Herstellers. Der Hilfsadressenbefehl wird häufig verwendet, um DHCP-Relay auf einem Netzwerkgerät zu konfigurieren, z. B.: ip helper-address 10.0.1.1.

Wenn Sie DHCP-Failover bereitstellen, reicht möglicherweise eine einzelne DHCP-Relayadresse nicht aus, da DHCP-Clients immer mit dem primären DHCP-Server und dem Failoverpartnerserver kommunizieren können müssen. Wenn sich beide DHCP-Server in einem anderen Subnetz als die DHCP-Clients befinden, sind mindestens zwei DHCP-Relay-Agents erforderlich. Beispiel: ip helper-address 10.0.1.1, ip helper-address 10.0.1.2.

In diesem Beispiel befinden sich beide DHCP-Server im gleichen Subnetz (10.0.1.0/24). Die IP-Adresse des primären DHCP-Servers ist 10.0.1.1 und 10.0.1.2 die IP-Adresse für den Failoverpartnerserver. Wenn sich beide DHCP-Server im selben Subnetz befinden, können Sie auch die Subnetzübertragungsadresse (z. B. 10.0.1.255) als einzelnes DHCP-Relay konfigurieren. Die Verwendung einer Subnetzübertragungsadresse als einzelnes DHCP-Relay ist nicht möglich, wenn SICH DHCP-Server in separaten Subnetzen befinden.

Doppelrelais-Agenten

Virtual Router Redundancy Protocol (VRRP) ist ein weiteres Failoverprotokoll, das verwendet wird, um Redundanz auf Netzwerkgeräten zu ermöglichen. Ein Beispiel für VRRP umfasst Hot Standby Router Protocol (HSRP), das ein cisco proprietäres VRRP ist. Wenn VRRP/HSRP auf einem Netzwerkgerät konfiguriert ist, das auch mit einem oder mehreren DHCP-Relays konfiguriert ist, kann dies dazu führen, dass doppelte DHCP-Relaynachrichten an denselben DHCP-Failoverserver gesendet werden.

Wenn ein einzelner DHCP-Server, der für DHCP-Failover konfiguriert ist, doppelte Leaseanforderungen empfängt, kann dies zu inkonsistenten Client-Leasedauern führen, und Clients können IP-Adressen leasen, die zu anderen Clients gehören. Wenden Sie sich an die Dokumentation Ihres Herstellers, um zu ermitteln, ob für das Routerredundanzprotokoll eine bestimmte Konfiguration erforderlich ist, um DHCP-Relay zu unterstützen. Cisco bietet beispielsweise DHCP-Relayunterstützung für das HSRP-Protokoll mithilfe von virtuellen Routergruppen.