Cos’è il protocollo DHCP e come funziona?

Il protocollo DHCP (Dynamic Host Configuration Protocol) è comunemente usato nelle reti per la configurazione dell’indirizzamento IP dinamico. Il dispositivo di ogni utente ha bisogno di almeno un indirizzo IP per unirsi alla rete e connettersi ai servizi. Quando il computer si connette per la prima volta alla rete locale con cavo o SSID WiFi, la prima cosa è cercare l’indirizzo IP, la maschera di rete, il gateway predefinito e i server DNS.

Come funziona il protocollo DHCP?

  1. L’host che si connette alla rete (via cavo o wireless) invia il messaggio DHCP discover a tutti gli host nel segmento Layer 2 (l’indirizzo di destinazione è FF:FF:FF:FF:FF). Frame con questo messaggio DISCOVER colpisce il server DHCP.

Pacchetto DHCP Discover

2. Dopo che il server DHCP riceve il messaggio discover suggerisce l’offerta di indirizzamento IP all’host client da unicast. Questo messaggio di OFFERTA contiene:

  • indirizzo IP proposto per il client(qui 192.168.1.10)
  • subnet mask per identificare lo spazio sottorete (qui 255.255.255.0)
  • IP del gateway predefinito per la sottorete (qui 192.168.1.1)
  • IP del server DNS per le traduzioni dei nomi (qui 8.8.8.8)
  • Opzioni (leggi l’articolo completo)

Pacchetto offerta DHCP

3. Ora, dopo che il client riceve l’offerta, richiede le informazioni inviando ufficialmente il messaggio di RICHIESTA al server questa volta da unicast.

 Pacchetto di richiesta DHCP

4. Il server invia un messaggio di conferma del lease DHCP al client. Ora il client è autorizzato a utilizzare nuove impostazioni IP.

DHCP Acknowledge packet

Quali informazioni ottenere dal protocollo DHCP sono necessarie e quali sono facoltative?

In teoria, solo l’indirizzo IP e la maschera sono necessari per il funzionamento del dispositivo. Questo è vero nello scenario che il dispositivo si trova all’interno della stessa sottorete con altri dispositivi e comunica con altri conoscendo i loro indirizzi IP. In tal modo non è necessario andare oltre la propria sottorete ed è per questo che il gateway non è necessario. Utilizzando solo gli indirizzi IP per la comunicazione elimina anche la necessità di traduzioni dei nomi in modo DNS è ancora opzionale. Tuttavia, negli scenari del mondo reale la maggior parte della comunicazione va oltre la sottorete e relè su nomi di dominio completi (FQDN).

Oltre ai parametri DHCP necessari, ci sono opzioni DHCP come la popolare opzione 150 utilizzata nella telefonia IP per informare i telefoni IP sull’indirizzo IP del PBX IP per una corretta registrazione del telefono, ad esempio Cisco Call Manager o Asterisk PBX. Quasi tutti i fornitori di server DHCP sono in grado di passare le opzioni DHCP.

Cosa succede se il server DHCP non si trova nella stessa sottorete ?

Puoi chiederti se è necessario avere un server DHCP nello stesso segmento L2 (VLAN), perché DHCP OFFRE relè di messaggi sull’indirizzo di destinazione broadcast che è buono solo per la stessa sottorete. Traccia giusta! Ma per motivi di scalabilità DHCP c’è la possibilità di avere il server DHCP al di fuori della sottorete. In tale soluzione i pacchetti DHCP discover che in genere arrivano all’interfaccia gateway predefinita vengono trasformati in pacchetti unicast (DHCP discover embedded message) con il campo giaddr che indica al server l’identificazione degli allegati logici. Il pacchetto viene inviato direttamente all’IP del server situato da qualche parte nel cloud IP instradabile. Giaddr aiuta il server DHCP a trovare il pool di indirizzi corretto per la concessione dell’indirizzo.

Relè DHCP

Controlla come configurare il server DHCP sul dispositivo di rete.