Com instal·lar un servidor DHCP a CentOS, RHEL i Fedora


DHCP (Dynamic Host Configuration Protocol) és un protocol de xarxa que permet a un servidor assignar automàticament una adreça IP i proporcionar altres paràmetres de configuració de xarxa relacionats a un client d'una xarxa, des d'un grup IP predefinit.

Això vol dir que cada vegada que un client (connectat a la xarxa) s'engega, obté una adreça IP dinàmica, a diferència de l'adreça IP estàtica que no canvia mai. L'adreça IP assignada per un servidor DHCP al client DHCP és en un \arrendament, el temps d'arrendament pot variar en funció de quant de temps és probable que un client requereixi la connexió o la configuració de DHCP.

En aquest tutorial, explicarem com instal·lar i configurar un servidor DHCP a les distribucions CentOS/RHEL i Fedora.

Utilitzarem el següent entorn de prova per a aquesta configuració.

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

Abans d'avançar, expliquem breument com funciona DHCP:

  • Quan un ordinador client (configurat per utilitzar DHCP) i connectat a una xarxa està encès, reenvia un missatge DHCPDISCOVER al servidor DHCP.
  • I després que el servidor DHCP rep el missatge de sol·licitud DHCPDISCOVER, respon amb un missatge DHCPOFFER.
  • A continuació, el client rep el missatge DHCPOFFER i envia un missatge DHCPREQUEST al servidor indicant que està preparat per obtenir la configuració de xarxa que s'ofereix al missatge DHCPOFFER.
  • Per últim, però no menys important, el servidor DHCP rep el missatge DHCPREQUEST del client i envia el missatge DHCPACK que mostra que ara el client té permís per utilitzar l'adreça IP que se li assigna.

Pas 1: instal·lació del servidor DHCP a CentOS

1. La instal·lació de DCHP és bastant senzilla, només cal que executeu l'ordre següent.

# yum -y install dhcp

Important: Suposant que hi ha més d'una interfície de xarxa connectada al sistema, però voleu que el servidor DHCP només s'iniciï en una de les interfícies, configureu el servidor DHCP perquè s'iniciï només en aquesta interfície de la manera següent.

2. Obriu el fitxer /etc/sysconfig/dhcpd, afegiu el nom de la interfície específica a la llista de DHCPDARGS, per exemple si la interfície és eth0 i, a continuació, afegiu:

DHCPDARGS=eth0

Desa el fitxer i surt.

Pas 2: Configuració del servidor DHCP a CentOS

3. Per començar, per configurar un servidor DHCP, el primer pas és crear el fitxer de configuració dhcpd.conf, i el fitxer de configuració DHCP principal és normalment /etc/dhcp/dhcpd.conf (que és buit per defecte), conserva tota la informació de xarxa enviada als clients.

Tanmateix, hi ha un fitxer de configuració de mostra /usr/share/doc/dhcp*/dhcpd.conf.sample, que és un bon punt de partida per configurar un servidor DHCP.

A més, hi ha dos tipus de declaracions definides al fitxer de configuració DHCP, aquests són:

  • paràmetres: indiqueu com dur a terme una tasca, si s'ha de realitzar una tasca o quines opcions de configuració de xarxa cal enviar al client DHCP.
  • declaracions: especifiqueu la topologia de la xarxa, definiu els clients, oferiu adreces per als clients o apliqueu un grup de paràmetres a un grup de declaracions.

Per tant, comenceu copiant el fitxer de configuració de mostra com a fitxer de configuració principal de la següent manera:

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

4. Ara, obriu el fitxer de configuració principal i definiu les opcions del vostre servidor DHCP:

# vi /etc/dhcp/dhcpd.conf 

Comenceu configurant els següents paràmetres globals que s'aplicaran a totes les subxarxes (especifiqueu els valors que s'apliquen al vostre escenari) a la part superior del fitxer:

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. Ara, definiu una subxarxa; en aquest exemple, configurarem DHCP per a la xarxa LAN 192.168.56.0/24 (recordeu utilitzar els paràmetres que s'apliquen al vostre escenari):

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;
}

Pas 3: assigneu una IP estàtica al client DHCP

Podeu assignar una adreça IP estàtica a un ordinador client específic de la xarxa, simplement definiu la secció següent al fitxer /etc/dhcp/dhcpd.conf, on heu d'especificar explícitament les seves adreces MAC i la IP fixa que cal assignar:

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;
 }

Deseu el fitxer i tanqueu-lo.

Nota: podeu esbrinar o mostrar l'adreça MAC de Linux mitjançant l'ordre següent.

# ifconfig -a eth0 | grep HWaddr

6. Ara inicieu el servei DHCP durant el temps mitjà i activeu-lo perquè s'iniciï automàticament des de la següent arrencada del sistema, utilitzant les ordres següents:

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

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

7. A continuació, no oblideu permetre el servei DHCP (el dimoni DHCPD escolta al port 67/UDP) com es mostra a continuació:

---------- 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

Pas 4: Configuració dels clients DHCP

8. Ara, podeu configurar els vostres clients a la xarxa perquè rebin automàticament adreces IP del servidor DHCP. Inicieu sessió a la màquina client i modifiqueu el fitxer de configuració de la interfície Ethernet de la manera següent (no preneu el nom/número de la interfície):

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

Afegiu les opcions següents:

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

Desa el fitxer i surt.

9. També podeu realitzar la configuració mitjançant la GUI en un ordinador d'escriptori, establir el mètode a Automàtic (DHCP) tal com es mostra a la captura de pantalla següent (escriptori Ubuntu 16.04).

10. A continuació, reinicieu els serveis de xarxa de la manera següent (podeu reiniciar el sistema):

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

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

En aquest punt, si tots els paràmetres eren correctes, els vostres clients haurien d'estar rebent adreces IP automàticament del servidor DHCP.

També podeu llegir:

  1. Com instal·lar i configurar el servidor DHCP ISC multihomed a Debian Linux
  2. 10 ordres \IP útils per configurar les interfícies de xarxa

En aquest tutorial, us vam mostrar com configurar un servidor DHCP a RHEL/CentOS. Utilitzeu el formulari de comentaris a continuació per tornar-nos a escriure. En un article proper, us mostrarem com configurar un servidor DHCP a Debian/Ubuntu. Fins aleshores, manteniu-vos sempre connectat a TecMint.