Udostępnij za pośrednictwem


Omówienie trybu failover protokołu DHCP

Tryb failover DHCP umożliwia dwóm serwerom DHCP firmy Microsoft udostępnianie informacji o dostępności, zapewniając wysoką dostępność przez replikowanie dzierżaw adresów IP i ustawień między serwerem podstawowym a partnerem trybu failover.

Wszystkie informacje o zakresie są udostępniane między dwoma serwerami DHCP, w tym również aktywne dzierżawy. Dzięki temu serwer DHCP może objąć odpowiedzialność za klientów DHCP, jeśli drugi serwer stanie się niedostępny.

Ten artykuł zawiera omówienie trybu failover protokołu DHCP.

Wprowadzenie do trybu awaryjnego pracy protokołu DHCP (failover)

W przypadku mechanizmu przełączania awaryjnego DHCP zakresy DHCPv4 są replikowane z podstawowego serwera DHCP do serwera partnera DHCP, co umożliwia zapasowość i równoważenie obciążenia usług DHCP. Serwery DHCP, które współużytkują zakres DHCP z obsługą trybu failover, są nazywane partnerami trybu failover. Implementacja funkcji przełączenia awaryjnego DHCP firmy Microsoft jest oparta na projekcie protokołu DHCP Failover opracowanym przez Internet Engineering Task Force (IETF).

Gdy dwa serwery DHCP są skonfigurowane w trybie awaryjnym, współdzielą informacje o zakresie, w tym wszystkie aktywne dzierżawy. Dzięki temu oba serwery DHCP mogą udostępniać dzierżawy tej samej podsieci na potrzeby równoważenia obciążenia lub nadmiarowości. Ustawienia zakresu są replikowane podczas pierwszego konfigurowania trybu failover PROTOKOŁU DHCP i można je replikować ponownie później, jeśli zostaną wprowadzone zmiany konfiguracji.

Na poniższym rysunku przedstawiono, jak składniki i ustawienia zakresu DHCP z obsługą failover są współdzielone między dwoma serwerami DHCP.

Diagram trybu failover protokołu DHCP.

Zakresy i ustawienia używane z serwerami DHCP skonfigurowanymi dla trybu failover są współużytkowane przy użyciu nowego obiektu nazywanego relacją failover DHCP. Dostępnych jest kilka opcji konfiguracji dotyczących trybu failover w protokole DHCP. Możesz skonfigurować tryb failover we wszystkich zakresach, które istnieją na serwerze DHCP lub tylko w niektórych zakresach. Możesz również łatwo użyć tych samych ustawień trybu failover protokołu DHCP dla wielu zakresów, dodając je do tej samej relacji trybu failover. Relacja trybu failover jest zawsze między dwoma serwerami DHCP. Jednak serwer może mieć wiele relacji failover, a każda z nich może być z innym serwerem DHCP.

Ważne

Jeśli zmiany zostaną wprowadzone w zakresie z obsługą trybu failover, należy ręcznie zreplikować te zmiany na serwerze partnerskim, aby zsynchronizować zakresy na obu serwerach DHCP. Replikacja kopiuje ustawienia zakresu z serwera DHCP, na którym została zainicjowana, na serwer partnerski, zastępując jego ustawienia. Dlatego ważne jest, aby zawsze inicjować replikację z serwera z ustawieniami zakresu DHCP, których chcesz użyć.

Specyfikacje trybu failover protokołu DHCP

Poniższe specyfikacje dotyczą trybu failover protokołu DHCP.

Zakresy DHCP:

  • Nie można skonfigurować trybu failover DHCP w zakresie DHCP, aby obejmował więcej niż dwa serwery DHCP.

  • Mechanizm failover DHCP obsługuje tylko zakresy DHCPv4. Zakresy DHCPv6 nie mogą być skonfigurowane do pracy w trybie awaryjnym.

  • Jeśli parametry zakresu z włączoną obsługą trybu failover zostaną zmodyfikowane, te ustawienia muszą zostać ręcznie zreplikowane na serwer DHCP partnera.

  • Replikację ustawień zakresu można zainicjować z dowolnego z dwóch serwerów DHCP na jego serwer partnera w trybie failover.

