Quando un computer viene collegato a una rete aziendale, non è sufficiente stabilire un collegamento fisico tramite cavo Ethernet o Wi-Fi. Il dispositivo deve ricevere una serie di parametri di rete che gli permettano di comunicare correttamente con gli altri sistemi e di raggiungere Internet. Tra questi parametri troviamo soprattutto indirizzo IP, subnet mask, gateway predefinito e server DNS.
Il DHCP, Dynamic Host Configuration Protocol, è il protocollo che permette di assegnare automaticamente queste informazioni ai dispositivi della rete. Senza DHCP sarebbe necessario configurare manualmente ogni computer, stampante, smartphone, access point o altro dispositivo, aumentando considerevolmente il rischio di errori e conflitti di indirizzi.
In una rete aziendale il DHCP rappresenta quindi uno dei servizi fondamentali dell'infrastruttura IP e deve essere progettato considerando numero di dispositivi, subnet, VLAN, segmentazione e crescita futura della rete.
Come avviene realmente l'assegnazione dell'indirizzo IP
Quando un dispositivo si collega alla rete e non dispone ancora di un indirizzo IP valido, avvia il processo DHCP inviando una richiesta denominata DHCP Discover. In questa fase il client cerca un server DHCP disponibile.
Il server riceve la richiesta e può rispondere con un DHCP Offer, proponendo al dispositivo un indirizzo IP insieme agli altri parametri necessari per la configurazione della rete.
Il client invia quindi un DHCP Request, comunicando di voler utilizzare la configurazione proposta. Il server conclude il processo attraverso un DHCP ACK, confermando l'assegnazione.
Questo meccanismo viene spesso riassunto attraverso le quattro fasi Discover, Offer, Request e Acknowledgment, ma dietro questa sequenza esistono diversi parametri che determinano concretamente come il dispositivo verrà configurato.
Perché all'inizio il dispositivo non ha un IP
Una delle caratteristiche interessanti del DHCP è che il client deve riuscire a comunicare con il server DHCP prima di possedere un normale indirizzo IP configurato.
Per questo le prime comunicazioni vengono effettuate utilizzando meccanismi di broadcast a livello di rete locale. Il client utilizza informazioni come l'indirizzo MAC della propria interfaccia per identificarsi e permettere al server di riconoscere la richiesta.
Il funzionamento cambia quando il server DHCP si trova su una rete o VLAN differente. In questo caso il broadcast DHCP non attraversa normalmente un router e viene utilizzato un DHCP Relay, che inoltra le richieste verso il server DHCP appropriato.
Il DHCP Relay nelle reti aziendali
Il DHCP Relay diventa particolarmente importante quando un'infrastruttura aziendale utilizza più VLAN e subnet.
Immaginiamo una rete nella quale gli utenti si trovano nella VLAN 10, i server nella VLAN 20 e i dispositivi VoIP nella VLAN 30. Il server DHCP potrebbe trovarsi solamente nella VLAN 20.
Quando un PC della VLAN 10 invia una richiesta DHCP, il router o lo switch Layer 3 può intercettare la richiesta e inoltrarla al server DHCP attraverso il relay.
In questo modo non è necessario installare un server DHCP separato in ogni subnet.
Questa configurazione è molto comune nelle reti aziendali perché permette di centralizzare la gestione degli indirizzi mantenendo contemporaneamente una struttura di rete segmentata.
Il DHCP non assegna solamente l'indirizzo IP
Uno degli errori più comuni è pensare che il DHCP serva esclusivamente ad assegnare un indirizzo IP. In realtà il server può fornire una serie molto più ampia di parametri.
Tra i principali troviamo la subnet mask, che determina la dimensione della rete, il default gateway, utilizzato per raggiungere reti differenti, e uno o più server DNS, necessari per risolvere i nomi a dominio.
Possono inoltre essere distribuite altre informazioni, come server NTP, domain name e parametri specifici utilizzati da determinati dispositivi.
Il risultato è che un computer può essere collegato alla rete e diventare operativo senza che l'utente debba inserire manualmente nessuno di questi valori.
Il concetto di DHCP Lease
L'indirizzo IP assegnato dal DHCP non deve necessariamente essere permanente. Normalmente viene concesso per un determinato periodo chiamato lease time.
Il server mantiene quindi una sorta di associazione temporanea tra dispositivo e indirizzo IP.
Prima della scadenza il client può richiedere il rinnovo del lease. Se il dispositivo continua a utilizzare la rete e il server conferma la disponibilità dell'indirizzo, l'assegnazione viene prolungata.
Questo meccanismo permette di riutilizzare gli indirizzi IP quando i dispositivi non sono più presenti sulla rete.
In una rete con molti dispositivi temporanei, come una rete Wi-Fi aziendale, la gestione corretta del lease può diventare particolarmente importante.
Pool DHCP e intervallo degli indirizzi
Il server DHCP generalmente utilizza un pool di indirizzi, cioè un intervallo dal quale può prelevare gli IP da assegnare ai client.
Se una subnet utilizza, ad esempio, 192.168.10.0/24, il pool potrebbe essere configurato solamente su una parte degli indirizzi disponibili.
La scelta dell'intervallo deve essere fatta considerando anche gli indirizzi utilizzati staticamente.
Non sarebbe corretto assegnare tramite DHCP un indirizzo che è già stato configurato manualmente su un server o su una stampante, perché potrebbe verificarsi un IP conflict.
Per questo una progettazione corretta separa normalmente gli indirizzi riservati ai dispositivi con configurazione statica dal range utilizzato dal DHCP.
DHCP Reservation
In una rete aziendale esistono dispositivi che devono mantenere sempre lo stesso indirizzo IP, pur continuando a utilizzare DHCP.
È qui che entra in gioco la DHCP Reservation.
Il server associa il MAC address del dispositivo a uno specifico indirizzo IP. Ogni volta che quel dispositivo richiede una configurazione DHCP, il server gli assegna lo stesso IP.
Questo approccio può essere molto utile per stampanti, NAS, access point e altri dispositivi che devono essere facilmente raggiungibili sulla rete.
La reservation presenta inoltre il vantaggio di centralizzare la configurazione invece di impostare manualmente l'indirizzo direttamente sul dispositivo.
DHCP e DNS lavorano insieme
DHCP e DNS svolgono funzioni differenti ma nella pratica lavorano spesso insieme.
Il DHCP assegna al dispositivo il server DNS che dovrà utilizzare per risolvere i nomi. Quando l'utente apre un sito o raggiunge un servizio aziendale attraverso un hostname, il sistema utilizza quindi il DNS per trasformare il nome in un indirizzo IP.
In un'infrastruttura Windows con Active Directory, questa relazione diventa particolarmente importante perché il DNS interno viene utilizzato anche per individuare diversi servizi del dominio.
Una configurazione errata del DHCP può quindi produrre problemi apparentemente legati a Internet o ad Active Directory quando, in realtà, il problema riguarda i parametri DNS ricevuti dal client.
DHCP e Active Directory
In un ambiente Windows aziendale, il DHCP deve essere configurato in modo coerente con la struttura DNS e Active Directory.
Quando un computer entra nel dominio, deve poter raggiungere correttamente i server DNS interni e i domain controller. Se il DHCP distribuisce DNS pubblici invece dei DNS aziendali previsti, il dispositivo potrebbe avere accesso a Internet ma non riuscire a risolvere correttamente i nomi dei servizi interni.
Questo è un esempio importante di come un servizio apparentemente semplice come il DHCP possa influenzare direttamente il funzionamento dell'intera infrastruttura IT.
Come verificare la configurazione DHCP su Windows
Su Windows è possibile controllare i parametri ricevuti dal DHCP attraverso il comando:
ipconfig /all
L'output permette di visualizzare informazioni come indirizzo IPv4, subnet mask, gateway, server DHCP e server DNS.
È inoltre possibile utilizzare:
ipconfig /release
per rilasciare la configurazione DHCP e:
ipconfig /renew
per richiedere una nuova configurazione.
Questi comandi sono particolarmente utili durante la diagnostica di problemi di connettività, perché permettono di verificare se il computer sta effettivamente ricevendo correttamente i parametri dalla rete.
Cosa succede quando il DHCP non funziona
Se il client non riesce a raggiungere il server DHCP, Windows può assegnarsi automaticamente un indirizzo appartenente all'intervallo APIPA, normalmente 169.254.0.0/16.
Un indirizzo di questo tipo è un importante indizio diagnostico. Significa generalmente che il dispositivo non ha ricevuto una configurazione DHCP valida.
La causa può trovarsi nel collegamento fisico, nello switch, nella VLAN, nel DHCP Relay, nel server DHCP oppure nelle policy di rete.
Per questo vedere un indirizzo 169.254.x.x non significa necessariamente che il problema sia il server DHCP: è necessario analizzare l'intero percorso della comunicazione.
Sicurezza e DHCP Snooping
In una rete aziendale il DHCP deve essere considerato anche dal punto di vista della sicurezza.
Un attaccante o un dispositivo non autorizzato potrebbe avviare un falso server DHCP e distribuire ai client parametri di rete manipolati. Potrebbe, ad esempio, indicare un gateway controllato dall'attaccante oppure un DNS malevolo.
Gli switch gestiti possono utilizzare funzionalità come DHCP Snooping per distinguere le porte considerate affidabili da quelle sulle quali non dovrebbe essere presente un server DHCP.
Questa tecnologia permette di ridurre il rischio che un dispositivo non autorizzato possa rispondere alle richieste DHCP dei client.
DHCP e VLAN
Quando una rete viene suddivisa in VLAN, ogni segmento può avere il proprio intervallo IP e le proprie impostazioni DHCP.
La progettazione potrebbe quindi prevedere subnet differenti per workstation, server, telefoni VoIP, dispositivi IoT e rete guest.
Il DHCP deve essere configurato coerentemente con questa struttura, assegnando a ogni VLAN gli indirizzi appartenenti alla subnet corretta.
Questo rende il servizio DHCP parte integrante della progettazione della rete aziendale, non un semplice servizio installato separatamente.
IPv4 e DHCPv6
Il DHCP viene utilizzato principalmente negli ambienti IPv4, ma esiste anche DHCPv6 per la gestione di determinati parametri nelle reti IPv6.
IPv6 introduce però meccanismi differenti, tra cui SLAAC, che permette ai dispositivi di configurare automaticamente il proprio indirizzo attraverso informazioni ricevute dalla rete.
La gestione dell'indirizzamento IPv6 richiede quindi una progettazione specifica e non può essere considerata semplicemente come una copia del funzionamento DHCP di IPv4.
Il DHCP deve essere progettato, non semplicemente attivato
In una piccola rete domestica il DHCP può essere gestito automaticamente dal router senza particolari interventi. In un ambiente aziendale, invece, il servizio deve essere progettato considerando subnet, VLAN, pool di indirizzi, reservation, DNS, gateway, lease, DHCP Relay e sicurezza.
Un errore nella configurazione può generare conflitti IP, problemi di autenticazione, impossibilità di raggiungere server interni o malfunzionamenti apparentemente scollegati dal servizio DHCP.
Per questo, quando viene progettata o modificata una rete aziendale, è importante documentare anche la struttura degli indirizzi e le modalità con cui vengono distribuiti.
DHCP come componente dell'infrastruttura IT
Il DHCP è uno dei servizi più importanti per il funzionamento quotidiano di una rete IP. Il suo compito sembra semplice, ma dietro l'assegnazione automatica di un indirizzo esiste un processo che coinvolge protocolli di rete, broadcast, lease, routing, DNS e, nelle infrastrutture più complesse, DHCP Relay e VLAN.
In ALLIT la configurazione del DHCP può essere inserita all'interno della progettazione completa della rete aziendale, collegando indirizzamento IP, segmentazione, DNS, firewall e gestione degli apparati. L'obiettivo non è semplicemente fare in modo che un PC riceva un indirizzo, ma costruire una struttura di rete ordinata, prevedibile, sicura e facilmente gestibile.
Capire come funziona il DHCP significa quindi comprendere uno dei meccanismi fondamentali attraverso cui i dispositivi entrano a far parte di una rete e ricevono automaticamente le informazioni necessarie per comunicare correttamente.


