DHCP (Dynamic Host Configuration Protocol) Client é um cliente que solicita informações de rede (IP, máscara, gateway padrão, domínio, DNS etc) de um DHCP Server. Um DHCP Client utiliza a porta UDP 68 para comunicação.
Configurando um Debian GNU/linux como um DHCP Client
# vi /etc/network/interfaces (arquivo que configura as interfaces de rede)
allow-hotplug eth0 (inicia a configuração da eth0. Toda linha que contém "allow-" identifica a interface de rede que irá subir com o comando "ifup --allow=hotplug eth0". Este comando é usado por subsistemas. Têm-se relatos que essa linha não está funcionando 100%. Caso isto esteja acontecendo, substitua por "allow-auto" ou por "auto")
iface eth0 inet dhcp (informa que a interface eth0 vai ser um cliente DHCP)
Obs: pode-se substituir "allow-hotplug" por "allow-auto" ou por "auto". Eles têm quase a mesma função, mas toda linha que contém "auto" identifica a interface de rede que irá subir com o comando "ifup -a". Este comando é usado pelos scripts do sistema de boot, ou seja, na inicialização do sistema. Lembre-se que se deve usar estes outros quando a interfaces não inicializar durante o boot ou apresentar algum outro tipo de problema. Para mais informações digite no shell "man interfaces".
Salve e sai do arquivo. Agora acesse o arquivo de configuração do DHCP Client
# vi /etc/dhcp3/dhclient.conf (arquivo de configuração do DHCP Client. A seguir algumas linhas importantes)
#send host-name "andare.fugue.com"; (quando existe a integração entre o DHCP Server e o DNS, esta linha é usada para enviar o nome do computador para o DNS. Por padrão, isso não acontece, pois a linha está comentada "#". Por medida de segurança esta linha deve permanecer comentada, somente quando houver necessidade se pode descomentá-la)
#send dhcp-lease-time 3600; (tempo em segundos solicitado ao DHCP Server pela concessão do IP. Este tempo poderá ser aceito ou não, dependendo das configurações do DHCP server. Por padrão esta linha está comentada "#")
Salve e sai do arquivo. Não é preciso reiniciar a máquina para que as configurações façam efeito. Basta, em linha de comando, digitar:
# dhclient (solicita um IP ao DHCP Server. Também poderia-se usar "ifdown eth0" e "ifup eth0", respectivamente)
# dhclient eth0 (idem, só que especifica a "eth0")
# dhclient eth0 -p 500 (idem, só que especifica a porta do cliente "500" e do servidor "499". Muito importante quando se quer fazer testes e debug de problemas sem impactar no serviço DHCP de produção)
Monitoração e Gerência
# cat /var/lib/dhcp3/dhclient.leases (DHCP client lease database)
# cat /var/lib/dhcp3/dhclient.eth0.leases (see: deve-se olhar este arquivo)
# cat /var/run/dhclient.eth0.pid (ou "ps ax | grep -i dhcp", mostra o número do processo)
Assuntos relacionados
DHCP Server no GNU/Linux.
DHCP Client no MS Windows.