Klient/serwer DHCP:

  • Klienci DHCP muszą mieć możliwość komunikacji z oboma serwerami partnerskimi DHCP w trybie failover, bezpośrednio lub przy użyciu przekaźnika DHCP.

  • Po włączeniu trybu failover dhcp dzierżawa klienta DHCP może zostać odnowiona przez inny serwer niż ten, który pierwotnie go wystawił.

  • Dwie oddzielne, zsynchronizowane bazy danych dzierżaw klientów są utrzymywane niezależnie przez każdy serwer partnerski w trybie failover DHCP.

  • Serwery DHCP skonfigurowane jako partnerzy trybu failover mogą znajdować się w różnych podsieciach, ale nie jest to wymagane.

  • Protokół DHCP klastrowy jest obsługiwany w połączeniu z przełączaniem awaryjnym DHCP. Na potrzeby trybu failover klaster DHCP jest uważany za pojedynczy serwer DHCP.

  • Można skonfigurować tryb failover protokołu DHCP, a ustawienia można modyfikować bez konieczności wstrzymywania, zatrzymywania lub ponownego uruchamiania usługi serwera DHCP.

Partnerzy trybu failover protokołu DHCP:

  • Partnerzy trybu failover DHCP muszą mieć uruchomiony co najmniej system Windows Server 2016.

  • Dwa serwery DHCP skonfigurowane jako partnerzy trybu failover próbują zachować trwałe połączenie TCP/IP.

  • Serwery DHCP skonfigurowane jako partnerzy trybu failover są świadomi stanu usługi DHCP na innym serwerze i są informowane o wszelkich zmianach w tym stanie z minimalnym opóźnieniem.

  • Jeśli dwa serwery DHCP skonfigurowane jako partnerzy trybu failover nie mogą komunikować się, należy podjąć środki ostrożności, aby uniknąć wystawiania tej samej dzierżawy adresów IP dla dwóch różnych klientów DHCP.

  • Jeśli serwer DHCP stanie się niedostępny, zanim będzie mógł pomyślnie zsynchronizować wszystkie informacje o kliencie DHCP z partnerem rezerwowym, podjęte zostają środki ostrożności, aby zapewnić ciągłość dzierżawy dla klientów DHCP.

  • Dwie oddzielne, zsynchronizowane bazy danych dzierżaw klientów są utrzymywane niezależnie przez każdy serwer partnerski w trybie failover DHCP.

Ważne

Podczas replikowania ustawień między serwerami partnerskimi trybu failover DHCP, które mają różne wersje systemu operacyjnego, zawsze modyfikuj ustawienia i inicjuj replikację z serwera DHCP przy użyciu nowszej wersji systemu operacyjnego. Dzięki temu ustawienia są rozpoznawane zarówno przez partnerów trybu failover, jak i stale replikowane.

Konfigurację trybu failover dla DHCP można przeprowadzić przy użyciu Menedżera serwera lub programu Windows PowerShell. Aby uzyskać informacje na temat korzystania z programu Windows PowerShell, zobacz Polecenia cmdlet serwera DHCP w programie Windows PowerShell. Aby uzyskać instrukcje dotyczące konfigurowania protokołu DHCP w Menedżerze serwera, zobacz ten przewodnik krok po kroku.

Failover DHCP i protokół IPv6

