Protokół DHCP

Damian Stelmach | 31-05-2018

Dynamic Host Configuration Protocol to usługa sieciowa, której zadaniem jest dynamiczne przypisywanie konfiguracji IP hostom w sieci. Chodzi o to, aby nie biegać od komputera do komputera i statycznie, ręcznie przydzielać adresy IP oraz pozostałe parametry potrzebne do właściwej konfiguracji karty sieciowej. Poprzez DHCP możemy realizować taką konfigurację w sposób dynamiczny, z przygotowanej wcześniej puli adresowej. Protokół DHCP jest następcą BootStrap’a (nie mylić z freamworkim tworzenia responsywnych stron internatowych), protokołu który kiedyś zajmował się przydzielaniem konfiguracji IP, jest on jednak od niego zdecydowanie mądrzejszy i sprawniejszy, dlatego wyparł już prawie BootStrap’a całkowicie.

Mechanika komunikacji z wykorzystaniem protokołu DHCP przedstawia się następująco:

1. Klient, który chce otrzymać z serwera DHCP konfigurację IP rozsyła w swojej podsieci komunikat broadcastowy DHCP Discover.

DHCP 1

2. Komunikat ten ma celu odnalezienie serwera DHCP, a jako, że jest rozgłoszeniowy, trafia do wszystkich hostów w danej sieci, no i oczywiście jest on ignorowany przez większość z nich, natomiast odpowiada na niego jedynie serwer DHCP, przesyłając komunikat DHCP Offer. Zawiera on proponowany adres IP, a także pozostałe parametry takie jak adres bramy czy adres serwera DNS.

DHCP 2

3. Klient po otrzymaniu informacji o takiej konfiguracji akceptuje ją, przesyłając do serwera komunikat DHCP Request.

DHCP 3

4. Na koniec jeszcze serwer przesyła do klienta komunikat DHCP Ack stanowiący potwierdzenie dzierżawy danego adresu.

DHCP 4

Cały ten proces odbywa się z wykorzystaniem protokołu transportowego UDP oraz działa na portach 67 i 68 dla IPv4 oraz 546 i 547 dla IPv6.

DHCP 5

DHCP jest usługą rozgłoszeniową, a to oznacza, że komunikaty DHCP nie są przekazywane przez rutery, co skutkuje tym, że usługa działa tylko w danej podsieci.

DHCP 6

Oczywiście to jest tylko teoria, dlatego, że nowoczesne routery posiadają już możliwości konfiguracyjne pozwalające na przekazywania pakietów DHCP poza obręb własnej sieci, także DHCP może przydzielać również adresy hostom pracującym w innych podsieciach.

DHCP 7