DHCP – 80/20?

2 minute read

Jak zwiększyć dostępność usługi DHCP w naszej sieci? Z pomocą przychodzą nam dwa rozwiązania:

- reguła 80/20

- klastrowanie usługi DHCP

W przypadku klastra sprawa jest prosta:

  • instalujemy kilka węzłów przyszłego klastra

  • tworzymy wspólny zasób na potrzeby klastra.

  • tworzymy klaster dla usługi DHCP

W przypadku reguły 80/20 konfiguracja jest trochę bardziej skomplikowana. Poniżej postaram się w kilku zdaniach opisać działanie i konfigurację tej reguły.

80/20 w założeniu ma zwiększyć dostępność usługi DHCP w przypadku awarii jednego z serwerów. Ogólnie rzecz ujmując 80% niezarezerwowanych adresów jest przydzielana przez jeden serwer a reszta poprzez drugi.



Jakie korzyści niesie konfiguracja reguły 80/20?

Jak można szybko zauważyć w przypadku naszej konfiguracji cała reguła wymaga od nas poprawnej konfiguracji wykluczeń. Podczas działania obu serwerów reguła nie wnosi nic poza drobnym odciążeniem Serwera 1. Sytuacja zaczyna robić się ciekawa gdy awarii ulegnie serwer 1. Wtedy tylko 20% niezarezerwowane adresów może zostać przydzielonych z drugiego DHCP. Jeśli nasza sieć jest duża to 20% adresów bardzo często może pokryć tylko cześć pomieszczeń lub kilka pięter dużego budynku. Na szczęście po awarii lub celowym wyłączeniu serwera administrator może usunąć wykluczenie z drugiego serwera i tym samym udostępnić do dystrybucji wszystkie wolne adresy, które przynależą do skonfigurowanego zakresu. Jeśli serwer 1 zacznie znowu funkcjonować to administrator musi ponownie nałożyć nowe wykluczenie na drugim serwerze.

Dlaczego cały czas mówisz o niezarezerwowany adresach, co z rezerwacjami?

W przypadku rezerwacji administrator jest zmuszony do utrzymania identycznych rezerwacji na obu serwerach. Tak jak pisałem w poprzednim wpisie o wykluczeniach, serwer DHCP na systemie Windows może rozdawać zarezerwowane adresy, które leżą w wykluczonej części. Tak więc administrator jest zmuszony to utrzymania spójnej listy rezerwacji. Dobrze jest napisać odpowiedni skrypt do tworzenia rezerwacji na obu serwerach.

Kiedy nie trzeba usuwać wykluczenia?

Jeśli w naszym zakresie mamy 200 adresów a mniej niż czterdzieści jest przydzielanych bez rezerwacji to wtedy nie ma potrzeby usuwania wykluczenia.

Czy muszę ręcznie usuwać wykluczenia?

Nie. Jeśli potrafisz napisać proste skrypty to np. za pomocą batch-a, vbscript-a, powershell-a da się napisać proste skrypty uruchamiane w harmonogramie zadań. Działanie skryptu ogranicza się do:

  • Sprawdzenia czy serwer jest dostępny:

  • Jeśli dodatkowy serwer jest niedostępny to usuwamy wykluczenie.

  • Jeśli serwer jest dostępny to nakładamy wykluczenie na nadmiarowe adresy.

Jak skonfigurować serwery?

  1. Instalujemy na dwóch serwerach usługę DHCP

  2. Konfigurujemy na obu serwerach ten sam zakres adresów oraz niezbędne opcje

  3. Na pierwszym serwerze wykluczamy 20% końcowych adresów

  4. Na drugim serwerze wykluczamy 80% początkowych adresów.

  5. W razie potrzeby na obu serwerach wpisujemy te same rezerwacje.

Skonfigurować klaster usługi DHCP czy wykorzystać regułę 80/20?

To zależy:>

Jeśli masz już w sieci zainstalowany klaster typu Failover i nie jest on zbyt mocno obciążony to można na nim skonfigurować usługę DHCP, która domyślnie będzie przetwarzana przez aktualnie niewykorzystywany węzeł.  Jeśli nie posiadasz w sieci serwerów działających w klastrze FO to bardziej opłacalna będzie konfiguracja reguły 80/20. Usługa DHCP nie obciąża zbyt mocno systemu więc można ją uruchomić nawet na małej maszynie wirtualnej. Dodatkowo reguła 80/20 nie wymaga posiadania dostawowej przestrzeni dyskowej na kolejnym serwerze.