Tryb failover protokołu DHCP nie jest obsługiwany w przypadku zakresów protokołu internetowego w wersji 6 (IPv6). Karty sieciowe korzystające z protokołu IPv6 zwykle określają swój własny adres IPv6 przy użyciu bezstanowej automatycznej konfiguracji adresów IP. W tym trybie serwer DHCP zapewnia tylko konfigurację opcji DHCP, a serwer nie przechowuje żadnych informacji o stanie dzierżawy. Wdrożenie wysokiej dostępności dla bezstanowego protokołu DHCPv6 jest możliwe przez skonfigurowanie dwóch serwerów z identyczną konfiguracją opcji. Nawet w stanowym wdrożeniu DHCPv6 zakresy nie pracują przy wysokim wykorzystaniu adresów, co sprawia, że podział zakresu jest skutecznym rozwiązaniem zapewniającym wysoką dostępność.

Tryby trybu failover protokołu DHCP

Dwa tryby failover DHCP są dostępne do użycia podczas tworzenia relacji failover DHCP.

  • Tryb rezerwy dynamicznej: ten tryb zapewnia nadmiarowość usług DHCP.

  • Tryb równoważenia obciążenia: Ten tryb przydziela dzierżawy klienta DHCP między dwoma serwerami.

W razie potrzeby można przełączać się między trybem gorącej rezerwy a trybem równoważenia obciążenia, ale można używać tylko jednego trybu w jednym zakresie DHCP jednocześnie. Można również użyć obu trybów na tym samym serwerze DHCP, jeśli skonfigurujesz wiele relacji failover. Dostosuj wdrożenie na podstawie architektury fizycznej sieci.

Tryb rezerwy dynamicznej

W trybie gorącej rezerwy dwa serwery działają w relacji awaryjnego przełączenia, w której aktywny serwer jest odpowiedzialny za dzierżawę adresów IP i informacji o konfiguracji dla wszystkich klientów w określonym zakresie lub podsieci. Serwer partnerski przyjmuje rolę rezerwową, z odpowiedzialnością za wydawanie dzierżaw klientom DHCP tylko wtedy, gdy aktywny serwer stanie się niedostępny. Tryb gorącej rezerwy jest idealny w sytuacjach, gdy partner przełączania awaryjnego ma być używany tymczasowo tylko wtedy, gdy serwer aktywny jest niedostępny.

Diagram przedstawiający sposób działania trybu rezerwy dynamicznej.

Serwer jest aktywny lub rezerwowy w kontekście relacji przełączania awaryjnego. Na przykład serwer, który ma rolę aktywną dla danej relacji, może być serwerem rezerwowym dla innej relacji. Domyślnie serwer używany do tworzenia relacji trybu failover jest aktywnym serwerem, ale nie jest to wymagane.

W przypadku wybrania rezerwy dynamicznej należy również skonfigurować procent adresów IP na aktywnym serwerze, które są zarezerwowane do użycia na serwerze rezerwowym, jeśli aktywny serwer nie odpowiada. Domyślnie ta wartość procentowa rezerwy wynosi 5%.

Wartość procentowa rezerwy jest używana dla nowych dzierżaw DHCP. Jeśli klient DHCP próbuje odnowić dzierżawę DHCP z serwerem rezerwowym, który nie może skontaktować się z aktywnym serwerem, zostanie odnowiony ten sam adres IP, który został wcześniej przypisany do klienta DHCP. W takiej sytuacji dzierżawa tymczasowa jest udzielana na maksymalny czas realizacji klienta (MCLT), zamiast na pełny okres dzierżawy.

Jeśli serwer rezerwowy wystawia wszystkie dostępne dzierżawy rezerwowe nowym klientom DHCP przed wygaśnięciem MCLT, odmawia wystawiania nowych dzierżaw DHCP, lecz kontynuuje odnawianie istniejących dzierżaw. Po wygaśnięciu mcLT serwer rezerwowy może korzystać z całej dostępnej puli adresów IP dla nowych dzierżaw DHCP. Jeśli serwer nadal jest w stanie przerwanej komunikacji, nie używa całej dostępnej puli adresów IP dla nowych dzierżaw DHCP.

