Cum se instalează un server DHCP în CentOS, RHEL și Fedora


DHCP (Dynamic Host Configuration Protocol) este un protocol de rețea care permite unui server să aloce automat o adresă IP și să furnizeze alți parametri de configurare a rețelei corelați unui client dintr-o rețea, de la un pool de IP predefinit.

Aceasta înseamnă că de fiecare dată când un client (conectat la rețea) pornește, acesta primește o adresă IP „dinamică”, spre deosebire de adresa IP „statică”, care nu se schimbă niciodată. Adresa IP atribuită de un server DHCP clientului DHCP este pe o „închiriere”, timpul de închiriere poate varia în funcție de cât timp este probabil ca un client să necesite conexiunea sau configurația DHCP.

În acest tutorial, vom trata cum să instalați și să configurați un server DHCP în distribuțiile CentOS/RHEL și Fedora.

Configurarea mediului de testare

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

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

Cum funcționează DHCP?

Înainte de a trece mai departe, să explicăm pe scurt cum funcționează DHCP:

  • Când un computer client (configurat să utilizeze DHCP) și conectat la o rețea este pornit, acesta redirecționează un mesaj DHCPDISCOVER către serverul DHCP.
  • Și după ce serverul DHCP primește mesajul de solicitare DHCPDISCOVER, acesta răspunde cu un mesaj DHCPOFFER.
  • Apoi, clientul primește mesajul DHCPOFFER și trimite un mesaj DHCPREQUEST către server, indicând că este pregătit să primească configurația de rețea oferită în Mesaj DHCPOFFER.
  • Nu în ultimul rând, serverul DHCP primește mesajul DHCPREQUEST de la client și trimite mesajul DHCPACK care arată că clientul are acum permisiunea de a utiliza adresa IP atribuit acestuia.

Pasul 1: Instalarea serverului DHCP în CentOS

1. Instalarea DCHP este destul de simplă, pur și simplu rulați comanda de mai jos.

# yum -y install dhcp

Important: presupunând că există mai mult de o interfață de rețea atașată la sistem, dar doriți ca serverul DHCP să fie pornit numai pe una dintre interfețe, setați Serverul DHCP să pornească numai pe acea interfață, după cum urmează.

2. Deschideți fișierul /etc/sysconfig/dhcpd, adăugați numele interfeței specifice la lista de DHCPDARGS, de exemplu dacă interfața este eth0, apoi adăugați:

DHCPDARGS=eth0

Salvați fișierul și ieșiți.

Pasul 2: Configurarea serverului DHCP în CentOS

3. Pentru început, pentru a configura un server DHCP, primul pas este să creați fișierul de configurare dhcpd.conf, iar fișierul principal de configurare DHCP este în mod normal / etc/dhcp/dhcpd.conf(care este gol implicit), păstrează toate informațiile de rețea trimise clienților.

Cu toate acestea, există un exemplu de fișier de configurare /usr/share/doc/dhcp*/dhcpd.conf.sample, care este un bun punct de plecare pentru configurarea unui server DHCP.

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

  • parametri – precizează cum se realizează o sarcină, dacă se realizează o sarcină sau ce opțiuni de configurare a rețelei să trimită către clientul DHCP.
  • declarații – specificați topologia rețelei, definiți clienții, oferiți adrese pentru clienți sau aplicați un grup de parametri unui grup de declarații.

Prin urmare, începeți prin a copia fișierul de configurare exemplu ca fișier de configurare principal astfel:

# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 

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

# vi /etc/dhcp/dhcpd.conf 

Începeți prin a seta următorii parametri globali care se vor aplica tuturor subrețelelor (specificați valorile care se aplică scenariului dvs.) în partea de sus a fișierului:

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; în acest exemplu, vom configura DHCP pentru rețeaua LAN 192.168.56.0/24 (nu uitați să utilizați parametrii care se aplică scenariului dvs.):

subnet 192.168.56.0 netmask 255.255.255.0 {
        option routers                  192.168.56.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.56.1;
        range   192.168.56.10   192.168.56.100;
        range   192.168.56.120  192.168.56.200;
}

Pasul 3: Atribuiți IP static clientului DHCP

Puteți atribui o adresă IP statică unui anumit computer client din rețea, pur și simplu definiți secțiunea de mai jos în fișierul /etc/dhcp/dhcpd.conf, unde trebuie să specificați în mod explicit adresele MAC ale acesteia și IP de atribuit:

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

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

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

Notă: puteți afla sau afișa adresa MAC Linux utilizând următoarea comandă.

# ifconfig -a eth0 | grep HWaddr

6. Acum porniți serviciul DHCP între timp și activați-l să pornească automat de la următoarea pornire a sistemului, folosind următoarele comenzi:

---------- On CentOS/RHEL 7 ---------- 
# systemctl start dhcpd
# systemctl enable dhcpd

---------- On CentOS/RHEL 6 ----------
# service dhcpd start
# chkconfig dhcpd on

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

---------- On CentOS/RHEL 7 ----------
# firewall-cmd --add-service=dhcp --permanent 
# firewall-cmd --reload 

---------- On CentOS/RHEL 6 ----------
# iptables -A INPUT -p tcp -m state --state NEW --dport 67 -j ACCEPT
# service iptables save

Pasul 4: Configurarea clienților DHCP

8. Acum, vă puteți configura clienții din rețea pentru a primi automat adrese IP de la serverul DHCP. Conectați-vă la computerul client și modificați fișierul de configurare a interfeței Ethernet după cum urmează (nu luați numele/numărul interfeței):

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

Adăugați opțiunile de mai jos:

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

Salvați fișierul și ieșiți.

9. De asemenea, puteți efectua setările folosind GUI pe un computer desktop, setați Metoda la Automatic (DHCP) așa cum se arată în captura de ecran de mai jos (desktop Ubuntu 16.04).

10. Apoi reporniți serviciile de rețea după cum urmează (puteți reporni sistemul):

---------- On CentOS/RHEL 7 ----------
# systemctl restart network

---------- On CentOS/RHEL 6 ----------
# service network restart

În acest moment, dacă toate setările au fost corecte, clienții dvs. ar trebui să primească adrese IP automat de la serverul DHCP.

De asemenea, puteți citi:

  1. Cum se instalează și se configurează serverul DHCP ISC multihomed pe Debian Linux
  2. 10 comenzi „IP” utile pentru a configura interfețele de rețea

În acest tutorial, v-am arătat cum să configurați un server DHCP în RHEL/CentOS. Folosește formularul de comentarii de mai jos pentru a ne scrie înapoi. Într-un articol viitor, vă vom arăta cum să configurați un server DHCP în Debian/Ubuntu. Până atunci, rămâneți mereu conectat la TecMint.