Tabela de conteúdo |
O DHCP, Dynamic Host Configuration Protocol, é um protocolo de serviço TCP/IP que oferece configuração dinâmica de terminais, com concessão de endereços IP de host e outros parâmetros de configuração para clientes de rede [1].
O procedimento para os 2 sistemas é idêntico, a única diferença crucial é com relação a utilização do sudo antes dos comandos no Ubuntu Server 10.04 LTS. Vamos instalar os pacotes necessários:
# apt-get install dhcp3-server
ao instalar o pacote será criado o diretório /etc/dhcp3/ que contém o arquivo dhcpd.conf e o arquivo /etc/default/dhcp3-server que contém as interfaces que irão escutar o serviço de DHCP, vamos criar um ambiente simples que vai servir de modelo para nossa configuração:
LAN (IPs: 192.168.0.0/24) DNS (IPs: 208.67.222.222 e 208.67.220.220) Gateway (IP: 192.168.0.1)
temos então que nossa rede vai ser uma Classe C com subrede 192.168.0.0/24. Veja o arquivo abaixo contendo as configurações que atendem esta necessidade:
ddns-update-style none;
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.10 192.168.0.250;
option domain-name "dominio.com.br";
option domain-name-servers 208.67.222.222, 208.67.220.220;
option routers 192.168.0.1;
default-lease-time 600;
max-lease-time 7200;
}
as configurações opcionais de servidor de DNS (domain-name-servers), poderiam estar dentro da definição da subnet caso mais de uma subnet fosse declarada e cada uma delas tivesse seu próprio DNS, no nosso caso era mais simples declará-los globalmente. O intervalo de IPs atribuídos para os clientes na rede varia de 192.168.0.10 até 192.168.0.250 e a máscara de rede deve ser declarada completamente e não em CIDR.
Antes de inicializar o serviço é preciso ter certeza que a placa de rede que está na nossa rede exemplo esteja declarada no arquivo default (/etc/default/dhcp3-server):
INTERFACES="eth0"
pronto, agora basta iniciar o serviço:
# /etc/init.d/dhcp3-server start
o serviço vai passar a escutar a interface eth0 do servidor e publicar a subrede que criamos.
Para vincular um IP a um MAC de uma estação de trabalho ou impressora de rede, de forma que toda vez que este hosts pedir um IP na rede, seja atribuído sempre o mesmo IP, basta adicionar no dhcpd.conf a entrada abaixo com os dados certos:
host impressora_de_rede {
hardware ethernet 08:00:07:26:c0:a5;
fixed-address 192.168.0.5;
}
reinicie o serviço para que as alterações tenham efeito:
# /etc/init.d/dhcp3-server restart
pronto.
A nomelatura é um pouco diferente, pois não é somente dhcp ou dhcp-server, o FreeBSD inclui quem mantém o código do DHCP também no nome do pacote, vamos instalá-lo:
# pkg_add -r isc-dhcp31-server
serão adicionados um usuário chamado dhcpd e um grupo com o mesmo nome. O pacote compilado do FreeBSD tem várias formas de configuração, mas eles mesmos definem a padrão como paranoia mode, vamos seguir este. Primeiro vamos copiar o arquivo de configuração de exemplo para o local correto:
# cp /usr/local/etc/dhcpd.conf.sample /usr/local/etc/dhcpd.conf
vamos criar um ambiente simples que vai servir de modelo para nossa configuração:
LAN (IPs: 192.168.0.0/24) DNS (IPs: 208.67.222.222 e 208.67.220.220) Gateway (IP: 192.168.0.1)
e editar nosso arquivo de configuração (/usr/local/etc/dhcpd.conf) desta forma:
default-lease-time 600;
max-lease-time 7200;
ddns-update-style ad-hoc;
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.10 192.168.0.250;
option domain-name-servers 208.67.222.222, 208.67.220.220;
option domain-name "dominio.com.br";
option routers 192.168.0.1;
default-lease-time 600;
max-lease-time 7200;
}
note que todos os arquivos de configuração são parecidos entre os *nix que configuramos aqui, e de fato as configurações de um valem no outro pois usam versões compatíveis entre si.
Falta adicionar a entrada de inicialização do DHCP no /etc/rc.conf:
dhcpd_enable="YES" # dhcpd está habilitado? dhcpd_flags="-q" dhcpd_conf="/usr/local/etc/dhcpd.conf" # arquivo de configuração dhcpd_ifaces="le0" # interface(s) de rede dhcpd_withumask="022" # máscara de criação de arquivos
agora basta iniciar o serviço:
# /usr/local/etc/rc.d/isc-dhcpd start
o serviço está ativo e rodando na interface desejada.
Para vincular um IP a um MAC de uma estação de trabalho ou impressora de rede, de forma que toda vez que este hosts pedir um IP na rede, seja atribuído sempre o mesmo IP, basta adicionar no dhcpd.conf a entrada abaixo com os dados certos:
host impressora_de_rede {
hardware ethernet 08:00:07:26:c0:a5;
fixed-address 192.168.0.5;
}
reinicie o serviço para que as alterações tenham efeito:
# /usr/local/etc/rc.d/isc-dhcpd restart
pronto.
Para instalar o serviço primeiro devemos instalar os pacotes necessários, usando o YUM instale o pacote dhcp:
# yum install dhcp
vai ser criado um arquivo vazio de configurações em /etc chamado dhcpd.conf, citando um arquivo de exemplo que vai estar localizado em /usr/share/doc/dhcp*/dhcpd.conf.sample, vamos copiar este arquivo em cima do arquivo original:
#cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf
sobrescreva o arquivo e agora vamos configurá-lo, vamos definir uma rede simples de exemplo:
LAN (IPs: 192.168.0.0/24) DNS (IPs: 208.67.222.222 e 208.67.220.220) Gateway (IP: 192.168.0.1)
dada esta rede as configurações sugeridas que atendem este perfil são:
ddns-update-style interim;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option domain-name "dominio.com.br";
option domain-name-servers 208.67.222.222, 208.67.220.220;
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.0.10 192.168.0.250;
default-lease-time 21600;
max-lease-time 43200;
##AQUI ENTRA A REGRA DE IP FIXADO## }
a última coisa que falta é dizer qual interface vai ser utilizada para que os IPs sejam fornecidos, supondo que a interface seja a eth0, vamos editar as configurações (/etc/sysconfig/dhcpd) do serviço de DHCP e editar a linha adicionando a interface correspondente:
DHCPDARGS=eth0
pronto, agora podemos inicializar o serviço:
# service dhcpd start
Onde se lê: ##AQUI ENTRA A REGRA DE IP FIXADO## deve ser inserido o código abaixo:
# se você quiser que sua impressora de rede tenha um IP Fixo
host impressora_de_rede {
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254;
}
note que a declaração aqui aparece dentro da subnet e nos derivados do Debian sugerimos adicionar depois, a regra vale da mesma forma que os DNSs globais ou locais, se você definir dentro da subnet a regra vai ser válida para esta subnet e se for fora, vai valer globalmente. É mais elegante adicionar dentro das subnets aquilo que for específico delas.
--Brivaldo 21h55min de 23 de maio de 2010 (UTC)