Entendendo TCP/IP (parte 4) - DHCP

Neste artigo, o quarto da série, descrevo o funcionamento do DHCP (Dynamic Host Configuration Protocol), o protocolo de configuração dinâmica de hosts. Parto de uma configuração simples e vou aumentando a complexidade, passando por reservas de IP e Relay.

[ Hits: 36.507 ]

Por: Ricardo Lino Olonca em 26/11/2011


DHCP e seu funcionamento



Introdução ao DHCP

No começo da minha vida profissional, a empresa onde trabalhava tinha cerca de 200 estações de trabalho em rede. Tínhamos um servidor de arquivos e uma pasta compartilhada chamado "informática" e nela, uma planilha contendo todos os IPs da rede. Cada estação de trabalho com seu nome e localização, amarrada ao seu IP. Cada vez que alterávamos a configuração de uma estação de trabalho, tínhamos que atualizar a planilha.

Nem preciso dizer que alguém sempre esquecia de atualizar a planilha, e aí os conflitos de IP começavam a aparecer.

Quando a rede é pequena, com menos de 20 estações, é fácil controlar os IPs através de uma planilha. Mas a administração fica complicada na medida em que a rede cresce. E quando ocorrem um conflito de IP, fica cada vez mais difícil saber onde está a máquina com problema.

Para resolver isso nasceu o DHCP, sigla de Dynamic Host Configuration Protocol, ou Protocolo de Configuração Dinâmica de Host. O DHCP fornece e controla todos as configurações de rede das estações de forma transparente e automática. Isso evita o conflito de IPs, além de possibilitar que uma mesma configuração seja replicada para todas as estações de trabalho automaticamente.

Antes de instalarmos o DHCP, vamos ver como é o seu funcionamento.

Funcionamento do DHCP

Quando uma estação de trabalho está trabalhando com DHCP, ao ligar pela primeira vez, esta não possui um IP. Ela dispara na rede um pacote de broadcast chamado DHCP DISCOVERY.

Este pacote, como mostrei em meu primeiro artigo, não possui em seu cabeçalho o IP de origem (pois ainda não há IP configurado na interface de rede), apenas o MAC address de origem. Todas as estações recebem esse broadcast, e somente servidores DHCP respondem. Numa rede com vários servidores DHCP, TODOS respondem ao cliente com um pacote DHCP OFFER, informando qual o IP do servidor DHCP. O cliente, então, decide para qual servidor DHCP solicitará um endereço IP.

Escolhido o servidor, o cliente envia um DHCP REQUEST exclusivamente ao servidor escolhido. Ou seja, esse pacote não é um broadcast. O servidor então consulta em suas tabelas qual o IP disponível ou reservado para o cliente, bem como as configurações de DNS, roteamento, entre outros.

O servidor atualiza seu banco de dados relacionando o MAC address com o IP reservado ao cliente e envia um DHCP ACC ao cliente. Somente depois disso a estação está pronta para usar a rede.

Há um tempo de concessão do endereço IP fornecido pelo DHCP. Depois de expirado esse tempo, o cliente deve renovar a concessão. Se o cliente não renovar dentro de um limite de tempo preestabelecido, o endereço IP é então colocado à disposição para outros cliente. A estação não pode renovar a concessão antes de um período mínimo. Um tempo longo pode fazer com que a estação sempre pegue o mesmo IP.

Já provedores de Internet configuram um tempo pequeno para que o endereço esteja disponível o mais rápido possível. Por isso, é pouco provável que uma estação pegue o mesmo IP.

É possível amarrar um endereço MAC a um IP, fazendo com que um cliente receba sempre o mesmo endereço. Isto é útil para estações que possuem regras específicas de firewall, ou estações importantes como máquinas de diretores, ou impressoras departamentais.

Muitas outras configurações podem ser passadas via DHCP, como roteamentos adicionais, strings para VoIP, etc.

Antes de começarmos a instalar o DHCP server, lembre-se que isso NÃO PODE ser testado em um ambiente de rede em produção. Levantar um DHCP numa rede vai fazer com que as estações peguem o endereço IP desse novo DHCP, causando conflitos e outros problema estranhos. Portanto, faça isso em uma rede virtual. Use o VirtualBox, VMWare ou Xen para estes testes, ou uma rede de laboratório.

Neste tutorial eu uso Debian 6, mas deve servir para qualquer distro.
    Próxima página

Páginas do artigo
   1. DHCP e seu funcionamento
   2. Instalação e configuração básica
   3. Testes e análises
   4. Reservando IP
   5. Dhcrelay e Referências
Outros artigos deste autor

Entendendo o TCP/IP

O fim está próximo

Entendendo TCP/IP (Parte 3) - Resolução de nomes

Entendendo TCP/IP (parte 2) - Endereços IP

Deduplicação com LessFS

Leitura recomendada

Instalação do OpenGL em placas NVIDIA

GRUB com imagens aleatórias e KDM com vídeo de fundo

Autenticando e protegendo diretórios no Apache

Instalação do modem Netodragon no Conectiva 10

Instalação do Funtoo GNU/Linux em VirtualBox

  
Comentários
[1] Comentário enviado por fernandoborges em 26/11/2011 - 08:46h

Parabéns, principalmente pela parte do Dhcrelay, que normalmente não é abordada em artigos por aí.

[2] Comentário enviado por josemirsilva em 28/11/2011 - 09:35h

bom dia,

valeu pelo artigo,mostrado algo tão importante para que trabalha em rede.


[3] Comentário enviado por valterrezendeeng em 28/11/2011 - 10:01h

Parabens !!! O Artigo é muito Bom !!!

[4] Comentário enviado por julio_hoffimann em 28/11/2011 - 16:05h

Oi Ricardo,

Parabéns pela ótima série!

Abraço!

[5] Comentário enviado por ribafs em 29/11/2011 - 10:58h

Hoje administro uma rede Linux mas caí de para-quedas em termos de conhecimento de rede. Aprendi a instalar e configurar os serviços mas sempre senti que precisava deste conhecimento básico, o que você compartilha nas 4 partes do tutorial.
Muito obrigado, pois não é nada fácil encontrar um material assim, com qualidade e bem explicado.
Valeu Ricardo!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts