Atualizar esse tutorial: http://www.botecodigital.info/linux/servidor-dhcp-no-debian-squeeze/
De um modo geral, o trabalho de um servidor DHCP é bastante simples. Ele responde aos pacotes de broadcast das estações, enviando um pacote com um dos endereços IP disponíveis e demais dados de configuração da rede.
Periodicamente o servidor DHCP verifica se as estações ainda estão lá, exigindo uma renovação do “aluguel” do endereço IP (opção “lease time”). Isso permite que os endereços IP sejam gastos apenas com quem realmente estiver online, evitando que os endereços disponíveis se esgotem.
Obs: Todo o material foi baseado na distribuição Debian Squeeze.
No Debian o serviço de DHCP é disponibilizado pelo pacote dhcp3-server
, que pode ser instalado através do comando apt-get. Antes da instalação propriamente dita, é aconselhado realizar uma atualização do índice dos pacotes.
apt-get update
Em seguida:
# apt-get install dhcp3-server
Caso tenha problemas durante a instalação, verifique se sua rede precisa de Proxy. Caso afirmativo, utilize o tutorial disponível AQUI para configurar o Proxy em sua máquina.
Depois de instalado, poderemos partir para a configuração. Como é comum no universo Linux, serviços são configurados através de arquivos de configuração. O arquivo de configuração do servidor dhcp no Debian é o /etc/dhcp/dhcpd.conf
.
Antes de fazer qualquer modificação no arquivo de configuração, faça um backup do mesmo através do comando:
root@microlab:/etc/dhcp# cp dhcpd.conf dhcpd.conf.ori
Este é um exemplo de arquivo de configuração básico:
ddns-update-style none; default-lease-time 600; max-lease-time 7200; # authoritative; subnet 10.1.0.0 netmask 255.255.255.0 { range 10.1.0.11 10.1.0.254; option routers 10.1.0.10; option domain-name-servers 10.3.1.15, 10.3.1.13; option domain-name "erica.org"; }
Onde:
ddns-update-style | indica que o DHCP não vai trabalhar em conjunto com o DNS. Caso haja esta integração, deve-se trocar “none” por “interim” |
---|---|
default-lease-time | tempo padrão em segundos que o DHCP Server concede o IP, caso o cliente não peça um tempo maior. |
max-lease-time | caso o cliente peça por mais tempo do que a linha anterior, o máximo possível é o valor definido aqui. Assim o valor mínimo seria o “default-lease-time” e o máximo o “max-lease-time” |
authoritative | linha comentada por padrão. Isso significa que se um cliente requisitar um endereço que o server não conheça, ou seja, o endereço é incorreto para aquele segmento, o Server não enviará um DHCPNAK, o qual diz para ao cliente para parar de usar aquele endereço |
range | determina a faixa de endereços IP que será usada pelo servidor. \\Se você utiliza a faixa de endereços 192.168.0.1 até 192.168.0.254, por exemplo, pode reservar os endereços de 192.168.0.1 a 192.168.0.100 para estações configuradas com IP fixo e usar os demais para o DHCP, ou então reservar uma faixa específica para ele, de 192.168.0.100 a 192.168.0.201, por exemplo. O importante é usar faixas separadas para o DHCP e os micros configurados com IP fixo. |
option routers | determina o endereço do default gateway da rede, ou seja, o endereço do servidor que está compartilhando a conexão. Não é necessário que o mesmo micro que está compartilhando a conexão rode também o servidor DHCP. |
option domain-name-servers | contém os servidores DNS que serão usados pelas estações. |
Você pode substituir o arquivo de configuração padrão por este modelo, ou editá-lo conforme a necessidade.
Os comandos
/etc/init.d/isc-dhcp-server start
e
/etc/init.d/isc-dhcp-server stop
gerenciam a atividade do serviço (param, reiniciam, iniciam).
Ao fazer qualquer alteração no arquivo, você deve reiniciar o servidor DHCP usando o comando:
# /etc/init.d/isc-dhcp-server restart
Sempre que configurar um servidor com duas placas de rede, é importante que o servidor DHCP seja configurado para escutar apenas na placa da rede interna. No Debian, esta configuração é feita no arquivo /etc/default/isc-dhcp-server
. Procure pela linha:
INTERFACES=""
e adicione a placa que o servidor DHCP deve escutar, como em:
INTERFACES="eth1"
Essa interface de rede deverá estar configurada com um endereço pertencente a mesma subnet que o DHCP vai fornecer de forma automática. Caso seu servidor só tenha uma interface de rede, ou caso você queira que ele trabalhe em todas as interfaces, essa configuração não precisa ser feita.
Para que a configuração entre em vigor, basta reiniciar o serviço novamente.
# dhclient
$ ipconfig /renew