Instalação e configuração do ISC-DHCP
A versão mais recente, pode ser obtida no endereço:
Após baixar, basta descompactar e compilar o pacote.
Outra forma de instalar o ISC-DHCP server, é através do repositório da distribuição
GNU/Linux que está sendo utilizada. O repositório é basicamente um servidor de arquivos disponível na Internet, onde possui diversos programas e pacotes pré-compilados para a distribuição GNU/Linux especifica, a maioria dos repositórios somente são acessíveis através do gerenciador de pacotes presente na distribuição GNU/Linux, basta que a máquina em questão esteja conectada com a Internet.
Nas distribuições derivadas do
Debian (
Ubuntu, Kurumin, Linux Mint, etc...), o pacote correspondente ao servidor DHCP chama-se "dhcp3-server". Para instalá-lo, basta digitar:
# apt-get install dhcp3-server
No
Red Hat (e distribuições derivadas dele, como o
Fedora e
CentOS), o pacote chama-se, simplesmente, "dhcp". Para instalá-lo, basta digitar:
# yum install dhcp
Embora o pacote chama-se apenas "dhcp", o script referente ao serviço, chama-se "dhcpd", de forma que os comandos para iniciar, parar o serviço, ou reiniciá-lo, são:
# service dhcpd start
# service dhcpd stop
# service dhcpd restart
Ou também, através dos comandos:
# /etc/init.d/dhcp3-server start
# /etc/init.d/dhcp3-server stop
# /etc/init.d/dhcp3-server restart
Também pode haver a necessidade de ativá-lo, ou desativar manualmente para iniciar junto com o sistema (junto ao boot), usando o comando
chkconfig:
# chkconfig dhcpd on
# chkconfig dhcpd off
Configuração básica
O arquivo de configuração é o "dhcpd.conf". Neste, será configurado o servidor, e lá estará inserido todas as informações a cerca de seu funcionamento. Ao instalar o serviço, ele já adiciona o arquivo, porém, como não está configurado, o serviço não ficará ativo até que esteja configurado corretamente e dado o comando para iniciar o serviço.
Este arquivo, originalmente, possui cerca de 110 linhas, sendo que 90% delas são textos comentados, explicando cada item da configuração, como configurar e dando exemplos de configurações.
A localização do arquivo "dhcpd.conf" no sistema GNU/Linux é
/etc/dhcp3/dhcpd.conf, em algumas distribuições, pode ser em
/etc/dhcpd.conf.
Após instalar o ISC-DHCP, deve-se determinar, caso haja mais de uma, qual placa de rede o servidor DHCP estará ativo, ou seja, em qual placa ele atenderá as requisições.
Para isto, basta editar o arquivo presente em
/etc/default/dhcp3-server, na maioria das distribuições. Ao editar o arquivo, haverá uma linha apenas escrito “INTERFACES” nela, deverá ser inserido o nome da placa de rede em que deseja que o serviço seja ativado:
INTERFACES=”eth0”
O GNU/Linux identifica as placas de rede como “eth”, seguido do número a partir do
0, caso tenha 3 placas, serão respectivamente, “eth0”, “eth1” e “eth2”. Em caso de utilização de placa Wireless, ela pode ser identificada “wlan0”, “ath0” ou “ra0”, por exemplo. Ao definir em qual placa o servidor DHCP irá atender, deve-se finalmente configurar.
Nesta etapa, há 3 opções:
- Utilizar o arquivo "dhcpd.conf" original, seguindo as instruções e usando a configuração desejada;
- Criar um novo arquivo "dhcpd.conf" e adicionar a configuração;
- Utilizar um aplicativo em modo gráfico para a configuração.
Nas 2 primeiras opções, o arquivo "dhcpd.conf" ficará, basicamente, semelhante ao seguinte:
# /etc/dhcp3/dhcpd.conf
ddns-update-style none;
default-lease-time 1800;
max-lease-time 14400;
authoritative;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.250;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8,8.8.4.4;
option broadcast-address 192.168.1.255;
host Win2003 {
hardware ethernet 09:0F:B0:FF:EA:10;
fixed-address 192.168.1.2;
}
}
Com a exceção de que, na primeira opção de configuração, entre cada uma dessas linhas haverá textos explicando cada função, para que serve, como funciona e um exemplo de configuração.
default-lease-time 1800;
Nesta linha, é indicado ao servidor, checar a cada 1800 segundos (30 minutos), se a máquina está ativa, ou seja, utilizando o endereço DHCP.
max-lease-time 14400;
Nesta opção, a máquina cliente irá receber o “aluguel” do endereço IP por 14400 segundos (4 horas), ou seja, é o tempo que a máquina vai receber para utilizar o endereço. Depois de decorrido um percentual deste tempo, a máquina cliente vai requisitar a renovação.
Caso a rede possua, por algum motivo, um pool de endereços pequeno, e haja mais máquinas do que IP’s disponíveis, estas duas configurações deverão ter seu tempo reduzido, pois assim, a máquina utiliza o IP apenas pelo tempo em que necessita, e caso seja desligada ou desconectada da rede, o servidor DHCP irá detectar isso em menos tempo, tendo assim o endereço IP, disponível novamente para ser atribuído à outro host.
subnet 192.168.1.0 netmask 255.255.255.0
Essa linha determina a rede, sub-rede e a máscara da rede em que o servidor irá trabalhar, atribuindo os endereços IP. As linhas de configuração seguintes definirão a rede, o pool de endereços (range), exceções (IP fixo), endereços de servidores de nome de domínio.
range 192.168.1.100 192.168.1.250;
Range, define o pool de endereços que ficarão disponíveis para a atribuição automática de endereços. Neste exemplo, os endereços que o servidor irá atribuir ficam no “espaço” entre "192.168.1.100" e "192.168.1.250", ou seja, há 150 endereços disponíveis para os hosts da rede.
Conclui-se portanto, que há 102 endereços que não fazem parte do range, destinados portanto para máquinas que desempenham algum papel importante na rede e precisam de um endereço físico.
option routers 192.168.1.1;
Esta linha informa para as máquinas qual é o endereço de “gateway” ou do roteador, que está na “divisa” entre a rede interna e a Internet, por exemplo, exercendo a função de firewall ou proxy na maioria dos casos.
option domain-name-servers 8.8.8.8,8.8.4.4;
Aqui, deve ser informado (opcionalmente) os endereços de servidores de resolução de nomes de endereço/domínio, ou DNS. Redes pequenas, em sua maioria, não possuem DNS’s próprios, os endereços aqui inseridos são os DNS’s fornecidos pela provedora de Internet, pode-se usar qualquer endereço de DNS público, como por exemplo, o
OpenDNS (208.67.222.222 e 208.67.220.220) ou o DNS do Google (8.8.8.8 e 8.8.4.4).
option broadcast-address 192.168.1.255;
Informado opcionalmente, o endereço de broadcast da rede. O endereço com final 255 é reservado para broadcast.
host Win2003 {
hardware ethernet 09:0F:B0:FF:EA:10;
fixed-address 192.168.1.2;
}
O bloco acima é para definir a atribuição manual de IP fixo para uma determinada máquina, inicia-se com o nome da máquina.
Neste exemplo, ela chama-se “Win2003”, declarando que trata-se de um servidor Microsoft Windows 2003, e que desempenha algum serviço importante na rede, após o nome, indica-se o seu endereço físico de rede (o MAC da placa), e finalmente, o IP que sempre será dado a esta máquina quando ela requisitar.
Para adicionar mais máquinas que receberão este tipo de atribuição, basta inserir um bloco semelhante a este, mudando apenas o nome, o MAC e o IP destinado a ela.