Você está na página 1de 8

ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

DHCP

1. Introdução

Inicialmente, a necessidade de automatizar a requisição e distribuição do endereço IP deu-se em função da


existência de estações sem disco (diskless). Esta demanda provocou o uso do protocolo de camada de
enlace RARP.

Com o aumento do número de máquinas nas redes e também a crescente necessidade de maiores
informações de configuração para comunicação em uma rede, o RARP mostrou-se ineficiente, o que levou a
criação do protocolo BOOTP.

O advento da computação móvel trouxe uma grande limitação ao BOOTP. Foi criado, então, o DHCP, uma
versão estendida do BOOTP, que permite a atribuição dinâmica de endereços IP.

O DHCP foi designado para resolver esse problema enquanto simplifica a administração da rede TCP/IP.
DHCP vem do Inglês Dynamic Host Configuration Protocol que significa Protocolo de Configuração de
Host Dinâmico.

O DHCP é especificado pela IETF - Internet Engineering Task Force por meio dos RFCs (Requests For
Comments) 1533, 1534, 1541 e 1542.

2. RARP

Para se entender claramente o funcionamento do DHCP, é necessário conhecer o funcionamento do BOOTP,


que, por sua vez, exige conhecimento prévio em relação ao funcionamento e problemas do RARP (Reverse
Address Resolution Protocol).

Para um sistema computacional enviar e receber datagramas é preciso que este possua um endereço de
rede IP de 32 bits que o identifique. Em condições normais (uma estação completa), o endereço IP fica
armazenado na memória da máquina, carregado após o boot. Quando a máquina não possui um disco para
inicialização do sistema (estação diskless) para carregar o seu endereço IP, a imagem de memória daquela
estação fica armazenada no servidor. Como é possível a máquina cliente obter o seu endereço IP para envio
da imagem de memória pelo servidor?

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 1/8


ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

Cada máquina com uma placa de rede possui uma identificação única e que praticamente não se repete.
Esta identificação é uma seqüência de bits, gravado no chip da placa, que é utilizada como endereço físico
na rede (MAC address). A estação diskless utiliza um protocolo que permite a obtenção do endereço IP
fazendo uso do endereço físico da placa. Este protocolo é o RARP.

A exemplo do ARP, a mensagem RARP trafega na rede encapsulada na porção de dados de um quadro. A
identificação do quadro é feita com o preenchimento de valores diferentes no campo operação.

A comunicação RARP é feita a partir da difusão da solicitação de uma estação na rede local para aquisição
de um endereço IP. A estação solicitante remete, na sua mensagem, o seu endereço MAC no campo target
HA. Somente os servidores RARP irão processá-la.

Os servidores respondem às solicitações preenchendo o campo tipo de protocolo, mudando o campo


operação de solicitação para resposta e enviando a mensagem diretamente a máquina solicitante. Ela
recebe as respostas de todos os servidores RARP, mesmo tendo aceito a primeira. A partir deste momento a
máquina só utilizará o RARP novamente se for feita uma reinicialização do sistema.

Com isso, ficam aparentes algumas desvantagens deste protocolo:


• Como o RARP opera num nível mais baixo, ele utiliza um acesso direto ao hardware de rede, com
isso torna-se muito complicado para um programador de aplicativos construir um servidor;

• Ele subutiliza o quadro, pois poderia carregar mais informações úteis para a configuração do cliente
sem "custo adicional";

• Pelo fato do RARP utilizar um endereço de hardware para identificar o equipamento, ele não pode
ser aplicado em redes que atribuem esses endereços dinamicamente.

3. BOOTP

As deficiências encontradas no RARP foram solucionadas com a criação do BOOTP (BOOTstrap Protocol). Por
utilizar o UDP para trafegar suas mensagens, ele pode ser usado por uma aplicação de forma mais simples
que o RARP. Ele também é mais eficiente que este protocolo por embutir em sua mensagem outras
informações importantes para a inicialização.

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 2/8


ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

Diferente da comunicação RARP, a comunicação BOOTP se processa na camada de rede. A estação cliente
lança a sua solicitação na rede utilizando um endereço IP de difusão. Os servidores BOOTP serão os únicos a
reconhecer e responder também por difusão. Esta forma de resposta é utilizada pelo fato do cliente não
possuir ainda, o seu endereço IP para confirmar o recebimento.

O BOOTP delega ao cliente toda a responsabilidade por uma comunicação segura pois, os protocolos
utilizados são passíveis de corrupção ou perda de dados. O BOOTP solicita ao UDP - User Datagram Protocol
- que faça um checksum e ainda especifica que solicitações e respostas tenham seu campo DONT
FRAGMENT ativo para comportar clientes de memória pequena.

O BOOTP permite várias respostas e processa sempre a primeira. Caso haja perda de datagrama, utiliza-se
uma técnica de TIMEOUT para retransmissão.

4. DHCP: A evolução

Criado para substituir o BOOTP na tarefa de automatizar o fornecimento de endereços IP em uma rede, o
DHCP é um serviço que permite facilidades para redes que utilizam a computação móvel (wireless network,
computadores portáteis) ou que possuem uma faixa de endereços IP limitada.

Dois fatores contribuíram para que esse novo protocolo de configuração fosse criado. O BOOTP resolveu
parte do problema de subutilização do quadro quando do envio de um endereço IP. Com o DHCP, em uma
única mensagem são enviadas para o equipamento todas as informações de inicialização necessárias. Outro
fator importantíssimo e que pode ser considerado como o principal é a locação rápida e dinâmica de um
endereço IP para um equipamento conectado à rede.

5. ATRIBUIÇÃO DE ENDEREÇO

O DHCP pode atribuir endereço para um equipamento de rede de três formas:


• Configuração manual;
• Configuração automática;
• Configuração dinâmica.

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 3/8


ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

Configuração Manual
Neste caso, é possível atrelar um endereço IP a uma determinada máquina na rede. Para isso, é necessária
a associação de um endereço existente no banco do servidor DHCP ao endereço MAC do adaptador de rede
da máquina. Configurado desta forma, o DHCP irá trabalhar de maneira semelhante ao BOOTP. Esse
endereço "amarrado" ao equipamento não poderá ser utilizado por outro, a não ser que eles utilizem a
mesma placa de rede.

Configuração Automática
Nesta forma, o servidor DHCP é configurado para atribuir um endereço IP a um equipamento por tempo
indeterminado. Quando este conecta-se pela primeira vez na rede, lhe é atribuído um endereço permanente.
A diferença existente entre esta e a primeira configuração é que nesta não é necessária uma especificação
do equipamento que utilizará determinado endereço. Ele é atribuído de forma automática.

Configuração Dinâmica
Neste tipo de configuração, é que reside a característica principal do DHCP, que o diferencia do BOOTP.
Desta forma o endereço IP é locado temporariamente a um equipamento e periodicamente, é necessária a
atualização dessa locação. Com essa configuração, é possível ser utilizado por diferentes equipamentos, em
momentos diferentes, o mesmo endereço IP. Basta, para isso, que o primeiro a locar o endereço, deixe de
utilizá-lo. Quando o outro equipamento solicitar ao servidor DHCP um endereço IP poderá ser fornecido ao
mesmo o endereço deixado pelo primeiro.

6. O SERVIDOR DHCP

O servidor DHCP deve ser configurado pelo administrador da rede para disponibilizar aos seus clientes,
endereços IP em uma das três formas de fornecimento descritas acima. Para tanto, ele alimenta um banco
com os endereços da sua sub-rede que serão fornecidos de forma automática. É importante deixar claro
que, em uma rede, o administrador deverá deixar fixo em algumas máquinas os seus endereços IP.

Nas configurações, será estabelecido o prazo de locação de um endereço. Esse prazo pode variar de horas a
dias ou simplesmente ser ilimitado. Essa decisão irá depender da rede em que o DHCP está servindo e das
necessidades de um determinado equipamento.

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 4/8


ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

7. O CLIENTE DHCP

Um cliente DHCP é um equipamento que está configurado para solicitar a um servidor DHCP um endereço
IP. Como já foi dito anteriormente, alguns equipamentos na rede devem possuir endereços IP fixos, já
configurados na própria máquina, em função dos serviços que eles disponibilizam na rede. Essas máquinas
não são consideradas como clientes DHCP.

Um cliente DHCP pode passar por seis estados de aquisição:


• INICIALIZA
• SELECIONA
• SOLICITA
• LIMITE
• RENOVA
• VINCULA NOVAMENTE

O que define em que estado se encontra o cliente é a mensagem que ele envia para um dos servidores
DHCP da sua rede.

Inicializa
Quando um cliente inicializa pela primeira vez, ele difunde uma mensagem para todos os servidores DHCP
da rede local a fim de adquirir as configurações de inicialização na rede. Para tanto ele manda uma
mensagem DHCPDISCOVER.
O DHCPDISCOVER é enviado em um datagrama UDP da mesma forma que no BOOTP. Após o envio dessa
mensagem, o cliente passa para o estado SELECIONA.

Seleciona
Neste estado, o cliente permanece aguardando a resposta dos servidores DHCP que receberam o
DHCPDISCOVER. Aqueles servidores que estiverem configurados para responder, enviam ao cliente uma
mensagem DHCPOFFER. Nesta mensagem, estão embutidas as informações necessárias para a configuração
do cliente juntamente com um endereço IP que o servidor lhe oferece como empréstimo. Após o
recebimento de todas as mensagens enviadas pelos servidores, o cliente irá optar por uma e entrará em
negociação de locação com o servidor ofertante. Para iniciar a negociação, o cliente envia a mensagem
DHCPREQUEST. Neste momento, ele entra no estado SOLICITA.

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 5/8


ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

Solicita
Aqui, o cliente aguarda uma resposta de confirmação do servidor DHCP que ele entrou em negociação. Essa
confirmação é remetida através da mensagem DHCPACK. Com o recebimento da confirmação, o cliente
passa a ter um endereço IP e utiliza-o, bem como todas as outras informações de configuração que foram
enviadas pelo servidor e entra no estado LIMITE.

Limite
Este é o estado em que permanece o cliente durante a utilização do endereço IP até que atinja o período de
renovação ou ele decida não mais utilizar o endereço locado. Para este último caso, onde o cliente não
espera o término do prazo da locação, ele envia uma mensagem DHCPRELEASE para o servidor, a fim de
provocar a liberação do endereço IP locado. Desta forma, o cliente não mais poderá enviar datagramas IP
utilizando-se do endereço que possuía e passa para o estado INICIALIZA.

Renova
Ao receber um DHCPACK, o cliente adquire a informação do período de locação do endereço. De posse
dessa informação, ele inicializa três temporizadores. Eles são utilizados para controlar os períodos de
renovação, revinculação e do fim da locação. O servidor pode especificar o valor de cada temporizador. Não
havendo essa especificação o cliente utiliza os valores padrões, que são de 50%, 85% e 100%,
respectivamente.

Quando o temporizador ultrapassa o valor da renovação, o cliente tentará renovar a locação. Para isso, ele
faz uso novamente do DHCREQUEST ao servidor. Assim, ele passa para o estado RENOVA e aguarda a
resposta. Na mensagem, segue embutido o endereço IP atual do cliente e uma solicitação de extensão da
locação do mesmo. O servidor poderá responder autorizando a renovação da locação que necessariamente
não possuirá o período anteriormente destinado, ou poderá responder de forma negativa. No primeiro caso,
o servidor envia um DHCPACK ao cliente. O recebimento dessa mensagem faz com que o cliente retorne ao
estado limite. No segundo caso, o servidor envia um DHCPNACK, que faz com que o cliente interrompa o
uso do endereço IP e passe para o estado INICIALIZA.

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 6/8


ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

