Sieci komputerowe

DHCP

DHCP automatyzuje przydzielanie konfiguracji IP klientom. Dzięki temu urządzenia końcowe mogą dostać adres, maskę, bramę, DNS i czas dzierżawy bez ręcznego ustawiania parametrów.

Dynamic Host Configuration ProtocolDORAUDP 67/68leaseDHCP Relay

Serwer DHCP

UDP 67

Klient DHCP

UDP 68

Proces

DORA

Adres

lease

Podstawy

Czym jest DHCP

DHCP to Dynamic Host Configuration Protocol. Usługa automatyzuje przydzielanie konfiguracji IPv4 klientom w sieci. Klient może otrzymać adres IPv4, maskę podsieci, bramę domyślną, serwery DNS oraz czas dzierżawy.

DHCP upraszcza administrację

Zamiast konfigurować ręcznie każde urządzenie, administrator ustawia reguły na serwerze DHCP.

DHCP to nie DNS ani NAT

DNS zamienia nazwy na adresy, NAT tłumaczy adresy między sieciami, a DHCP przydziela konfigurację IP klientom.

01

Statycznie a dynamicznie

Tabela: Podejście, Jak działa, Typowe zastosowanie
PodejścieJak działaTypowe zastosowanie
Konfiguracja statycznaAdministrator ręcznie ustawia IP, maskę, bramę i DNS.Router, serwer, urządzenie infrastruktury, wybrane urządzenia wymagające stałego IP.
DHCPKlient automatycznie pobiera konfigurację z serwera DHCP.Komputery użytkowników, telefony, laptopy i inne urządzenia końcowe.

Konfiguracja statyczna dobrze pasuje do urządzeń infrastruktury i serwerów. DHCP jest wygodne dla urządzeń końcowych, które często pojawiają się i znikają z sieci. Stały adres może być też realizowany przez rezerwację DHCP.

Stały adres urządzenia można ustawić ręcznie albo realizować przez rezerwację DHCP.
02

DORA

Tabela: Etap, Rola komunikatu
EtapRola komunikatu
DiscoverKlient szuka dostępnego serwera DHCP.
OfferSerwer proponuje adres i parametry konfiguracji.
RequestKlient informuje, którą ofertę chce zaakceptować.
AcknowledgeSerwer potwierdza przydział konfiguracji.
Klient → DHCPDISCOVER Serwer → DHCPOFFER Klient → DHCPREQUEST Serwer → DHCPACK DHCP Server: UDP 67 DHCP Client: UDP 68

Pierwszy DHCPDISCOVER w typowym dydaktycznym modelu IPv4 może wyglądać tak: source IP 0.0.0.0, destination 255.255.255.255, UDP 68 → 67. Klient szuka dostępnego serwera DHCP.

Początkowa komunikacja DHCP często wykorzystuje broadcast, bo klient może jeszcze nie mieć własnego adresu IPv4.

Przykład

Oferta, request i ACK

Serwer DHCP 192.168.1.1 może zaoferować klientowi adres 192.168.1.100, maskę 255.255.255.0, bramę 192.168.1.1, DNS 192.168.1.1 lub inny skonfigurowany DNS oraz lease, np. 8 godzin. Ten czas jest tylko przykładem, nie obowiązkowym standardem.

DHCPREQUEST oznacza, że klient informuje, którą ofertę chce zaakceptować. DHCPACK potwierdza konfigurację. DHCPNAK może w określonych sytuacjach oznaczać odrzucenie lub nieprawidłową konfigurację.

03

Pula DHCP

Scope, czyli pula DHCP, to zakres adresów, z którego serwer może przydzielać konfigurację klientom. Przykładowo w sieci 192.168.10.0/24 router może mieć 192.168.10.1, a pula może obejmować 192.168.10.100-192.168.10.200.

Adres sieci: 192.168.10.0 Router/brama: 192.168.10.1 Infrastruktura: 192.168.10.1-99 Pula DHCP: 192.168.10.100-192.168.10.200 Broadcast: 192.168.10.255
Pula to przykład organizacji adresacji, a nie wymóg protokołu DHCP.
04

Lease i rezerwacja

