DHCP (D dynamické H ost C ovládání P rotocol), jak všichni víte, je síťový protokol, který automaticky přiděluje IP adresy klientským strojům v síti. Odstraňuje zdlouhavou práci s ručním přidělováním IP adresy každému počítači ve velké síti. Kromě toho odstraňuje konflikt, ke kterému dochází v důsledku chybného přiřazení stejné adresy IP více počítačům. Rozsahy IP adres můžeme definovat v konfiguraci DHCP serveru. Spolu s IP adresou můžeme také definovat další informace, jako je maska podsítě, výchozí brána, informace o DNS serveru atd. a tyto informace jsou pak distribuovány na klientské počítače po síti.
V tomto článku uvidíme, jak nainstalovat server DHCP v Ubuntu a nakonfigurovat jednoho klienta, aby automaticky získal IP adresu z tohoto serveru DHCP. K popisu postupu uvedeného v tomto článku použijeme Ubuntu 18.04 LTS. Stejný postup můžete použít i v předchozích verzích Ubuntu.
Instalace serveru DHCP
Než přistoupíte k instalaci serveru DHCP, nejprve aktualizujte balíčky spuštěním následujícího příkazu v Terminálu:
$ sudo apt get update
Poté spusťte v Terminálu následující příkaz pro instalaci serveru DCHP:
$ sudo apt-get install isc-dhcp-server -y
Chvíli počkejte, než bude instalace dokončena.
Konfigurace serveru DHCP
Po dokončení instalace DHCP serveru přejdeme k jeho konfiguraci. IP adresa našeho DHCP serveru je 192.168.110.1. Chcete-li zjistit adresu IP vašeho serveru DHCP, zadejte do Terminálu následující příkaz:
$ ip a
Konfigurační soubor DHCP se nachází na adrese /etc/dhcp/dhcpd.conf. Tento soubor můžeme otevřít spuštěním následujícího příkazu v Terminálu
$ sudo nano /etc/dhcp/dhcpd.conf
Definování podsítě
Přidáním následujících řádků do konfiguračního souboru definujte podsíť, rozsah IP adres, doménu a servery názvů domén, jak je uvedeno níže:
Chcete-li definovat podsíť, přidejte následující řádky:
subnet 192.168.110.0 netmask 255.255.255.0 {
Při definování informací o podsíti (rozsah, výchozí brána, server názvu domény) se ujistěte, že řádky končí středníkem (;)
a uzavřel je do složených závorek { }
.
Chcete-li zadat rozsah pronajatých adres, přidejte následující řádek. Rozsah definuje množinu fondu IP adres, ze kterého jsou IP adresy přidělovány klientům DHCP
range 192.168.110.5 192.168.1.10;
Chcete-li zadat výchozí bránu, přidejte následující řádek:
option routers 192.168.110.1;
Chcete-li zadat servery názvů domén, přidejte následující řádek:
option domain-name-servers 8.8.8.8, 8.8.4.4;
Proveďte změny podle hodnot sítě.
Globální konfigurace DHCP
Zde jsou základní kroky, které potřebujeme ke konfiguraci globálního nastavení pro nastavení serveru DHCP.
1. Chcete-li zadat výchozí a maximální dobu pronájmu, vyhledejte parametry default-lease-time a maximální doba pronájmu v konfiguračním souboru a změňte jejich hodnoty.
default-lease-time 600; max-lease-time 7200;
2. Máte-li více rozhraní, budete muset definovat, které rozhraní má server DHCP používat pro obsluhu požadavků DHCP. V konfiguračním souboru vyhledejte a upravte hodnotu INTERFACESv4 a upravit jej pomocí rozhraní, které chceme požadavky obsluhovat.
INTERFACESv4="eth0"
3. Chcete-li, aby se server DHCP stal oficiálním serverem DHCP pro klienty, odkomentujte následující řádek v konfiguračním souboru (odstraněním # postava):
$ authoritative;
Toto je základní konfigurace, kterou potřebujeme ke spuštění serveru DHCP. Jakmile s tím skončíte, uložte a zavřete konfigurační soubor.
Správa služeb DHCP
Jakmile dokončíte konfiguraci, můžete ke správě serveru DHCP použít následující příkazy:
Chcete-li ověřit, zda služba běží správně, zkontrolujte stav služby DHCP spuštěním následujícího příkazu v Terminálu:
$ sudo systemctl status isc-dhcp-server.service
Následuje snímek obrazovky zobrazující stav serveru DHCP. Můžete vidět aktivní (běžící) zvýrazněno zeleně, což potvrzuje, že DHCP server běží správně:
Existuje několik dalších příkazů, které můžeme použít ke spuštění, zastavení a restartování služby DHCP.
Chcete-li spustit službu DHCP, spusťte v Terminálu následující příkaz:
$ sudo systemctl start isc-dhcp-server.service
Chcete-li službu DHCP zastavit, spusťte v Terminálu následující příkaz:
$ sudo systemctl stop isc-dhcp-server.service
Chcete-li restartovat službu DHCP, spusťte v Terminálu následující příkaz:
$ sudo systemctl restart isc-dhcp-server.service
Konfigurace klienta DHCP
Budeme muset nakonfigurovat nastavení sítě v klientském počítači, abychom získali IP adresu ze serveru DHCP. Zde jako klientský počítač použijeme další Ubuntu 18.04 LTS.
V klientském počítači otevřete Nastavení aplikace z nabídky Dash Ubuntu.
Poté vyberte Síť z levého panelu aplikace Nastavení. Poté otevřete nastavení adaptéru kliknutím na ikonu ozubeného kolečka před ním. Ujistěte se, že je zapnutý.
Otevře se okno nastavení adaptéru. Vyberte IPv4 z horní nabídky. Poté vyberte možnost Automaticky (DHCP) volba. Poté klikněte na Použít pro uložení změn.
Poté restartujte síťové služby spuštěním následujícího příkazu v Terminálu:
$ sudo systemctl restart NetworkManager.service
Nyní spusťte Terminál a zadejte následující příkaz k nalezení IP adresy systému.
$ ip a
Uvidíte IP adresu, která bude z rozsahu, který jsme definovali v konfiguraci DHCP serveru. Pokud klient stále nezíská IP adresu ze serveru DHCP, restartujte systém.
Seznam pronajatých adres
Chcete-li zjistit, jaké adresy byly přiděleny klientům serverem DHCP, otevřete počítač, který jste nakonfigurovali jako server DHCP, a zadejte následující příkaz do Terminálu:
$ dhcp-lease-list
Pronájem je doba, na kterou je počítači přidělena IP adresa.
Z tohoto seznamu můžete ověřit našeho klienta DHCP pomocí adresy MAC:00:0c:29:d4:cf:69, kterou poskytla IP adresa 192.168.110.5 ze serveru DHCP.
Nyní je nastavení dokončeno a máme spuštěný DHCP server. Nyní můžeme tento server DHCP použít k přidělování IP adres.