W trybie rezerwy dynamicznej serwer centralny lub serwer centrum danych zazwyczaj działa jako rezerwowy serwer kopii zapasowych. Ten serwer zapewnia redundancję dla lokalnego serwera DHCP w zdalnej lokalizacji, który bezpośrednio obsługuje klientów sieciowych DHCP. W takich wdrożeniach serwer rezerwowy powinien obsługiwać tylko klientów, jeśli lokalny serwer DHCP stanie się niedostępny.

Tryb równoważenia obciążenia

Tryb równoważenia obciążenia to domyślny tryb wdrażania. W tym trybie dwa serwery DHCP jednocześnie obsługują adresy IP i opcje dla klientów w danej podsieci. Żądania klienta DHCP są równoważone obciążeniem i współdzielone między dwoma serwerami DHCP. Domyślny współczynnik równoważenia obciążenia między dwoma serwerami wynosi 50:50, ale można go dostosować do dowolnego współczynnika z zakresu od 0% do 100%.

Diagram przedstawiający sposób działania trybu równoważenia obciążenia.

Mechanizm równoważenia obciążenia jest zdefiniowany w dokumencie RFC 3074, w którym skrót jest obliczany z adresu MAC zawartego w każdym żądaniu klienta DHCP. Do każdego serwera DHCP jest przypisywany zakres wartości skrótu (nazywany również zasobnikiem skrótu) na podstawie skonfigurowanych wartości procentowych równoważenia obciążenia. Serwery określają, czy są one wyznaczone do reagowania na klienta na podstawie przypisanego zasobnika skrótu.

W trybie równoważenia obciążenia, gdy serwer DHCP traci kontakt z partnerem trybu failover, rozpoczyna udzielanie dzierżaw wszystkim klientom DHCP. Jeśli otrzyma żądanie odnowienia dzierżawy od klienta DHCP przypisanego do partnera trybu awaryjnego, tymczasowo odnowi tę samą dzierżawę adresu IP na czas trwania MCLT. Jeśli otrzyma żądanie od klienta, któremu wcześniej nie przydzielono dzierżawy, udziela nowej dzierżawy z wolnej puli adresów IP, dopóki nie zostanie wyczerpana, a następnie zacznie korzystać z wolnej puli adresów IP partnera trybu failover. Jeśli serwer DHCP przechodzi w stan partnera w dół, czeka na czas trwania MCLT, a następnie przyjmuje odpowiedzialność za 100% puli adresów IP.

Tryb działania z równoważeniem obciążenia najlepiej nadaje się do wdrożeń, w których oba serwery w relacji awaryjnego przełączania znajdują się w tej samej lokacji fizycznej. Oba serwery odpowiadają na żądania klientów DHCP na podstawie współczynnika dystrybucji obciążenia skonfigurowanego przez administratora.

Failover DHCP i klaster awaryjny Windows

Tryb przełączania awaryjnego DHCP jest obsługiwany dla klastrowanego DHCP w następujących konfiguracjach:

  • Jeden serwer DHCP może mieć relację awaryjnego przełączania z klastrem awaryjnego przełączania DHCP.

  • Klaster awaryjny DHCP może mieć relację z innym klastrem awaryjnym DHCP.

W obu przypadkach należy skonfigurować tryb failover protokołu DHCP, aby używać nazwy lub adresu IP klastra, a nie nazwy ani adresu IP węzła klastra. Jeśli pojedynczy węzeł klastra jest skonfigurowany jako partner trybu failover, serwer podstawowy wprowadza stan przerwania komunikacji, jeśli usługa serwera DHCP zostanie przeniesiona do innego węzła w klastrze.

Ważne

Jeśli używasz wspólnego sekretu, musisz ręcznie replikować go do wszystkich węzłów klastra. Wspólny klucz tajny można replikować w aktywnym węźle klastra przy użyciu polecenia cmdlet programu PowerShell Set-DhcpServerv4Failover.

Aktualizacje dynamiczne trybu failover protokołu DHCP i DNS

