Faculdade de Tecnologia SENAC Pelotas/RS
Curso Superior de Tecnologia em Redes de Computadores
DHCP
(Dynamic Host
Configuration Protocol)
Professor Eduardo Maroñas Monks
SUMÁRIO
•
•
•
•
•
•
•
Histórico
Objetivos
Funcionalidades
Protocolo
Aplicações
Segurança
Referências Bibliográficas
Prof. Eduardo M. Monks - Redes de Computadores III
2
Histórico
•
Década de 70
• A Internet era usada somente para pesquisas acadêmicas,
com poucos hosts
• Não havia a necessidade de automatizar as configurações
dos hosts
• Início de 80
• Necessidade de configurar automaticamente hosts sem
armazenamento (diskless)
• Primeira solução: protocolo RARP (Reverse ARP) na RFC 903
• Mapeamento de IP para endereço MAC
• Limitado
• Definido o protocolo BOOTP (BOOTSTRAP Protocol ) RFC 951
• Evolução do RARP
• Opções de configuração incluídas
• 1989
• Primeiras iniciativas do IETF para automatização de
configurações em hosts com mais recursos
• DHCP (Dynamic Host Configuration Protocol), definido na
RFC 2131
Prof. Eduardo M. Monks - Redes de Computadores III
3
Objetivo
• De acordo com a RFC 2131
• O DHCP (Dynamic Host Configuration
Protocol) provê um mecanismo que
possibilita o envio de configurações para
hosts em uma rede TCP/IP.
• O mecanismo de DHCP é composto por dois
componentes principais:
• Um protocolo para o repasse de parâmetros
de configuração para os hosts, baseado em
cliente/servidor
• Uma estrutura para alocação de endereços
de rede para os hosts
Prof. Eduardo M. Monks - Redes de Computadores III
4
Funcionalidades
• Eliminar a configuração manual dos
hosts
• Evitar o conflito de endereçamento
• Não necessitar de um servidor de
DHCP por subrede
• Permitir múltiplos servidores na
rede
• Possibilitar que os hosts possam
movidos entre redes
• Plug & Play
Prof. Eduardo M. Monks - Redes de Computadores III
5
Protocolos
• BOOTstrap Protocol (BOOTP)
• Padronizado em 1985
• Os hosts podem configurar os parâmetros de
endereçamento na inicialização (boot)
• Provê 3 serviços para os hosts:
• Definição de endereço IP
• Detecção de endereço IP do servidor
• Nome do arquivo a ser carregado e executado pelo
cliente para dar boot
• Fornece além do endereço IP, o gateway, a máscara
de subrede e outros
• As mensagens são enviadas por meio do protocolo
UDP, nas portas 67 (servidor) e porta 68 (cliente)
• As mensagens são enviadas em broadcast
limitado(255.255.255.255), somente para a rede local
(não existe forma de repassar o broadcast para outras
redes)
Prof. Eduardo M. Monks - Redes de Computadores III
6
Protocolos
• BOOTstrap Protocol (BOOTP)
• Formato do pacote
OpCode
Hardware Type
Number of Seconds
Hardware Address
Hop Count
Length
Unused (in BOOTP)
Flags (in DHCP)
Transaction ID
Client IP address
Your IP address
Server IP address
Gateway IP address
Client hardware address (16 bytes)
Server host name (64 bytes)
Boot file name (128 bytes)
Options
Prof. Eduardo M. Monks - Redes de Computadores III
7
Protocolos
• BOOTstrap Protocol (BOOTP)
• Troca de mensagens
Argon
00:a0:24:71:e4:44
BOOTP Server
BOOTP Request
00:a0:24:71:e4:44
Sent to 255.255.255.255
• BOOTP pode ser
usado para o
download de imagens
de boot para
estações diskless
• Definição dos
endereços IP para os
hosts é estática
Prof. Eduardo M. Monks - Redes de Computadores III
8
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Padronizado 1993
• Uma extensão do protocolo BOOTP
• Mesmas portas e protocolo da camada de
transporte que o BOOTP
• Melhorias em relação ao BOOTP:
• Provê alocação temporária de endereços IP
• O cliente DHCP pode adquirir todos os
parâmetros de configuração para funcionar
• O DHCP é o mecanismo preferencial para
configuração dinâmica de hosts
• O DHCP é compatível com clientes BOOTP
Prof. Eduardo M. Monks - Redes de Computadores III
9
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Troca de mensagens
Argon
128.143.137.144
00:a0:24:71:e4:44
DHCP Server
DHCP Response:
IP address: 128.143.137.144
Default gateway: 128.143.137.1
Netmask: 255.255.0.0
Prof. Eduardo M. Monks - Redes de Computadores III
10
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Tipos de mensagens
• Enviada no campo Options
Valor
Prof. Eduardo M. Monks - Redes de Computadores III
Tipo de Mensagem
1
DHCPDISCOVER
2
DHCPOFFER
3
DHCPREQUEST
4
DHCPDECLINE
5
DHCPACK
6
DHCPNAK
7
DHCPRELEASE
8
DHCPINFORM
11
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Outras opções que podem ser configuradas
no servidor
• Máscara de subrede
• Servidor de DNS
• Nome do Host
• Nome do domínio
• Endereço de broadcast
• Rotas estáticas
• Tempo de renovação do empréstimo
• Servidor de tempo
Prof. Eduardo M. Monks - Redes de Computadores III
12
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• 4 momentos onde o host troca mensagens
DHCP:
• INIT (inicialização) – solicita o
endereçamento e demais configurações
• INIT-REBOOT (inicialização após reset) –
confirma a validação do endereçamento e
configurações prévias
• RENEWING (renovação) - solicita o
prolongamento do empréstimo do
endereço para o servidor que forneceu
inicialmente
• REBINDING (renovação indiscriminada) solicita renovação de qualquer servidor
disponível
Prof. Eduardo M. Monks - Redes de Computadores III
13
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Operação
DHCP Client
00:a0:24:71:e4:44
• DHCP Discover
•
DHCP Server
DHCPDISCOVER
Sent to 255.255.255.255
Cliente>Broadcast
DHCP Server
DHCP Client
00:a0:24:71:e4:44
• DHCP Offer
•
DHCPOFFER
DHCP Server
DHCPOFFER
Servidor->Cliente
DHCP Server
Prof. Eduardo M. Monks - Redes de Computadores III
14
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Operação
DHCP Client
00:a0:24:71:e4:44
DHCP Server
DHCPREQUEST
• DHCP Request
•
DHCPACK
Cliente>Broadcast
DHCP Server
DHCP Client
00:a0:24:71:e4:44
• DHCP ACK
•
Servidor->Cliente
DHCP Server
DHCPREQUEST
DHCPACK
DHCP Server
Prof. Eduardo M. Monks - Redes de Computadores III
15
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Operação
DHCP Client
00:a0:24:71:e4:44
• DHCP Release
•
DHCP Server
DHCPRELEASE
Cliente->Servidor
DHCP Server
Prof. Eduardo M. Monks - Redes de Computadores III
16
Protocolos
• Dynamic Host Configuration Protocol (DHCP)
• Fluxo de mensagens
•
•
•
•
•
Prof. Eduardo M. Monks - Redes de Computadores III
Discover: o cliente tenta
achar servidores disponíveis
Offer: os servidores de DHCP
respondem com suas ofertas
Request: o cliente seleciona
uma das ofertas e faz uma
requisição
ACK: o servidor reconhece a
requisição
Quando 50% do empréstimo
expirar, o cliente solicitará
renovação
• Se um ACK for recebido,
renova o temporizador de
empréstimo
• Se um NAK for recebido,
volta para o estado inicial
(Discover)
17
Aplicações
•
Clientes e servidores de DHCP existem para a maioria dos
sistemas operacionais.
• No Linux, a implementação mais comum é o ISC DHCP
para cliente e servidor
• No Windows, o MS DHCP Server é o mais utilizado
• Atualmente, todos os modens/roteadores ADSL possuem
uma implementação de servidor DHCP e cliente para
receber o IP do provedor
Prof. Eduardo M. Monks - Redes de Computadores III
18
Aplicações
• Servidor DHCP
• Responsável por prover os mecanismos
de controle de distribuição das
configurações
• As configurações básicas a serem
definidas são:
• Faixa de IPs a serem oferecidos
• Máscara de subrede
• Gateway padrão
• Servidor de DNS
• Tempo de empréstimo do IP
• Exemplo de configuração do ISC DHCPd
Prof. Eduardo M. Monks - Redes de Computadores III
19
Aplicações
• Cliente DHCP
• Responsável por solicitar as
configurações ao servidor
• No Microsoft Windows, o utilitário
ipconfig possui funcionalidades para
gerenciamento dos empréstimos
• No Linux, o utilitário mais comum é o
dhclient
Prof. Eduardo M. Monks - Redes de Computadores III
20
Segurança
• Problemas de segurança mais comuns ao DHCP :
• Configurações erradas no DHCP
• Gateway default errado
• Máscara de rede
• Faixa de IPs sendo usados manualmente e
oferecidos pelo servidor de DHCP
• Instalação de um servidor DHCP não permitido na
rede (Rogue DHCP - http://en.wikipedia.org/wiki/Rogue_DHCP)
•
•
Difícil de detectar
Normalmente, a inserção de dispositivos de rede com
o servidor de DHCP ativado por padrão gera este
problema
• Uso malicioso para roubo de informações (gateway
default apontando para a máquina do interessado...)
• Serviço do DHCP desativado por problemas no servidor
• Existem formas de usar autenticação para serviços de
DHCP que diminuem os problemas de segurança
• (http://tools.ietf.org/html/rfc3118)
Prof. Eduardo M. Monks - Redes de Computadores III
21
Referências Bibliográficas
• ISC DHCP – http://www.isc.org/software/dhcp
• Dynamic Host Configuration Protocol http://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protoco
l
• DROMS, Ralph;LEMON, Ted. DHCP Handbook. 2nd edition, SAMS
Publishing, 2003.
Prof. Eduardo M. Monks - Redes de Computadores III
22
Download

DHCP