Escolar Documentos
Profissional Documentos
Cultura Documentos
Tutorial DHCP PDF
Tutorial DHCP PDF
Toda máquina que for participar de uma rede, deve primeiro, ter um endereço IP – óbvio!
Em uma rede pequena (até 20 máquinas), a tarefa de configurar IPs é relativamente simples. Mas
em uma rede grande com centenas de máquinas, esta tarefa de endereçamento tornase trabalhosa.
Para facilitar as coisas, foi criado um mecanismo de endereçamento automático de IP para
máquinas em uma rede TCP/IP: o DHCP (Dynamic Host Configuration Protocol – Protocolo de
configuração Dinâmica de máquinas).
Um servidor DHCP pode facilitar muito a vida (já conturbada!) do administrador da rede.
Dentre as configurações de serviços que podem ser passadas ao host cliente por dhcp são:
● Endereçamento IP, máscara de subrede, Gateway, Servidor(es) DNS, nome de host
e/ou de domínio;
● Servidores e domínio NIS (autenticação);
● Servidores WINS (para redes Microsoft®);
● Servidores NTP (Hora);
● Imagens de boot para Terminais burros;
Como podemos observar, tudo o que é necessário para que uma máquina esteja em
condições de ingressar em uma rede e usufruir de tudo o que ela possa oferecer, o DHCP se faz útil
para sua configuração automática.
1.1 O protocolo DHCP
Entenda, com a explicação a seguir, como funciona o protocolo DHCP.
a) DHCP Discover – Quando uma máquina é ligada, ela tem um serviço (daemon) cliente do
DHCP configurado para localizar o servidor neste momento. Este cliente DHCP envia um pacote
UDP com destino à porta 67 do servidor chamado “DHCP Discover”. Este pacote tem o endereço
IP de destino 255.255.255.255 e mac address de destino ff:ff:ff:ff:ff:ff – figura 1.
Figura 1 – DHCP Discover
b) DHCP Offer – O servidor ao receber o referido pacote em sua porta ethernet, irá analisálo e,
em sua tabela de IPs, reservar um endereço e preparar um pacote de resposta ao cliente solicitante.
Este pacote de resposta chamase DHCP Offer – Figura 2.
Figura 2 – DHCP Offer
O único meio de a estação cliente saber que o pacote DHCP Offer se destina à ela, é através
do mac address.
c) DHCP Request – O cliente ao receber o pacote do servidor, decide se aceita a configuração
oferecida. Em caso positivo, retorna um novo pacote ao servidor, comunicando o aceitamento da
oferta. Este pacote chamase DHCP Request – Figura 3.
Figura 3 – DHCP Request
d) DHCP Ack – Para finalizar a “conversação” entre cliente e servidor DHCP, este finaliza
(efetiva) o aluguel (lease) do endereço ao cliente em sua tabela de IPs, e envia àquele, um pacote
DHCP Ack para que ele ajuste suas configurações – Figura 4.
Figura 4 – DHCP Ack
1.2 Configurando o Servidor
Toda a configuração de um servidor DHCP é feita em um único arquivo: o /etc/dhcpd.conf.
Para o nosso exemplo, será assumido os seguintes critérios de endereçamento e demais
configurações básicas de rede:
Opções Valores
Rede 192.168.1.0
Máscara 255.255.255.0
Gateway Padrão 192.168.1.1
Servidores DNS 192.168.1.1 e 192.168.1.2
Domínio intranet.com
Servidor de Hora 192.168.1.2
Tempo máximo de aluguel de IP 1 semana = 604800 segundos!
Outras opções e valores serão adicionados e explicados ao longo do capítulo.
1.2.1 O arquivo dhcpd.conf
O arquivo de configuração do servidor DHCP é relativamente simples de configurar – na
verdade, será o mais fácil do todos os serviços explicados no livro (boa sorte!) As entradas no
arquivo consiste em:
parâmetro valor;
Ou
parâmetro valor {
subopção valor;
subopção valor;
}
Toda linha em branco e/ou que começar por um hash (#) será ignorada pelo servidor. O hash
é utilizado para comentar o arquivo.
E o arquivo está dividido em duas seções: uma global – que geralmente fica no início do
arquivo; e outra específica da subrede ou de um host específico – na parte mais inferior do arquivo.
Quando houver opções idênticas (e conflitantes) em ambas as seções, prevalecerá a da
configuração específica.
Opções Globais
Veja a seguir os principais parâmetros do arquivo dhcpd.conf e seus respectivos valores:
ddnsupdatestyle valor;
Define o método de sincronização do servidor DHCP junto ao servidor DNS. Mesmo que
este serviço não esteja configurado, este parâmetro deve existir. Aceita três valores: none,
interim e adhoc
Será visto mais adiante.
authoritative;
Se constar no arquivo, e houver outros servidores DHCP na rede, define este como sendo
prioritário (autoritário) na rede. Desnecessário se houver apenas um servidor.
defaultleasetime segundos;
Define o tempo mínimo (padrão) que um cliente terá o endereço IP reservado (alugado)
para si.
maxleasetime segundos;
Define o tempo máximo que um cliente terá o endereço IP reservado (alugado) para si. O
próprio daemon do cliente dhcp é responsável por renovar o endereço quando finalizado
este prazo.
option routers IP_gateway;
Define o endereço IP do roteador (gateway padrão) de acesso à internet.
option domainnameservers IP_DNS, IP_DNS;
Define o(s) endereço(s) IP(s) do(s) servidor(es) DNS. Se houver mais de um, devem ser
separados por vírgulas.
option domainname “nome_domínio”;
Define o nome de domínio que será passado ao cliente.
subnet IP_rede netmask Subnet_Mask {
range IP_inicial IP_final; }
Define a subrede atendida por este servidor (parâmetro subnet) juntamente com sua
máscara de subrede; e a faixa de IP disponível para aluguel. Mais de uma opção range
pode ser configurada ao mesmo tempo.
Basicamente, o arquivo de nosso servidor de exemplo ficaria assim:
ddnsupdatestyle none;
authoritative;
defaultleasetime 86400;
maxleasetime 604800;
option routers 192.168.1.1;
option domainnameservers 192.168.1.1, 192.168.1.2;
option domainname “intranet.com”;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.150;
range 192.168.1.180 192.168.1.200; }
Repare que foram utilizados duas faixas de IPs – de 100 a 150 e de 180 a 200.
Opções Específicas
As opções específicas são necessárias para ajustar configurações restritas a determinados
hosts. Os parâmetros desta seção geralmente são utilizados na configuração de terminais burros ou
quando um host precisa de uma configuração exclusiva. Veja a seguir algumas opções:
host nome_host {
hardware ethernet mac_address;
fixedaddress IP_fixo;
}
Este parâmetro define um endereço fixo ao host. O endereço é delegado de acordo com o
mac address do host cliente. Esta instrução ficaria mais ou menos assim:
host host1 {
hardware ethernet 00:01:02:1a:3b:5e;
fixedaddress 192.168.1.201;
}
filename “/diretório/arquivo”;
Ao se montar um servidor de boot remoto (servidor de terminais), o primeiro contato da
estação é com o servidor DHCP. Este ao servir o IP, deve fornece também, uma imagem de
arquivo – geralmente um kernel – para a estação inicializar corretamente, e isto é feito
através deste parâmetro.
nextserver “nome_host”;
Quando a imagem de arquivo especificado pelo parâmetro anterior (filename) estiver em
um outro servidor que não seja o próprio servidor DHCP, este parâmetro ajusta o nome do
host servidor que irá fornecer a imagem. Ambas opções devem vir juntas no arquivo.
servername “nome_host”;
Este parâmetro diz ao cliente DHCP, de acordo com os dois últimos parâmetros, o nome do
servidor onde se encontra a imagem.
Existem, ainda, dois parâmetros que determinam como o nome de host será transmitido
(determinado) ao cliente. Veja a seguir:
getleasehostnames valor;
Este parâmetro, quando valor for ajustado para true, determina que o servidor DHCP
deverá consultar o servidor DNS sobre o nome de host que deverá ser transmitido ao
cliente. Isto será visto no capítulo referente a configuração do servidor DNS.
usehostdeclnames valor;
Este parâmetro, quando ajustado para true, determina que o servidor DHCP deverá fornecer
o nome de host de acordo com o parâmetro host – veja o primeiro ítem desta seção.
Outras opções
oneleaseperclient valor;
Este parâmetro determina que um cliente de rede só pode ter uma requisição e aluguel de
IP. valor pode ser on ou off.
logfacility valor;
Este parâmetro determina qual a facility utilizada pelo daemon syslog para registrar as
ações do servidor DHCP. O padrão utilizado é local7.
Na configuração do syslogd (/etc/syslog.conf), deve ser acrescentado a linha referente ao
log da facility local7 usada pelo servidor DHCP. Por exemplo;
local7.warn /var/log/dhcpd.log
group {
[opção;]
host nome_host {
subopção valor;
subopção valor; }
host nome_host2 {
subopção valor;
subopção valor; }
}
O servidor DHCP permite que se façam configurações para um grupo específico de hosts.
O uso de opções e subopções dependerá da necessidade dos hosts do grupo.
Opções para outros protocolos
Opções NetBIOS para clientes Microsoft®
option netbiosnameservers IP_servidor;
Sistemas Microsoft Windows utilizam um servidor próprio para resolução de nomes de
host – o NBNS (NetBIOS Name Server), conhecido como WINS (Windows Internet Name
Server). Este parâmetro determina às máquinas Windows o endereço deste servidor WINS.
option netbiosnodetype valor;
A resolução de nomes em uma rede Microsoft funciona de duas maneiras: por broadcast ou
por servidor WINS. Este parâmetro determina a ordem de procura de hosts na rede. Para
valor igual a 1 ou 2, a resolução de nomes pela estação será feita das duas maneiras ao
mesmo tempo. Para valor igual a 4, será tentando primeiro resolução por broadcast e
depois por servidor WINS. Para valor igual a 8, a resolução será por servidor WINS e
depois por broadcast.
O ideal destes parâmetros, é que estejam na parte global do arquivo dhcpd.conf.
Para garantir que as estações Windows irão trabalhar com as opções fornecidas pelo servidor
DHCP, devese habilitar a opção “Padrão – Use a configuração NetBIOS do servidor DHCP” nas
propriedades de rede das máquinas Windows. Este ítem é acessado através das opções avançadas
nas configurações de rede..
Opções NIS
option nisservers IP_servidorNIS;
Este parâmetro indica o IP do servidor NIS master da rede.
option nisdomain “domínio_NIS”;
Este parâmetro informa ao cliente o domínio NIS (!).
Opções NTP
option ntpservers IP_servidorNTP;
Este parâmetro determina o(s) endereço(s) do(s) servidor(es) NTP da rede. Quando for
utilizar esta opção para clientes Windows, não se esqueça de habilitar o parâmetro “time
server = yes” na seção GLOBAL do arquivo de configuração do servidor SAMBA
(smb.conf).
1.2.2 O arquivo dhcpd.leases
O servidor armazena as informações do aluguel dos endereços no arquivo dhcpd.leases. Sua
localização no”A DISTRO” fica em /var/lib/dhcp/. Por padrão, o arquivo não existe e o servidor
necessita que ele esteja presente ao ser iniciado. Portanto, antes de iniciar o daemon do servidor,
crieo!
Uma entrada no arquivo por um aluguel de IP a uma estação, ficaria assim:
lease 192.168.1.180 {
starts 1 2006/11/30 14:56:08;
ends 1 2006/12/06 14:56:08;
binding state active;
next binding state free;
hardware ethernet 00:01:02:3a:2b:5c;
}
Podemos observar o endereço IP alugado a uma estação, a data e hora de início e término do
aluguel, o mac address, e outras informações.
1.2.3 Configurando o cliente
Clientes Linux
Como a variedade de distribuições é enorme, existem várias maneiras de se configurar a
interface de rede. Veremos aqui como configurar no Mandriva e no Debian. E existem três daemons
clientes disponíveis para Linux: pump, dhcpcd e dhclient. Veremos primeiro os clientes disponíveis,
e depois o arquivo de configuração da interface.
PUMP
pump [opções]
h hostname Determina o nome de host do cliente que será enviado ao servidor
i interface Determina por qual interface será feita a requisição. Não aceita aliases de
interface
d Não atualiza o /etc/resolv.conf
nogateway Não configura o default gateway (rota padrão)
r Libera a interface (IP)
R Renova (forçado) a requisição de endereço
k Interrompe o programa
DHCPCD
dhcpcd [opções] [interface]
O dhcpcd (dhcp client daemon) ainda é o cliente dhcp mais utilizado no Linux. Embora o
dhclient esteja ganhando seu espaço. Ele tem mais opções de linha de comandos de que seu
antecessor – o pump. As opções de linha de comando, são vistas abaixo.
h hostname Determina o nome de host do cliente que será enviado ao servidor
D Nome de domínio determinado pelo servidor DHCP
H Nome de máquina determinado pelo servidor DHCP
R Não atualiza o /etc/resolv.conf
Y Não atualiza o /etc/yp.conf (cliente NIS)
N Não atualiza o /etc/ntp.conf (cliente NTP)
G roteador O default gateway será o fornecido pela linha de comando
interface Indica por qual interface fazer a requisição. Aceita aliases de interface
DHCLIENT
dhclient [opções] [interface]
A mais novas versões das distribuições Linux trazem consigo o cliente DHCP dhclient. Veja
abaixo suas principais opções.
p porta Defina uma porta diferente para o dhclient. Padrão 68
d Força o dhclient a rodar em primeiro plano
r Libera a interface e avisa o servidor DHCP
s IP_servidor Especifica qual o endereço IP do servidor
Arquivos de configuração da interface
No Mandriva, o arquivo responsável por configurar o endereçamento da interface eth0 é o
/etc/sysconfig/networkscripts/ifcfgeth0, e seu conteúdo deve ter o seguinte:
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
iface eth0 inet dhcp
hostname nome_host
Configurando de modo gráfico
No Mandriva Linux é possível configurar a interface de rede através do modo gráfico através
do Centro de Controle Mandriva Linux. Para realizar esta tarefa, você deverá ter a senha do root.
Na janela que se abrir, escolha o menu “Rede & Internet”. Neste ponto, escolha
“Reconfigurar a interface de rede”. Você terá acesso a janela de configuração da interface – Figura
5.
Figura 5 – Configurações da interface de rede
Na aba TCP/IP, escolha o protocolo DHCP.
Na aba DHCP temos acesso a várias configurações avançadas. Dentre elas, destacamse a
escolha do cliente DHCP; Se nome host será fornecido pelo servidor DHCP, ou configurado no
próprio cliente; Se os servidores DNS, NIS e NTP serão obtidos via DHCP.
Clientes Microsoft
Você deve acessar as configurações de interface de rede do Windows XP através do Menu
Iniciar > Painel de Controle > Conexões de Rede e Internet. Você deverá ter uma janela igual ao
da figura 6.
Clique com o botão direito do mouse sobre o ícone que exibe sua conexão local da interface
de rede e escolha Propriedades. Na janela em que se abrir, escolha Protocolo TCP/IP, e clique
em Propriedades. Você terá acesso as configurações de rede da interface. Na aba Geral, deixe a
opção “Obter um endereço IP automaticamente” e clique no botão Avançado. Será aberta a janela
da figura 7.
Figura 3.x – Acesso a interface de rede
Na aba WINS, deixe a opção “Padrão – Use a configuração NetBIOS do servidor DHCP”
habilitada.
FIGURA 7 Configurações avançadas do Windows XP
É isso aí. Boa Sorte!
Sobre o autor:
• Marcio Cantanhêde, conhecido como Marcio Katan, é certificado
Conectiva Mandriva em Administração de Sistemas (Instrutor),
Consultor e Técnico de Suporte em Linux.
• Autor do livro “Linux no Computador Pessoal com Conectiva 10”
Editora Ciência Moderna
Instrutor de Redes e Linux do Senac Rio e NSI Training
Contato:
marcio_katan@yahoo.com.br
MSN: marcio_katan@hotmail.com
Cel.: 92395277
Quer usar Linux em seu computador pessoal?
Compre o livro Linux no Computador Pessoal com Conectiva 10
Com presença marcante nos servidores das empresas, e agora nos
desktops corporativos, o sistema operacional GNU/Linux começa a
travar a maior de todas as suas batalhas: a conquista do computador
caseiro.
Tido como difícil de usar, este mito começa a ser quebrado com esta
obra. Veremos neste livro o quão fácil é utilizar o GNU/Linux.
Tratado de forma simples e direta, o uso do sistema irá parecer
brincadeira de criança. Veremos como substituir todas as
funcionalidades do Windows pelo GNU/Linux. Neste existe um
substitutivo para quase todos os programas que você utiliza na
plataforma Microsoft.
Editora: Ciência Moderna
Sumário: