DCHP - (ang. Dynamic Host Configuration Protocol - protokół dynamicznego konfigurowania węzłów). Jest to protokół, dzięki któremu każde urządzenie w sieci może uzyskać od serwera DHCP unikatowy adres IP, maskę sieci, bramę oraz adresy DNS'y i inne.
Wielu z Was na pewno nieraz łączyło się z siecią w momencie gdy komputer nie miał przypisanego stałego adresu IP, a sam pobierał ten adres po uruchomieniu się. To właśnie wtedy działa komunikacja pomiędzy Waszymi komputerami, a serwerem DHCP. Po kolei, czyli jak to działa w praktyce.
Komputer włącza się i sprawdza swój protokół TCP/IP. Jeśli ustawione jest, że ma pobrać adres automatycznie, zaczyna się „rozmowa" z serwerem DHCP:
Komputer wysyła do wszystkich urządzeń w sieci (komputery, drukarki, wszędzie gdzie tylko może), czyli na adres rozgłoszeniowy: 255.255.255.255 DHCPDISCOVER - odkrywanie DHCP
Następnie serwer DHCP, który dostał prośbę o przydzielenie IP wysyła również na adres rozgłoszeniowy DHCPOFFER pakiet z konfiguracją jaką komputer powinien sobie przydzielić.
Komputer wysyła na adres rozgłoszeniowy tzw. DHCPREQUEST czyli potwierdzenie klienta, że dany adres mu odpowiada i prośba o przydzielenie mu go.
Serwer odpowiada (wciąż na adres rozgłoszeniowy) DHCPACK czyli potwierdza, że transakcja została poprawnie przeprowadzona, klient od tej pory może używać tego adresu IP, a sam serwer „skreśla" ten adres z puli dostępnych.
Od tej pory nasz komputer może używać przydzielonego mu w ten sposób adresu i komunikować się już bezpośrednio za jego pomocą.
Dlaczego komputer z serwerem wysyłają swoje pakiety na adres rozgłoszeniowy? Otóż po włączeniu się komputera ma on adres IP: 0.0.0.0. Jedyną drogą na dotarcie do serwera DHCP jest rozesłanie pakietu do wszystkich urządzeń. Na tej samej zasadzie działa serwer. Nie wie on dokładnie do którego komputera ma wysłać pakiet z odpowiedzią, więc rozsyła go w ten sam sposób. Urządzenia, które nie odesłały pakietu DHCPDISCOVER odrzucają wszystkie paczki. Istnieje niestety jeden minus takiego działania. Jeżeli w firmie mamy 1000 komputerów i każdy co chwila się łączy, inny rozłącza itd. powstaje strasznie duży ruch w sieci, który w większości, czyli dla tych 998 urządzeń jest niepotrzebny. Dobrym sposobem na zapobieganie takiemu „zapychaniu" łącza jest ustawienie VLAN'ów. Dzięki nim odseparujemy od siebie urządzenia, dzięki czemu wszystkie komputery nie będą dostawały zapytań na domenę rozgłoszeniową. Wiąże się to jednak z ustawieniem agentów serwera DHCP w każdym VLAN'ie lub skonfigurowaniem mostków pomiędzy poszczególnymi VLAN'ami, a serwerem DHCP.
Drugie pytanie, to skąd serwer DHCP wie jakie IP może, a jakiego nie może przydzielić danemu hostowi? Otóż serwery te mają zdefiniowane pule (zakres) z jakich mogą wydzierżawiać adresy IP. Adres AP można przypisać na 2 sposoby:
-dynamicznie: serwer przydziela pierwszy wolny adres IP z puli
-ręcznie: serwer sprawdza, czy dany MAC adres klienta posiada wpis i czy do danego MAC adresu jest przypisany jakiś adres IP.
OK, nasz komputer ma już adres IP, sieć ładnie działa. Jednak tak naprawdę to jeszcze nie koniec komunikacji pomiędzy naszym komputerem a serwerem. Wraz z adresem IP serwer przydzielił naszemu komputerowi również czas dzierżawy tego adresu. Czas dzierżawy administrator ustawia na serwerze w zależności od ilości komputerów oraz tego jak często i na jak długo podłączają się one do sieci. Czas dzierżawy jest podzielony na 2 zegary: T1 i T2. T1 to 50% całkowitego czasu dzierżawy. Po upływie czasu T1 klient wysyła DHCPREQUEST z prośbą o przedłużenie czasu dzierżawy. Serwer może odpowiedzieć pakietem DHCPACK potwierdzającym przedłużenie czasu. Gdy tak się stanie zegar zostaje zresetowany. Może natomiast zdarzyć się tak, że serwer nie odpowie na pierwsze zapytanie. Wtedy klient wysyła po czasie T2, czyli 87,5% czasu trwania dzierżawy ponownie DHCPREQUEST z prośbą o przedłużenie czasu trwania dzierżawy. I znów serwer może odpowiedzieć lub nie. W momencie jednak gdyby nie odpowiedział, klient będzie zmuszony rozpocząć całą procedurę uzyskiwania adresu IP od początku.