dhclient to klient DHCP z pakietu ISC dhcp, który w imieniu Twojej maszyny dogaduje się z serwerem DHCP i pobiera konfigurację sieci: adres IP, maskę, bramę domyślną oraz serwery DNS. Krótko mówiąc, to ta robota, która zwykle dzieje się sama w tle, gdy podłączasz kabel albo łączysz się z Wi-Fi. Komenda przydaje się, gdy chcesz ręcznie odnowić dzierżawę (lease), zwolnić adres albo zdebugować, dlaczego interfejs uparcie nie dostaje IP.
Składnia i najważniejsze opcje
Podstawowa składnia wygląda tak: dhclient [opcje] [interfejs]
-r— zwalnia aktualną dzierżawę i zatrzymuje działający proces dhclient (release).-v— tryb gadatliwy; wypisuje przebieg negocjacji aż do uzyskania adresu. Świetne do debugowania.-4— używa protokołu DHCPv4 (zachowanie domyślne).-6— używa DHCPv6, czyli pobiera adresy i parametry dla IPv6.-1— próbuje uzyskać lease tylko raz; przy niepowodzeniu kończy się kodem wyjścia 2.-nw— od razu przechodzi w tryb demona, nie czekając na przydzielenie adresu (no wait).-d— działa na pierwszym planie i loguje na stderr, zamiast odłączać się jako demon.-p— nasłuchuje na innym porcie niż domyślny 68 (rzadkie, ale bywa potrzebne).
Przykłady użycia
sudo dhclient eth0— prosi o nowy adres IP dla interfejsueth0.sudo dhclient -r eth0— zwalnia bieżącą dzierżawę naeth0(np. przed zmianą sieci).sudo dhclient -v eth0— odnawia adres i pokazuje na żywo całą rozmowę z serwerem DHCP.sudo dhclient -r eth0 && sudo dhclient eth0— klasyczny restart dzierżawy: najpierw zwolnij, potem pobierz na nowo.sudo dhclient -6 eth0— pobiera konfigurację IPv6 dla interfejsu.
Częste błędy i pułapki
Najczęstszy błąd to uruchamianie bez sudo — konfiguracja interfejsu wymaga uprawnień roota, więc bez nich dostaniesz odmowę. Druga pułapka: na nowoczesnych systemach z NetworkManager albo systemd-networkd sieć ogarnia inny daemon. Jeśli ręcznie odpalisz dhclient, możesz dorobić sobie drugi, konkurujący proces i adres zacznie „migać”. W takich systemach lepiej trzymać się nmcli lub networkctl. Pamiętaj też, że dhclient bywa już wycofywany — w wielu dystrybucjach domyślnym klientem jest dhcpcd albo wbudowany mechanizm NetworkManagera, więc samego polecenia może po prostu nie być w systemie.
Powiązane komendy: ip, nmcli, networkctl, dhcpcd, ifup, ifdown, systemctl.