Vincula Novamente
Ao entrar no estado RENOVA, um cliente fica aguardando a resposta do servidor. Caso essa resposta não
chegue (é possível que o servidor tenha sido desligado, ou tenha sido desconectado da rede), o cliente
permanece nesse estado e comunicando-se normalmente até que seja ultrapassado o limite do segundo
temporizador. Nesse ponto, o cliente passa do estado RENOVA para o estado VINCULA NOVAMENTE. A partir
daí, o cliente pressupõe que o servidor que lhe locou o endereço IP não estará mais disponível e tenta obter
a renovação com qualquer outro servidor DHCP da sua rede local através da difusão de DHCPREQUEST.

Caso receba um DHCPACK de algum servidor habilitado para tal, o cliente retornará para o estado LIMITE.
Em recebendo um DHCPNACK, ele passará para o estado INICIALIZA.

No caso do cliente não receber qualquer resposta, ele permanecerá utilizando o endereço IP inicialmente
locado até que seja atingido o valor limite do terceiro temporizador, o que fará com que ele passe para o
estado INICIALIZA.

8. FORMATO DA MENSAGEM DHCP

O servidor DHCP poderá responder tanto às solicitações BOOTP, quanto DHCP, pois ambas possuem o
mesmo formato. Os campos da mensagem DHCP.

Usando o DHCP
Um servidor DHCP faz com que o endereçamento a máquinas seja um processo mais dinâmico do que
estático. Normalmente, um novo usuário da rede solicita ao gerenciador um endereço IP válido. O
gerenciador executa uma entrada nas tabelas HOSTS ou no banco de dados DNS. Esse usuário pode
precisar desse endereço apenas esporadicamente ou até temporariamente. Contudo, enquanto o endereço é
atribuído a uma máquina, ninguém mais pode usá-lo.

Outro problema surge quando os usuários se tornam móveis e levam suas máquinas com eles. Se alguém
move o seu computador pessoal de uma rede do prédio para outra, o endereço antigo poderá não funcionar
na nova rede local. Solicitar ao gerenciador de rede local um endereço para usar apenas temporariamente
não faz sentido.

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 7/8


ESCOLAS “PADRE ANCHIETA”

CURSO TÉCNICO EM INFORMÁTICA REDES DE COMPUTADORES

Com o DHCP, os endereços IPs são atribuídos automaticamente conforme a necessidade e depois liberados
quando não são mais necessários. O processo é bem simples. Um servidor DHCP possui um grupo de
endereços válidos que pode atribuir aos clientes. Quando o sistema de um cliente inicia, ele envia uma
mensagem na rede solicitando um endereço.

Cada servidor DHCP (podem existir vários) responde com um endereço IP e informações de configuração. O
cliente recolhe as ofertas e seleciona um endereço válido, enviando de volta a confirmação para o servidor.
Todos os servidores DHCP recebem a confirmação do cliente. O servidor DHCP cujo endereço foi selecionado
pelo cliente, envia de volta uma mensagem de reconhecimento, enquanto os demais servidores DHCP
cancelam as ofertas anteriores de seus grupos. Após o recebimento da mensagem de reconhecimento do
servidor DHCP, o cliente pode participar da rede TCP/IP.

O servidor DHCP, essencialmente, reserva o endereço para o cliente. Esta pode ter um tempo determinado
de modo que as reservas sem uso sejam retornadas de forma automática ao grupo de endereços. Se a
reserva expirar, mas a máquina ainda estiver usando o endereço, o servidor DHCP poderá renová-la, a fim
de que o cliente possa continuar com o mesmo endereço.

PROF. CARLOS ALAOR DE MELLO JR – cmello@anchieta.br 8/8