L'assegnazione degli indirizzi e la configurazione dei client di rete in modo dinamico è offerta, su un sistema GNU Linux, dal server dhcpd sviluppato dall'ISC (Internet Software Consortium). Dhcpd utilizza due principali file di configurazione dhcpd.conf per la configurazione e dhcpd.leases coma database dei lease.
Il server dhcp, viene solitamente fatto partire tramite gli script di avvio del sistema, la sua sintassi è la seguente: dhcpd [opzioni] [interfacce]
Tra le opzioni principali abbiamo:
-p numero porta UDP
: permette cambiare la porta di listening, di default è la 67;
-cf file di configurazione
: permette di definire un file di configurazione alternativo a quello predefinito;
-lf file di lease
: permette di definire un file alternativo a quello predefinito contenente le informazioni relative agli indirizzi IP rilasciati;
-q
: non stampa i messaggi di copyright all'avvio del servizio;
-d
: utile per il debug, visualizza i messaggi del server sullo standard error anzichè essere come di default essere loggati da syslog.
-t
: testa solamente la correttezza sintattica del file di configurazione dhcpd.conf;
-T
: testa solamente la corretteza del file di database dhcpd.leases;
Di default dhcpd si mette in in ascolto su tutte le interfacce che supportano il multicast (ovvero dove è possibile trasmettere pacchetti all’indirizzo IP 255.255.255.255), altrimenti con la relativa opzione è possibile specificare al server su quali mettersi in ascolto ignorando le altre.