Cos'è DHCP
Dynamic Host Configuration Protocol (DHCP) consente alle macchine client di ottenere automaticamente le informazioni sulla configurazione di rete da un server DHCP ogni volta che si connettono alla rete. Il server DHCP è configurato con un intervallo di indirizzi IP e altri parametri di configurazione della rete.
Quando la macchina client è configurata per utilizzare DHCP, il daemon del client, dhclient , contatta il demone del server, dhcpd, per ottenere i parametri di rete. Poiché il DHCP è basato sulla trasmissione, sia il client che il server devono trovarsi sulla stessa sottorete.
Quando la macchina client è configurata per utilizzare DHCP, il daemon del client, dhclient, contatta il daemon del server, dhcpd, per ottenere i parametri di rete. Poiché il DHCP è basato sulla trasmissione, sia il client che il server devono trovarsi sulla stessa sottorete.
I vantaggi dell'utilizzo di DHCP includono la facilità di aggiungere una nuova macchina client alla rete e la gestione centralizzata degli indirizzi IP. Inoltre, il numero totale di indirizzi IP necessari è ridotto perché gli indirizzi IP possono essere riutilizzati. DHCP è utile anche se si desidera modificare gli indirizzi IP di un gran numero di sistemi. Invece di riconfigurare ogni sistema individualmente, modifica il file di configurazione DHCP sul server e inserisci il nuovo set di indirizzi IP.
Configurazione del server DHCP
Per configurare un sistema come server DHCP, installare il pacchetto DHCP:
# yum install dhcp
Il file di configurazione principale per DHCP è /etc/dhcp/dhcpd.conf . Utilizzare questo file per memorizzare le informazioni di rete per i client. Un file di configurazione di esempio viene installato anche con il pacchetto dhcp:/usr/share/doc/dhcp-[version]/dhcpd.conf.sample . Puoi copiare questo file in /etc/dhcp/dhcpd.conf e usarlo come modello. Fare riferimento al post seguente per ottenere dettagli sui parametri di configurazione nel file di configurazione /etc/dhcp/dhcpd.conf.
Spiegazione del file di configurazione DHCP /etc/dhcp/dhcpd.confAvvia/arresta server DHCP
Utilizzare il comando systemctl per abilitare l'avvio del servizio dhcpd all'avvio:
# systemctl enable dhcpd ln –s ‘/usr/lib/systemd/system/dhcpd.service’ ‘/etc/systemd/system/multi-user.target.wants/dhcpd.service’
Si noti che il comando abilita un servizio creando un collegamento simbolico per la destinazione dello stato del sistema di livello più basso in cui viene avviato il servizio. Nell'esempio, il comando crea il collegamento simbolico dhcpd.service per la destinazione multiutente.
Utilizzare il comando systemctl per disabilitare l'avvio del servizio dhcpd all'avvio. Il collegamento simbolico viene rimosso quando il servizio è disabilitato:
# systemctl disable httpd rm ‘/etc/systemd/system/multi-user.target.wants/httpd.service’
Utilizzare il comando systemctl per avviare il servizio dhcpd:
# systemctl start httpd
Il servizio dhcpd non si avvia se /var/lib/dhcpd/dhcpd.leases il file non esiste. È possibile utilizzare il comando touch per creare il file. Il file dhcpd.leases memorizza le informazioni sul leasing del client. Non modificare questo file manualmente.
CentOS / RHEL 7:come specificare gli argomenti e le opzioni della riga di comando all'avvio del servizio dhcpdConfigurazione client DHCP
1. Per configurare un sistema come client DHCP, installare il pacchetto dhclient:
# yum install dhclient
2. Modificare BOOTPROTO direttiva nella /etc/sysconfig/network-scripts/ifcfg-[interface] file per il dispositivo su dhcp . Ad esempio, per utilizzare DHCP su ens33, eseguire quanto segue:
# cat /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=bbe539aa-5042-4d28-a0e6-2a4d4f5dd744 DEVICE=ens33 ONBOOT=no PEERDNS=yes PEERROUTES=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes
3. È inoltre necessario riavviare il servizio di rete sul client DHCP.
# systemctl restart network
4. La prossima volta che il sistema client si connette alla rete, dhclient richiede un lease dal server DHCP e configura l'interfaccia di rete del client. Puoi anche eseguire dhclient dalla riga di comando per richiedere un contratto di locazione e stabilire una connessione:
# dhclient
5. Per richiedere su un'interfaccia specifica, includere l'interfaccia come argomento. L'esempio seguente richiede un leasing solo per ens33:
# dhclient ens33
Il file di configurazione del client DHCP, /etc/dhcp/dhclient.conf , è richiesto solo per le configurazioni personalizzate. Esiste un file di esempio in /usr/share/doc/dhclient-[version]/dhclient.conf.example . Quando il cliente ha richiesto e stabilito un contratto di locazione, le informazioni sul contratto di locazione vengono archiviate in /var/lib/dhclient/dhclient.leases . Ad esempio:
# cat /var/lib/dhclient/dhclient.leases lease { interface "ens33"; fixed-address 192.168.219.149; option subnet-mask 255.255.255.0; option routers 192.168.219.2; option dhcp-lease-time 1800; option dhcp-message-type 5; option domain-name-servers 192.168.219.2; option dhcp-server-identifier 192.168.219.254; option broadcast-address 192.168.219.255; option domain-name "localdomain"; renew 5 2017/10/20 06:50:39; rebind 5 2017/10/20 07:02:37; expire 5 2017/10/20 07:06:22; }