Lease oznacza dzierżawę adresu. Adres nie musi być przypisany klientowi na zawsze: zostaje przydzielony na określony czas, może być odnowiony albo wygasnąć.

Rezerwacja DHCP pozwala przydzielać konkretnemu klientowi ten sam adres, np. Klient A → identyfikator klienta lub MAC → 192.168.10.20. Często używa się adresu MAC, ale implementacje mogą korzystać także z innych identyfikatorów klienta.

Dla zainteresowanych: T1 i T2

Klient może próbować odnowić dzierżawę przed jej końcem. Momenty T1 i T2 zależą od czasu lease i konfiguracji serwera, więc nie są stałymi godzinami.

Lease to dzierżawa adresu, a rezerwacja pozwala przydzielać temu samemu klientowi ten sam adres.
05

Opcje DHCP

Tabela: Opcja, Nazwa, Znaczenie
OpcjaNazwaZnaczenie
Option 1Subnet MaskMaska podsieci, np. 255.255.255.0.
Option 3Router / Default GatewayBrama domyślna dla ruchu poza lokalną sieć.
Option 6DNS ServersAdresy serwerów DNS przekazywane klientowi.
Option 51IP Address Lease TimeCzas dzierżawy adresu IP.
Serwer może przekazywać również inne opcje, ale te są najważniejsze na poziomie podstawowym.
06

DHCP Relay

Jeżeli klient i serwer DHCP są w różnych podsieciach, urządzenie routujące może przekazać zapytanie do serwera jako DHCP Relay. W części urządzeń spotkasz nazwę funkcji w rodzaju ip helper-address, ale nie jest to uniwersalna nazwa dla każdego producenta.

Klient VLAN/subnet A → Router / DHCP Relay → Serwer DHCP w subnet B
Broadcast DHCP zwykle nie przechodzi przez router, dlatego między podsieciami stosuje się DHCP Relay.

Model

Przykład pełnej konfiguracji

W sieci 192.168.50.0/24 serwer DHCP może przekazywać klientom wartości wynikające ze swojej konfiguracji: bramę 192.168.50.1, pulę 192.168.50.100-192.168.50.150, DNS 192.168.50.1 oraz lease 12 godzin.

Tabela: Parametr klienta, Przykładowa wartość, Skąd pochodzi
Parametr klientaPrzykładowa wartośćSkąd pochodzi
IP192.168.50.104Z puli DHCP 192.168.50.100-192.168.50.150.
Maska255.255.255.0Z konfiguracji podsieci na serwerze DHCP.
Gateway192.168.50.1Z opcji bramy/routera.
DNS192.168.50.1Z opcji DNS.
Lease12 godzinZ czasu dzierżawy ustawionego na serwerze.

Klient

Diagnostyka Windows

Podstawowe polecenie to:

ipconfig /all
Tabela: Pole, Co sprawdzić
PoleCo sprawdzić
DHCP EnabledCzy interfejs pobiera konfigurację z DHCP.
IPv4 AddressAdres IPv4 przydzielony klientowi.
Subnet MaskMaska podsieci otrzymana z konfiguracji.
Default GatewayBrama domyślna używana poza siecią lokalną.
DHCP ServerAdres serwera, który przydzielił konfigurację.
DNS ServersSerwery DNS przekazane klientowi.
Lease ObtainedMoment uzyskania dzierżawy.
Lease ExpiresMoment wygaśnięcia dzierżawy.
ipconfig /release ipconfig /renew

Polecenia release i renew mogą chwilowo pozbawić klienta łączności IP, ponieważ zwalniają i odnawiają konfigurację.

Klient

Diagnostyka Linux

Podstawowe polecenia niezależne od konkretnego klienta DHCP:

ip address show ip route show

Dla DNS w systemach używających systemd-resolved można sprawdzić:

resolvectl status

Konkretne narzędzie odnawiania lease zależy od używanego systemu zarządzania siecią, np. NetworkManager, systemd-networkd lub innego klienta DHCP. Nie zakładamy obowiązkowej obecności dhclient.

Troubleshooting

