Kako postaviti DHCP poslužitelj i klijent na CentOS i Ubuntu


DHCP (skraćenica od Dynamic Host Configuration Protocol) je protokol klijent/poslužitelj koji poslužitelju omogućuje automatsko dodjeljivanje IP adrese i drugih povezanih konfiguracijskih parametara (kao što je podmrežna maska i zadani pristupnik) klijentu na mreži.

DHCP je važan jer sprječava sistemskog ili mrežnog administratora da ručno konfigurira IP adrese za nova računala dodana mreži ili računala koja se premještaju iz jedne podmreže u drugu.

IP adresa koju je DHCP poslužitelj dodijelio DHCP klijentu je “zakupljena”, vrijeme zakupa obično varira ovisno o tome koliko dugo klijentsko računalo će vjerojatno zahtijevati vezu ili DHCP konfiguraciju.

U ovom ćemo članku objasniti kako konfigurirati DHCP poslužitelj u CentOS i Ubuntu Linux distribucijama za automatsku dodjelu IP adrese klijentskom računalu.

Instaliranje DHCP poslužitelja u CentOS i Ubuntu

Paket poslužitelja DCHP dostupan je u službenim repozitorijima mainstream distribucija Linuxa, instalacija je prilično jednostavna, jednostavno pokrenite sljedeću naredbu.

yum install dhcp		        #CentOS
sudo apt install isc-dhcp-server	#Ubuntu

Kada instalacija završi, konfigurirajte sučelje na kojem želite da DHCP demon poslužuje zahtjeve u konfiguracijskoj datoteci /etc/default/isc-dhcp-server ili /etc/sysconfig/dhcpd.

vim /etc/sysconfig/dhcpd		 #CentOS
sudo vim /etc/default/isc-dhcp-server	 #Ubuntu

Na primjer, ako želite da DHCPD demon sluša eth0, postavite ga pomoću sljedeće direktive.

DHCPDARGS=”eth0”

Spremite datoteku i izađite.

Konfiguriranje DHCP poslužitelja u CentOS-u i Ubuntuu

Glavna konfiguracijska datoteka DHCP nalazi se na /etc/dhcp/dhcpd.conf, koja bi trebala sadržavati postavke što učiniti, gdje nešto učiniti i sve mrežne parametre koje treba pružiti klijentima.

Ova se datoteka u osnovi sastoji od popisa izjava grupiranih u dvije široke kategorije:

  • Globalni parametri: odredite kako izvršiti zadatak, hoćete li izvršiti zadatak ili koje parametre konfiguracije mreže dati DHCP klijentu.
  • Deklaracije: definirajte topologiju mreže, navedite klijente u kojima se nalaze, ponudite adrese za klijente ili primijenite grupu parametara na grupu deklaracija.

Sada otvorite i uredite konfiguracijsku datoteku da biste konfigurirali svoj DHCP poslužitelj.

------------ On CentOS ------------ 
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf	
vi /etc/dhcp/dhcpd.conf	

------------ On Ubuntu ------------
sudo vim /etc/dhcp/dhcpd.conf				

Započnite definiranjem globalnih parametara koji su zajednički za sve podržane mreže, na vrhu datoteke. Primjenjivat će se na sve deklaracije:

option domain-name "tecmint.lan";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600; 
max-lease-time 7200;
authoritative;

Zatim trebate definirati podmrežu za internu podmrežu, npr. 192.168.1.0/24 kao što je prikazano.

subnet 192.168.1.0 netmask 255.255.255.0 {
        option routers                  192.168.1.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.1.1;
        range   192.168.10.10   192.168.10.100;
        range   192.168.10.110   192.168.10.200;
}

Imajte na umu da se hostovi koji zahtijevaju posebne opcije konfiguracije mogu navesti u izjavama hosta (pogledajte man stranicu dhcpd.conf).

Sada kada ste konfigurirali svoj demon poslužitelja DHCP, trebate pokrenuti uslugu na srednje vrijeme i omogućiti joj da se automatski pokrene od sljedećeg pokretanja sustava, te provjeriti je li pokrenut i radi pomoću sljedećih naredbi.

------------ On CentOS ------------ 
systemctl start dhcpd
systemctl enable dhcpd
systemctl enable dhcpd

------------ On Ubuntu ------------
sudo systemctl start isc-dhcp-server
sudo systemctl enable isc-dhcp-server
sudo systemctl enable isc-dhcp-server

Zatim dopustite zahtjeve DHCP demonu na vatrozidu, koji sluša port 67/UDP, pokretanjem.

------------ On CentOS ------------ 
firewall-cmd --zone=public --permanent --add-service=dhcp
firewall-cmd --reload 

#------------ On Ubuntu ------------
sudo ufw allow 67/udp
sudo ufw reload

Konfiguriranje DHCP klijenata

Konačno, trebate testirati radi li DHCP poslužitelj dobro. Prijavite se na nekoliko klijentskih računala na mreži i konfigurirajte ih da automatski primaju IP adrese od poslužitelja.

Izmijenite odgovarajuću konfiguracijsku datoteku za sučelje na kojem će klijenti automatski primati IP adrese.

Postavljanje DHCP klijenta na CentOS-u

Na CentOS-u, konfiguracijske datoteke sučelja nalaze se na /etc/sysconfig/network-scripts/.

vim /etc/sysconfig/network-scripts/ifcfg-eth0

Dodajte opcije u nastavku:

DEVICE=eth0
BOOTPROTO=dhcp
TYPE=Ethernet
ONBOOT=yes

Spremite datoteku i ponovno pokrenite mrežni servis (ili ponovno pokrenite sustav).

systemctl restart network

Postavljanje DHCP klijenta na Ubuntu

Na Ubuntu 16.04 možete konfigurirati sva sučelja u konfiguracijskoj datoteci /etc/network/interfaces.

   
sudo vi /etc/network/interfaces

Dodajte ove retke u njega:

auto  eth0
iface eth0 inet dhcp

Spremite datoteku i ponovno pokrenite mrežne usluge (ili ponovno pokrenite sustav).

sudo systemctl restart networking

Na Ubuntu 18.04, umrežavanje kontrolira program Netplan. Morate urediti odgovarajuću datoteku u direktoriju /etc/netplan/, na primjer.

sudo vim /etc/netplan/01-netcfg.yaml 

Zatim omogućite dhcp4 pod određenim sučeljem, na primjer pod ethernets, ens0, i komentirajte konfiguracije koje se odnose na statički IP:

network:
  version: 2
  renderer: networkd
  ethernets:
    ens0:
      dhcp4: yes

Spremite promjene i pokrenite sljedeću naredbu da izvršite promjene.

sudo netplan apply 

Za više informacija pogledajte stranice priručnika dhcpd i dhcpd.conf.

man dhcpd
man dhcpd.conf

U ovom smo članku objasnili kako konfigurirati DHCP poslužitelj u distribucijama Linuxa CentOS i Ubuntu. Ako trebate dodatna pojašnjenja o bilo kojoj točki, možete postaviti pitanje putem donjeg obrasca za povratne informacije ili jednostavno podijeliti svoje komentare s nama.