Tive a necessidade de instalar um servidor DHCP estável em uma empresa com a distribuição de 510 IPs por questões de segurança, pois provavelmente 254 IPs não seriam suficientes.

Executei inicialmente os seguintes comandos:

root@proxy:~ # cd /usr/ports/
root@proxy:/usr/ports # make search name=dhcp | grep Port

Port: dhcp6-20080615_2
Port: dhcpcd-3.2.3
Port: dhcpd-pools-2.23
Port: dhcpdump-1.8
Port: dhcperf-1.0.1.0
Port: dhcping-1.2
Port: dhcprelay-1.2_1
Port: dhcprelya-4.7
Port: isc-dhcp41-client-4.1.e_2,2
Port: isc-dhcp41-relay-4.1.e_5,2
Port: isc-dhcp41-server-4.1.e_7,2
Port: isc-dhcp42-client-4.2.5
Port: isc-dhcp42-relay-4.2.5
Port: isc-dhcp42-server-4.2.5
Port: p5-Net-DHCP-0.693
Port: p5-Net-DHCPClient-1.0
Port: pxe-pdhcp-0.0.2007
Port: wide-dhcp-1.4.0.7
Port: p5-Text-DHCPLeases-1.0
Port: net/dhcp-agent
Port: net/isc-dhcp3-server
Port: net/isc-dhcp3-relay
Port: net/isc-dhcp3-client
Port: net/isc-dhcp30-client
Port: net/isc-dhcp30-relay
Port: net/isc-dhcp30-server
Port: net/isc-dhcp3-devel
Port: net/isc-dhcp31-client
Port: net/isc-dhcp31-server
Port: net/isc-dhcp31-relay
root@proxy:/usr/ports # cd net
root@proxy:/usr/ports/net # cd isc-dhcp42-server/
root@proxy:/usr/ports/net/isc-dhcp42-server #

Agora basta executar o ‘make install’:

root@proxy:/usr/ports # make install

DHCP-4.2

O endereço de IP local deste servidor está na placa bce4, logo é sobre ela que eu vou levantar o DHCP para a distribuição de ips em minha rede local, assim adiciono as seguintes linhas ao rc.conf:

dhcpd_enable="YES" # dhcpd enabled?
dhcpd_flags="-q" # command option(s)
dhcpd_conf="/usr/local/etc/dhcpd.conf" # configuration file
dhcpd_ifaces="bce4" # ethernet interface(s)
dhcpd_withumask="022" # file creation mask

 

O IP do servidor é 192.168.0.1, entretanto, vou distribuir os IPs do 192.168.0.20 ao 192.168.1.254. Assim temos o seguinte cálculo de IP:

Address:   192.168.0.1           11000000.10101000.0000000 0.00000001
Netmask:   255.255.254.0 = 23    11111111.11111111.1111111 0.00000000
Wildcard:  0.0.1.255             00000000.00000000.0000000 1.11111111
=>
Network:   192.168.0.0/23        11000000.10101000.0000000 0.00000000 (Class C)
Broadcast: 192.168.1.255         11000000.10101000.0000000 1.11111111
HostMin:   192.168.0.1           11000000.10101000.0000000 0.00000001
HostMax:   192.168.1.254         11000000.10101000.0000000 1.11111110
Hosts/Net: 510                   (Private Internet)

Veja como ficou o dhcpd.conf:

root@proxy:/usr/local/etc # cat dhcpd.conf
option domain-name-servers 192.168.0.254;
option subnet-mask 255.255.254.0;


default-lease-time 3600;
max-lease-time 86400;
ddns-update-style none;

subnet 192.168.0.0 netmask 255.255.254.0 {
range 192.168.0.20 192.168.1.249;
option routers 192.168.0.254;
}

Iniciando o processo do servidor de DHCP:

root@proxy:/usr/local/etc # cd rc.d
root@proxy:/usr/local/etc/rc.d # ls
apache24 htcacheclean isc-dhcpd isc-dhcpd6 mysql-server
root@proxy:/usr/local/etc/rc.d # ./isc-dhcpd restart
Stopping dhcpd.
Waiting for PIDS: 19030.
Starting dhcpd.
root@proxy:/usr/local/etc/rc.d #

Pronto!

 

Author

Rodrigo Calado é sócio-fundador e CTO do Gran Cursos Online. Graduado em Gestão da Tecnologia da Informação, pós-graduando em Governança de TI pela Universidade Católica de Brasília e cursou MBA em Gestão e Empreendedorismo pela FGV. Possui convicta paixão pela área de tecnologia, educação digital, concursos públicos e empreendedorismo.

Write A Comment