
DHCP – Il Protocollo che Ti Salva il Culo
Il Santo Salvatore de Noartri
Se sei un informatico con un minimo di esperienza, sai che assegnare IP statici a ogni dispositivo in una rete è un lavoro da pazzi furiosi, roba da perdere la testa in due minuti. Ecco perché esiste il Dynamic Host Configuration Protocol, il tuo migliore amico quando vuoi evitare di finire nella camera imbottita. In questo articolo ti spiego come funziona questa croce e delizia dei protocolli di rete, come configurarlo senza fare figure di merda col tuo capo e come non lasciarti fregare quando qualcosa va storto.
Cos’è il DHCP e Perché Non Puoi Farne a Meno
Il DHCP è quel protocollo che si occupa di distribuire indirizzi IP e altre configurazioni di rete (subnet mask, gateway, DNS) ai dispositivi senza che tu debba alzare un dito. (o quasi). Lavora a livello applicazione (Layer 7 OSI) ma si appoggia su pacchetti UDP, usando le porte 67 (server) e 68 (client) – e se non te le ricordi, scrivile su un post-it, perché ti serviranno e non sai quanto ti serviranno. Funziona con un modello client-server: il client urla in rete cercando un IP, e il server, se non è in vacanza, glielo assegna.
Il processo si chiama DORA, e no, non è un’esploratrice con lo zaino:
- Discover: Il client manda un broadcast tipo “Chi ha un IP da prestarmi, porcoddio?”.
- Offer: Il server risponde con un IP disponibile, come tuo cuggino che ti propone un rottame come se fosse l’occasione della vita.
- Request: Il client dice “Va bene, dammelo subito”. Come te quando credi a tuo cuggino.
- Acknowledge: Il server chiude l’affare e ti dà l’IP con un lease time, ovvero il periodo in cui puoi usarlo prima che te lo strappi via insieme all’anima.
Se qualcosa va storto, ti ritrovi con un IP APIPA (169.254.x.x), che è come dire “Adesso sono cazzi tuoi”. Non puoi farci nulla di utile, quindi meglio risolvere subito il problema.
Configurazione:
Se gestisci una rete seria, tipo in un’azienda o un datacenter, configurare un server DHCP non è uno scherzo. Su Windows Server, installi il ruolo DHCP Server e configuri gli scope (range di IP da assegnare), opzioni come il lease time e reservation per dispositivi che devono avere IP fissi, tipo il tuo server di produzione – non vorrai mica che si scambi l’IP col forno a microonde della sala mensa, no? Su Linux, invece, usi dhcpd di ISC DHCP, e ti prepari a sbattere la testa contro il muro con file di configurazione tipo /etc/dhcp/dhcpd.conf. Ecco un esempio base:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 8.8.8.8, 8.8.4.4;
option domain-name “madonnaconlecalzearete.lan”;
}
- subnet 192.168.1.0 netmask 255.255.255.0: Definisce una subnet con indirizzo di rete 192.168.1.0 e una subnet mask di 255.255.255.0 (che equivale a una rete /24, con 256 indirizzi totali).
- range 192.168.1.100 192.168.1.200;: Specifica il range di indirizzi IP che il server DHCP può assegnare ai client, da 192.168.1.100 a 192.168.1.200.
- option routers 192.168.1.1;: Imposta il gateway predefinito (il router) per i client su 192.168.1.1, che è un indirizzo tipico per il gateway in una rete locale.
- option subnet-mask 255.255.255.0;: Specifica la subnet mask da comunicare ai client.
- option domain-name-servers 8.8.8.8, 8.8.4.4;: Imposta i server DNS da utilizzare per i client, quelli di Google non sbagliano (quasi) mai
- option domain-name “madonnaconlecalzearete.lan”;: Definisce il nome di dominio della rete locale che è, ovviamente, personalizzabile.
Non scordarti di riavviare il servizio con systemctl restart isc-dhcp-server, altrimenti resterai a guardare il nulla cosmico per giorni come Cristo di Venerdì Santo.
Quando il DHCP Ti Fa Salire il DioCane.
Se i client non ricevono IP, non iniziare a piangere subito. Prima cosa: controlla se il server DHCP risponde – un misero ping può salvarti la giornata. Poi, dai un’occhiata ai log (/var/log/syslog su Linux, Event Viewer su Windows) per capire se il server sta ignorando le richieste perché hai configurato male il range o qualche altra cazzata. Un problema classico è il rogue DHCP server: qualche dispositivo scemo, magari un router comprato al bazar cinese sotto casa, che si mette a distribuire IP come un maniaco che distribuisce caramelle al parchetto. Usa Wireshark per sniffare i pacchetti e scoprire chi bisogna crocifiggere.
Sicurezza: Non Lasciare il DHCP Aperto alla 1°B di Qualche ITIS di Periferia
Il DHCP non è sicuro di default, e se non stai attento, da un sottoscala di Islamabad, un pakistano col cappuccio può creare un server fasullo per distribuire IP falsi come Giuda o reindirizzare il traffico alle Fiji. Configura il DHCP Snooping sui tuoi switch managed per bloccare pacchetti DHCP non autorizzati. E per favore, non lasciare il server DHCP esposto su internet, altrimenti diventerai il bersaglio di ogni quattordicenne segaiolo con Kali Linux installato per gioco.
Il DHCP è uno dei pochi doni che il DioLadro ci ha fatto, ma se lo sottovaluti ti farà pentire di essere nato. Studia i log, testa tutto due,tre,dieci volte e non dare mai nulla per scontato. Se qualcosa non va, probabilmente è colpa tua, non del protocollo perciò smettila di rompere i coglioni.