Najczęstsze problemy DHCP

  • - brak serwera DHCP
  • - wyczerpana pula adresów
  • - błędny VLAN
  • - klient i serwer w różnych podsieciach bez DHCP Relay
  • - błędna maska
  • - błędna brama
  • - błędny DNS
  • - konflikt z drugim nieautoryzowanym serwerem DHCP
  • - firewall lub filtracja ruchu
  • - problem z interfejsem sieciowym

Powiązanie z IPv4

APIPA i link-local IPv4

Windows może automatycznie użyć adresu z zakresu 169.254.0.0/16, gdy konfiguracja IPv4 przez DHCP się nie powiedzie. Nie każdy system operacyjny musi zachować się identycznie.

Adres 169.254.x.x często jest sygnałem, że należy sprawdzić DHCP, ale sam w sobie nie dowodzi dokładnej przyczyny awarii.

Ćwiczenia

Sprawdź samodzielnie

Odpowiedzi ukryte

Najpierw wykonaj obliczenia samodzielnie. Odpowiedzi rozwiń dopiero wtedy, gdy masz własny wynik.

Zadanie 1łatwyUłóż DORA we właściwej kolejności.
Sprawdź odpowiedź: Discover, Offer, Request, Acknowledge.
Zadanie 2łatwyJakie porty UDP wykorzystuje DHCP po stronie serwera i klienta?
Sprawdź odpowiedź: Serwer DHCP używa UDP 67, a klient DHCP używa UDP 68.
Zadanie 3średniKlient ma adres 169.254.20.15. Co należy sprawdzić?
Sprawdź odpowiedź: To może być adres link-local IPv4/APIPA. Warto sprawdzić dostępność serwera DHCP, VLAN, okablowanie lub Wi-Fi, pulę adresów, filtrację i konfigurację interfejsu.
Zadanie 4średniZaprojektuj pulę DHCP dla sieci 192.168.20.0/24, zostawiając pierwsze 50 adresów dla infrastruktury.
Sprawdź odpowiedź: Przykład: router 192.168.20.1, infrastruktura 192.168.20.2-50, pula DHCP 192.168.20.100-192.168.20.200. To przykład organizacji, nie wymóg protokołu.
Zadanie 5średniWskaż różnicę między pulą DHCP a rezerwacją DHCP.
Sprawdź odpowiedź: Pula to zakres adresów, z których serwer przydziela konfigurację klientom. Rezerwacja przypisuje konkretnemu klientowi stały adres na podstawie identyfikatora, często MAC.
Zadanie 6średniKlient i serwer DHCP są w różnych VLAN-ach. Czego może brakować?
Sprawdź odpowiedź: Może brakować funkcji DHCP Relay na routerze lub urządzeniu warstwy trzeciej obsługującym przejście między podsieciami.
Zadanie 7trudniejszyZinterpretuj fragment ipconfig /all, w którym DHCP Enabled ma wartość Yes, DHCP Server to 192.168.1.1, a Lease Expires jest ustawione na późniejszą godzinę.
Sprawdź odpowiedź: Interfejs używa DHCP, konfigurację przydzielił serwer 192.168.1.1, a dzierżawa jest nadal ważna do wskazanego czasu.
Zadanie 8trudniejszyZnajdź błąd: router ma 192.168.10.1, a pula DHCP obejmuje 192.168.10.1-192.168.10.200.
Sprawdź odpowiedź: Pula obejmuje adres routera. Grozi to konfliktem IP, więc adres bramy powinien być wyłączony z puli lub zarezerwowany poza zakresem dynamicznym.

Pytania kontrolne

Zatrzymaj się i odpowiedz

  1. 1Czym jest DHCP i co automatyzuje?
  2. 2Co oznacza skrót DORA?
  3. 3Jakie porty UDP wykorzystują klient i serwer DHCP?
  4. 4Czym jest lease?
  5. 5Czym jest rezerwacja DHCP?
  6. 6Czym różni się pula DHCP od adresu statycznego?
  7. 7Po co stosuje się DHCP Relay?
Laboratorium

Przećwicz DHCP w praktyce

Laboratorium Debian + Kea DHCP w izolowanej sieci VirtualBox.

Otwórz Lab 02