# cd /usr/ports/net/isc-dhcp30-server
# make install clean
# pico /usr/local/etc/dhcpd.conf
configuração utilizada:
option domain-name "iphosting.com.br";
option domain-name-servers 8.8.8.8;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
authoritative;
log-facility daemon;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.30 192.168.0.200;
option routers 192.168.0.1;
}
#Atribuir um ip especifico para uma maquina na rede, utilizando seu mac
host php {
hardware ethernet ee:97:69:e4:75:a7;
fixed-address 192.168.0.61;
default-lease-time 86400;
max-lease-time 864000;
}
Se quiser veja o arquivo de exemplo:
# pico /usr/local/etc/dhcpd.conf.sample
Deve ser criado um arquivo em branco onde o DHCP irá armazenar as informações sobre as alocações, para seu controle. Execute os seguintes comandos:
# touch /var/db/dhcpd.leases
# chmod 600 /var/db/dhcpd.leases
Para que o log seja direcionado para um arquivo específico, edite o arquivo /etc/syslog.conf e adicione as seguintes linhas:
!dhcpd
*.* /var/log/dhcp/dhcpd.log
Crie então o diretório /var/log/dhcp e o arquivo dhcpd.log, ambos com permissão 600, e reinicialize o syslog:
# mkdir /var/log/dhcp
# touch /var/log/dhcp/dhcpd.log
# chmod -R 600 /var/log/dhcp
# killall -HUP syslogd
Poderá ser criado um script para rotacionar o log do DHCP, para o mesmo não se tornar demasiado grande.
Após isso, inicialize o seu servidor DHCP executando o comando abaixo (substitua xl0 pela sua interface de rede que irá servir DHCP):
# /usr/local/sbin/dhcpd xl0
Efetue alguns testes, com máquinas clientes utilizando configuração automática de IP. Verifique o arquivo de log, em /var/log/dhcp/dhcpd.log. Verifique também o arquivo de alocações, em /var/db/dhcpd.leases. Toda vez que for feita alguma modificação no arquivo dhcpd.conf, o dhcpd deverá ser parado e inicializado novamente.
Faça um script de inicialização, com os seguintes comandos para inicialização e shutdown, respectivamente (substitua xl0 pela sua interface de rede que irá servir DHCP):
/usr/local/sbin/dhcpd xl0 -q
e
killall dhcpd