Un DHCP Server รจ un servizio basato sul protocollo DHCP (Dynamic Host Configuration Protocol) che si occupa di assegnare automaticamente e dinamicamente gli indirizzi IP e le maschere di sottorete (in modo opzionale anche nome del dominio, DNS, gateway e WINS) alle interfacce di rete di macchine (host) collegate in una rete locale LAN dotate di client DHCP (generalmente presente di default in tutti i sistemi operativi).
La procedura di assegnazione dei parametri di rete avviene attraverso un processo che puรฒ essere cosรฌ brevemente riassunto: il client DHCP richiede lโindirizzo IP mentre il server DHCP lo fornisce, lo affitta allโhost, gestendo in un proprio database tutte le informazioni di assegnazione su indirizzi e host.
Questo sistema ha il duplice vantaggio di far risparmiare tempo se si tratta di grosse reti con numerosi computer, evitando in questo modo lโassegnazione manuale delle impostazioni di rete per ogni macchina, e di assicurare che non esistano indirizzi duplicati nella rete.
Di seguito vediamo come installare e implementare una configurazione di base di un server DHCP su una macchina con sistema operativo Linux, distribuzione Debian.
Installazione e configurazione di DHCP
Il server DHCP รจ costituito dal pacchetto dhcp3-server da scaricare e installare con il seguente comando:
apt-get install dhcp3-server
Dopo lโinstallazione, tutti i parametri di configurazione del server sono contenuti nel file /etc/dhcp3/dhcp.conf, dunque editiamolo con il seguente comando:
nano /etc/dhcp3/dhcp.conf
Analizziamo una per una le direttive che ci interessano:
option domain-name "example.org";
permette di indicare il nome dominio della nostra rete sostituendolo a "example.org".
option domain-name-servers ns1.example.org, ns2.example.org;
permette di definire fino 2 server DNS sostituendoli ai nomi di esempio.
default-lease-time 600;
indica il tempo predefinito di affitto di un indirizzo IP espresso in secondi.
max-lease-time 7200;
indica il tempo massimo di affitto.
Supponendo di operare in una rete di classe C del tipo 192.168.0.X con subnet mask 255.255.255.0, dovremo aggiungere anche le seguenti direttive:
option subnet-mask 255.255.255.0;
che indica la subnet della rete.
option broadcast-address 192.168.0.255;
indica lโindirizzo di broadcast.
option routers 192.168.0.254;
indica lโindirizzo di un router che funge da gateway (in questo caso con indirizzo 192.168.0.254). In questo modo i parametri di base sono configurati.
Passiamo ora alla definizione dellโintervallo di indirizzi IP utili che, di volta in volta, il server DHCP assegnerร ai vari host. Per farlo aggiungiamo le seguenti direttive:
subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.50 192.168.0.100; range 192.168.0.150 192.168.0.200; }
Lโesempio precedente definisce du intervalli di indirizzi entro i quali il server preleverร gli indirizzi per i client.
Il gioco รจ fatto. Non resta che riavviare i servizi di rete e il server DHCP con i seguenti comandi:
/etc/init.d/networking restart
/etc/init.d/dhcp3-server restart
Ora la configurazione รจ terminata e il server DHCP รจ operativo.