Dynamic Host Configuration Protocol (DHCP)

O Protocolo de Configuração Dinâmica de Hosts (DHCP) é um serviço de rede que permite que os computadores sejam configurados automaticamente a partir de configurações feitas em um servidor ao invés de serem configurados individualmente de forma manual. Computadores configurados para serem clientes de DHCP não tem controle sobre as configurações que eles recebem do servidor DHCP, e a configuração é transparente para o usuário do computador.

As configurações mais comuns providenciadas por um servidor DHCP para um cliente DHCP são:

Entretanto, um servidor DHCP pode também providenciar propriedades de configuração como:

A vantagem de usar DHCP é que as alterações em uma rede, por exemplo a alteração do endereço de um servidor DNS, precisam apenas ser modificadas no servidor DHCP, e todos os equipamentos da rede irão ser reconfigurados da próxima vez que seu cliente de DHCP consultar o servidor. Como vantagem adicional, ele também torna mais fácil a integração de novos computadores à rede, já que não é necessário confirmar a disponibilidade de um endereço IP. Conflitos na alocação de endereços IP também são reduzidos.

Um servidor DHCP pode fornecer parâmetros de configuração usando dois métodos:

Endereço MAC

Esse método consiste na utilização do DHCP por meio da identificação do endereço de hardware único de cada placa de rede conectada à rede e então fornecendo uma configuração constante cada vez que o cliente de DHCP faz uma requisição para o servidor DHCP usando o mesmo dispositivo de rede.

Pool de Endereços

Esse método consiste na definição de um pool (algumas vezes chamado de faixa ou escopo) de endereços IP a partir do qual os clientes DHCP terão suas propriedades e configurações supridas dinamicamente baseado num método de "o primeiro que chega é o primeiro que leva". Quando um cliente DHCP não mais está em rede por período de tempo especificado, a configuração expira e é disponibilizada novamente no pool de endereços para uso por outros clientes DHCP.

O Ubuntu é fornecido com ambos, o cliente e o servidor DHCP. O servidor é o dhcpd (dynamic host configuration protocol daemon). O cliente fornecido com o Ubuntu é o dhclient e deverá ser instalado em todos os computadores que pretendem ser automaticamente configurados. Ambos os programas são fáceis de instalar e configurar e serão automaticamente iniciados durante a inicialização do sistema.

Instalação

Em um terminal, digite o seguinte comando para instalar dhcpd:

sudo apt-get install dhcp3-server

Você provavelmente precisará mudar a configuração padrão editando /etc/dhcp3/dhcpd.conf para se ajustar às suas necessidades e configurações particulares.

Você também precisa editar /etc/default/dhcp3-server para especificar as interfaces que o dhcpd deve escutar. Por padrão ele escuta eth0.

NOTA: Mensagens do dhcpd estão sendo enviadas para o syslog. Procure lá por mensagens de diagnóstico.

Configuração

A mensagem de erro encontrada no final da instalação pode ser um pouco confusa, mas os seguintes passos vão te ajudar a configurar o servidor:

Geralmente, o que você quer fazer é associar um endereço IP de forma aleatória. Isto pode ser feito com as seguintes configurações:

# Exemplo de /etc/dhcpd.conf
# (adicione seus comentários aqui) 
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "mydomain.example";

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
range 192.168.1.150 192.168.1.200;
} 

Isso irá fazer com que o servidor DHCP atribua ao cliente um endereço IP a partir da faixa 192.168.1.10-192.168.1.100 ou 192.168.1.150-192.168.1.200. Ele irá emprestar um endereço por 600 segundos se o cliente não perguntar por um determinado período de tempo. O servidor também irá "avisar" o cliente que ele deve usar 255.255.255.0 como sua máscara de sub-rede, 192.168.1.255 como seu endereço de broadcast, 192.168.1.254 como roteador/gateway e 192.168.1.1 e 192.168.1.2 como seus servidores DNS.

Se for preciso especificar um servidor WINS para os seus clientes de Windows, você deverá incluir a opção netbios-nome-servidor.

option netbios-name-servers 192.168.1.1; 

Configurações do dhcpd foram adquiridas do mini-HOWTO do DHCP, que pode ser encontrado aqui.

Referências

DHCP FAQ