Cum se instalează un server DHCP în Ubuntu și Debian


Protocolul de configurare dinamică a gazdei (DHCP) este un protocol de rețea care este utilizat pentru a permite computerelor gazdă să li se atribuie automat adrese IP și configurații de rețea aferente de la un server.

Adresa IP atribuită de un server DHCP clientului DHCP este în „închiriere”, timpul de închiriere variază în mod normal în funcție de cât de mult timp un computer client este probabil să necesite conexiunea sau configurarea DHCP.

Cum funcționează DHCP?

Următoarea este o descriere rapidă a modului în care funcționează de fapt DHCP:

  • Odată ce un client (care este configurat să utilizeze DHCP) și conectat la o rețea pornește, acesta trimite un pachet DHCPDISCOVER către serverul DHCP.
  • Când serverul DHCP primește pachetul de solicitare DHCPDISCOVER, acesta răspunde cu un pachet DHCPOFFER.
  • Apoi, clientul primește pachetul DHCPOFFER și trimite un pachet DHCPREQUEST către server care arată că este gata să primească informațiile de configurare a rețelei furnizate în Pachetul DHCPOFFER.
  • În sfârșit, după ce serverul DHCP primește pachetul DHCPREQUEST de la client, trimite pachetul DHCPACK care arată că clientul are acum permisiunea de a utiliza adresa IP atribuită lui ea.

În acest articol, vă vom arăta cum să configurați un server DHCP în Ubuntu/Debian Linux și vom rula toate comenzile cu comanda sudo pentru a obține privilegii de utilizator root.

Configurarea mediului de testare

Vom folosi următorul mediu de testare pentru această configurare.

DHCP Server - Ubuntu 16.04 
DHCP Clients - CentOS 7 and Fedora 25

Pasul 1: Instalarea serverului DHCP în Ubuntu

1. Rulați comanda de mai jos pentru a instala pachetul de server DCHP, care era cunoscut anterior ca dhcp3-server.

$ sudo apt install isc-dhcp-server

2. Când instalarea se încheie, editați fișierul /etc/default/isc-dhcp-server pentru a defini interfețele pe care DHCPD ar trebui să le folosească pentru a servi cererile DHCP, cu opțiunea INTERFACES .

De exemplu, dacă doriți ca demonul DHCPD să asculte pe eth0, setați-l astfel:

INTERFACES="eth0"

Și, de asemenea, aflați cum să configurați o adresă IP statică pentru interfața de mai sus.

Pasul 2: Configurarea serverului DHCP în Ubuntu

3. Fișierul principal de configurare DHCP este /etc/dhcp/dhcpd.conf, trebuie să adăugați toate informațiile de rețea pentru a fi trimise clienților aici.

Și, există două tipuri de instrucțiuni definite în fișierul de configurare DHCP, acestea sunt:

  • parametri – specificați cum să efectuați o sarcină, dacă să efectuați o sarcină sau ce opțiuni de configurare a rețelei să trimiteți clientului DHCP.
  • declarații – definiți topologia rețelei, precizați clienții, oferiți adrese pentru clienți sau aplicați un grup de parametri unui grup de declarații.

4. Acum, deschideți și modificați fișierul principal de configurare, definiți opțiunile serverului dvs. DHCP:

$ sudo vi /etc/dhcp/dhcpd.conf 

Setați următorii parametri globali în partea de sus a fișierului, aceștia se vor aplica tuturor declarațiilor de mai jos (specificați valorile care se aplică scenariului dvs.):

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

5. Acum, definiți o subrețea; aici, vom configura DHCP pentru rețeaua LAN 192.168.10.0/24 (utilizați parametrii care se aplică scenariului dvs.).

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

Pasul 3: Configurați IP-ul static pe mașina client DHCP

6. Pentru a atribui o adresă IP fixă (statică) unui anumit computer client, adăugați secțiunea de mai jos unde trebuie să specificați în mod explicit adresele MAC ale acesteia și IP-ul care urmează să fie atribuit static:

host centos-node {
	 hardware ethernet 00:f0:m4:6y:89:0g;
	 fixed-address 192.168.10.105;
 }

host fedora-node {
	 hardware ethernet 00:4g:8h:13:8h:3a;
	 fixed-address 192.168.10.106;
 }

Salvați fișierul și închideți-l.

7. Apoi, porniți serviciul DHCP pentru moment și activați-l să pornească automat de la următoarea pornire a sistemului, astfel:

------------ SystemD ------------ 
$ sudo systemctl start isc-dhcp-server.service
$ sudo systemctl enable isc-dhcp-server.service


------------ SysVinit ------------ 
$ sudo service isc-dhcp-server.service start
$ sudo service isc-dhcp-server.service enable

8. În continuare, nu uitați să permiteți serviciul DHCP (demonul DHCPD ascultă pe portul 67/UDP) pe firewall, după cum urmează:

$ sudo ufw allow  67/udp
$ sudo ufw reload
$ sudo ufw show

Pasul 4: Configurarea mașinilor client DHCP

9. În acest moment, puteți configura computerele clienților dvs. din rețea pentru a primi automat adrese IP de la serverul DHCP.

Conectați-vă la computerele client și editați fișierul de configurare a interfeței Ethernet după cum urmează (rețineți numele/numărul interfeței):

$ sudo vi /etc/network/interfaces

Și definiți opțiunile de mai jos:

auto  eth0
iface eth0 inet dhcp

Salvați fișierul și ieșiți. Și reporniți serviciile de rețea așa (sau reporniți sistemul):

------------ SystemD ------------ 
$ sudo systemctl restart networking

------------ SysVinit ------------ 
$ sudo service networking restart

Alternativ, utilizați GUI pe o mașină desktop pentru a efectua setările, setați Metoda la Automatic (DHCP) așa cum se arată în captura de ecran de mai jos (desktop Fedora 25).

În acest moment, dacă toate setările sunt configurate corect, computerul dvs. client ar trebui să primească adrese IP automat de la serverul DHCP.

Asta este! În acest tutorial, v-am arătat cum să configurați un server DHCP în Ubuntu/Debian. Împărtășiți-vă gândurile cu noi prin secțiunea de feedback de mai jos. Dacă utilizați distribuție bazată pe Fedora, parcurgeți cum să configurați un server DHCP în CentOS/RHEL.