Jeśli serwery DHCP są skonfigurowane do wykonywania aktualizacji dynamicznych DNS w imieniu komputera klienckiego, oba serwery DHCP w relacji trybu failover DHCP muszą używać tych samych poświadczeń DNS do aktualizowania rekordów DNS. Jeśli partner trybu failover próbuje użyć różnych poświadczeń do zaktualizowania rekordów zasobów DNS, ta aktualizacja nie powiedzie się.

W poniższych krokach opisano, jak aktualizacje dynamiczne DNS mogą zakończyć się niepowodzeniem, gdy komputer kliencki korzysta z innego serwera DHCP:

  1. Serwer DHCP systemu Windows wykonuje aktualizację dynamiczną w imieniu klienta DHCP.

  2. Serwer DHCP tworzy nazwę DNS klienta i staje się właścicielem tej nazwy.

  3. Teraz tylko sam serwer DHCP może zaktualizować rekordy DNS dla nazwy klienta.

  4. Serwer oryginalny kończy się niepowodzeniem, a drugi serwer DHCP kopii zapasowej jest w trybie online; teraz drugi serwer nie może zaktualizować nazwy klienta, ponieważ nie jest właścicielem nazwy.

Zobacz również Własność rekordów DNS i grupa DnsUpdateProxy w celu dyskusji tego scenariusza.

Uwagi dotyczące wdrażania

Przed wdrożeniem trybu failover protokołu DHCP należy wziąć pod uwagę następujące kwestie:

Synchronizacja czasu

Aby funkcja awaryjnego przełączenia DHCP działała poprawnie, czas musi być synchronizowany między dwoma serwerami w relacji awaryjnego przełączenia. Synchronizacja czasu może być utrzymywana przez wdrożenie protokołu NTP (Network Time Protocol) lub dowolnego innego alternatywnego mechanizmu. Po uruchomieniu kreatora konfiguracji trybu failover zostanie porównany bieżący czas na serwerach skonfigurowanych na potrzeby trybu failover. Jeśli różnica czasu między serwerami jest większa niż minuta, proces konfiguracji trybu failover zostanie zatrzymany z powodu błędu krytycznego i zażąda, aby czas na serwerach został zsynchronizowany.

Każdy komunikat protokołu trybu failover zawiera pole czasu wypełnione uniwersalnym czasem koordynowanym (UTC), gdy serwer źródłowy przesłał komunikat. Dla każdego komunikatu serwer odbierający wykona sprawdzanie różnicy czasu między polem sygnatury czasowej w pakiecie a czasem na serwerze odbierającego. Jeśli okaże się, że ta różnica czasu będzie większa niż minuta, serwer odbierający będzie rejestrować zdarzenie krytyczne wskazujące, że dwa serwery nie są zsynchronizowane w czasie.

Przypisanie oparte na zasadach

System Windows Server zawiera funkcję przypisywania adresów IP opartych na zasadach, która umożliwia administratorowi DHCP systemu Windows grupowanie klientów DHCP według określonego atrybutu klienta, takiego jak klasa dostawcy, klasa użytkownika, identyfikator klienta lub adres MAC. Administratorzy grupują klientów na podstawie tych atrybutów i mogą przypisywać parametry, takie jak adres IP, brama domyślna, serwer DNS i inne opcje DHCP do określonej grupy klientów. Dzięki temu administrator może mieć większą kontrolę nad parametrami konfiguracji dostarczanymi na hostach końcowych. Ta funkcja wprowadza koncepcję wielu zakresów adresów IP w jednym zakresie. Aby to umożliwić, dystrybucja adresów failover DHCP w trybie udostępniania obciążenia odbywa się na podstawie zakresu adresów IP.

Zapora systemu Windows

