Client Linux DHCP
Instal·lació del client
- La majoria de distribucions Linux modernes ja porten instal·lat el client de DHCP. Cal tenir en compte que la majoria de xarxes LAN SoHo (Small Office Home Office) es configuren amb DHCP.
- En tot cas el paquet que proporciona el suport client per a DHCP, a sistemes de la família Debian és dhcp3-client.
- Per instalar-lo s'usa la comanda sudo apt-get install dhcp3-client.
Ports
- Al fitxer /etc/services el port apareix amb el nom del protocol bootp que podemconsultar amb la comanda cat /etc/services | grep bootp
- Com podeu veure en la sortida de la comanda anterior el client també utilitza un port concret: el port 68.
- Per comprovar si un servidor de DHCP funciona podeu utilitzar la comanda NMAP sudo nmap -sU 192.168.1.1 -p 67
Configuració Client
- La configuració del client és la més fàcil. Per configurar un equip GNU/Linu conectat a un servidor DHCP, només es necessari dir-li a la targeta de xarxa que treballarà amb DHCP:
- Anar a Sistema - Administració - Xarxa
- Seleccionar interfície Ethernet i fen clic a Propietats.
- Es pot canviar la forma en que l'interfície es configura (DHCP o manualment).

Cal editar el fitxer /etc/network/interfaces
Dins del fitxer teniu que tenir una secció similar a:
auto ethx
iface ethx inet dhcp
On x és el número de la vostra interfície de xarxa.
Amb dhcp li diem a la nostra màquina que busqui un servidor de DHCP a la xarxa i que li demani a aquest servidor la seva configuració de xarxa.
Després de canviar els paràmetres de xarxa cal executar la següent comanda per tal que els canvis tinguin efecte sudo /etc/init.d/networking restart
O també podem apagar i tornar a encendre l'interfície de xarxa. Per exemple la interfície 0 (eth0) sudo ifdown eth0 i sudo ifup eth0
NOTA IMPORTANT: Si per alguna raó no us funciona la configuració de DHCP podeu provar amb la comanda sudo dhclient eth0
Paquet dhcp3-client
- El paquet amb el client de dhcp és dhcp3-client.
- Normalment ja esta instal·lat. Si executem dpkg -L dhcp3-client podem veure els fitxers que formen part del paquet:
- Amb la comanda dpkg -L dhcp3-client | grep bin podem consultar els fitxers executables.
- Amb la comanda dpkg -L dhcp3-client | grep etc podem consultar els fitxers de configuració.
Comanda dhclient i dhclient3
- La comanda dhclient és el client DHCP.
- Les comandes dhclient i dhclient3 són equivalents. De fet dhclient és un enllaç a dhclient3.
Comanda dhcping
- Envia un DHCP request al servidor DHCP per a veure si està engegat i funcionant.
- Sols la pot usar el root.
- També és un manual.
- Exemple d'ús: sudo dhcping -h adreça_MAC -s adreça_IP_servidor
Estats del client
Procés complet. Amb inicialització: | Procés de rebinding: |
$ sudo dhclient eth0
Listening on LPF/eth0/00:30:1b:b7:cd:b6 |
$ sudo dhclient eth0
Listening on LPF/eth0/00:30:1b:b7:cd:b6
Sending on Socket/fallback |
- El client DHCP és un procés que és manté en execució pendent de controlar el client DHCP (renovar el préstec).
- Podeu veure el procés executant: ps aux | grep dhcp.
- Si matem el procés i executem: sudo dhclient eth0 ens dona la següent informació:
There is already a pid file /var/run/dhclient.pid with pid 22147
Listening on LPF/eth0/00:30:1b:b7:cd:b6 |
- No és suficient amb matar el procés i esborrar el fitxer PID: /var/run/dhclient.pid.
- Podeu forçar tornar a inicialitzar executant sudo dhclient -r eth0. Aquesta comanda envia un RELEASE al servidor. Ara el client començara des de l'estat d'inicialització.
Memòria cau d'assignacions del client
- Una vegada el client disposa d'IP, emmagatzema les dades de l'assignació en a la carpeta /var/lib/dhcp3.
- La propera vegada que sol·liciti una IP, sol·licitarà l'última concedida.
- Si el servidor no respon, el client s'autoconfigurarà la interfície amb les dades emmagatzemades.
Com comprovar un servidor DHCP en un entorn ab múltiples servidors
- Si tenim múltiples servidors de DHCP en un mateix segment de xarxa és difícil fer pràctiques ja que a priori no és possible determinar quin serà el servidor que es configurarà primer.
- Podem però facilitar la feina configurant el client. Curiosament no existeix (AFAIK) un paràmetre per indicar al client quin servidor de DHCP ha d'utilitzar, però si que podem indicar quins servidors de DHCP NO volem utilitzar.
- Això es fa amb la directiva reject del fitxer /etc/dhcp3/dhclient.conf.
- Per exemple: reject 192.168.1.1 on 192.168.1.1 és un servidor de DHCP que no volem utilitzar