Tryb failover DHCP używa portu TCP 647 do nasłuchiwania komunikatów trybu failover między dwoma serwerami partnerskimi trybu failover. Aby ten ruch był dozwolony przez Zaporę systemu Windows, przy instalacji roli serwera DHCP dodawane są następujące reguły zapory dla ruchu przychodzącego i wychodzącego.

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

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

Agenci przekaźnika

Początkowe komunikaty DHCPDISCOVER są emitowane przez klientów DHCP w podsieci, do której należą. Ponieważ routery zwykle nie przesyłają dalej ruchu rozgłaszanego, wymagany jest mechanizm umożliwiający klientom DHCP komunikowanie się z serwerami DHCP, jeśli serwer DHCP nie znajduje się w tej samej podsieci. Agenci przekaźnika (zazwyczaj udostępniani na routerze) są przeznaczone do wykonywania tej funkcji, przekazywania komunikatów DHCP i BOOTP między klientami i serwerami w różnych podsieciach. Agenci przekaźnika są często konfigurowani na urządzeniu sieciowym lub można skonfigurować przekaźnik DHCP w systemie Windows Server z zainstalowaną rolą dostępu zdalnego. Aby uzyskać więcej informacji, zobacz Wdrażanie agenta usługi DHCP Relay.

Jeśli przekaźnik DHCP jest skonfigurowany na urządzeniu sieciowym, zapoznaj się z dokumentacją dostawcy, aby uzyskać szczegółowe informacje. Komenda helper-address jest często używana do konfigurowania przekaźnika DHCP na urządzeniu sieciowym, na przykład: ip helper-address 10.0.1.1.

Podczas wdrażania trybu failover protokołu DHCP pojedynczy adres przekaźnika DHCP może nie być wystarczający, ponieważ klienci DHCP zawsze muszą mieć możliwość komunikowania się zarówno z podstawowym serwerem DHCP, jak i z serwerem partnerskim trybu failover. Jeśli oba serwery DHCP znajdują się w innej podsieci niż klienci DHCP, wymaga to co najmniej dwóch agentów przekaźnika DHCP. Przykład: ip helper-address 10.0.1.1, ip helper-address 10.0.1.2.

W tym przykładzie oba serwery DHCP znajdują się w tej samej podsieci (10.0.1.0/24). Podstawowy adres IP serwera DHCP to 10.0.1.1 i 10.0.1.2 to adres IP serwera partnerskiego trybu failover. Jeśli oba serwery DHCP znajdują się w tej samej podsieci, można również skonfigurować adres emisji podsieci (np. 10.0.1.255) jako pojedynczy przekaźnik DHCP. Użycie adresu emisji podsieci jako pojedynczego przekaźnika DHCP nie jest możliwe, jeśli serwery DHCP znajdują się w oddzielnych podsieciach.

Zduplikowani agenci przekaźnika

Protokół VRRP (Virtual Router Redundancy Protocol) to inny protokół przełączania awaryjnego umożliwiający nadmiarowość na urządzeniach sieciowych. Przykładem protokołu VRRP jest protokół HSRP (Hot Standby Router Protocol), który jest zastrzeżonym protokołem VRRP firmy Cisco. Jeśli protokół VRRP/HSRP jest skonfigurowany na urządzeniu sieciowym, które jest również skonfigurowane z co najmniej jednym przekaźnikiem DHCP, może to spowodować wysłanie zduplikowanych komunikatów przekaźnika DHCP do tego samego serwera failover DHCP.

Jeśli jeden serwer DHCP skonfigurowany na potrzeby trybu failover DHCP odbiera zduplikowane żądania dzierżawy, może to spowodować niespójne czasy trwania dzierżawy klienta, a klienci mogą dzierżawić adresy IP należące do innych klientów. Zapoznaj się z dokumentacją dostawcy, aby ustalić, czy protokół nadmiarowości routera wymaga określonej konfiguracji do obsługi przekaźnika DHCP. Na przykład cisco zapewnia obsługę przekaźnika DHCP dla protokołu HSRP przy użyciu grup routerów wirtualnych.