DHCP
Dynamic Host Configuration Protocol
UNIDADE 1
ADM. Redes de Computadores
Carlos alberto Luz
Motivação para o DHCP

Parâmetros de configuração para os Hosts





Endereço IP
Gateway
Mascara de Rede
Outros…
Antes do DHCP



Atribuição Manual
RARP
BOOTP
Características do DHCP



Protocolo para prover parâmetros de
configuração para hosts através da rede
Alocação dinâminca de Endereçamento IP
Minima Intervenção humana
Rede Simples
Servidor DHCP
Clientes DHCP
UDP Port 68
UDP Port 68
UDP Port 68
UDP Port 67
Roteador
Internet
Informações Preliminares




(DHCP) Message = DHCP-PDU (A-PDU)
Client = DHCP Client
Server = DHCP Server
Portas Conhecidas




DHCP Server: UDP port 67
DHCP Client: UDP port 68
No ephemeral ports
Broadcast e unicast usedos para PDUs em
ambas direções


“Broadcast”: link and IP addresses are broadcast
“Unicast”: link and IP addresses are unicast
Fluxo Inicial de Mensagens
Server A
Client
DHCPDISCOVER
DHCPOFFER
Server B
DHCPDISCOVER
DHCPOFFER
Cliente tenta descobrir
DHCP servers na rede
Servers respondem com
ofertas
Cliente coleta as ofertas e
decide qual aceitar
DHCPREQUEST
Configuração completa
DHCPREQUEST
DHCPACK
Shutdown Elegante
DHCPRELEASE
Cliente responde o pedido a
um dos servidores
Server autoriza o uso do
endereço IP
Cliente explicitamente
libera o uso do endereço
IP
Tipos de Mensagem DHCP
DHCP Message
Use
DHCPDISCOVER
Broadcast do cliente para localizar servidores ativos
DHCPOFFER
Server responde ao cliente que está ativo e disponível
DHCPREQUEST
Cliente aceita a oferta do servidor
DHCPDECLINE
Cliente informa o servidor qual ip está utilizando
DHCPACK
Servidor confirma a utilização do IP para o cliente
DHCPNAK
Servidor rejeita a utilização do IP para o cliente
DHCPRELEASE
Cliente solicita ao servidor para abandonar o endereço IP
DHCPINFORM
Cliente solicita ao servidor parâmetros de configuração
Alocação de Tempos de Renovação(Client)





T1 < T2 < Lease time
T1 default value = 1/2 of lease time
T2 default value = 7/8 of lease time
Communicated via DHCPOFFER, DHCPACK
Client actions when times elapse



T1: cliente deve renovar o IP com o DHCP server
T2: cliente deve renovar o ip com qualquer DHCP
server
Lease time: cliente vai parar de usar o endereço IP
Fluxo de Mensagens de Renovação
Server A
Client
Server B
T1 transcorre
DHCPREQUEST
Configuração completa
DHCPACK
Cliente pede para continuar
usando o IP
Servidor Confirma o pedido
e as alocações atualizadas
T1 transcorre
DHCPREQUEST
Cliente pede para continuar
usando o IP
T2 transcorre
DHCPREQUEST
DHCPACK
DHCPREQUEST
Configuração completa
Cliente pede para continuar
usando o IP
Servidor Confirma o pedido e
as alocações atualizadas
Retransmissões


Cliente é responsável por todas as
retransmissões
Estratégia de Retransmissão



Exponencial backoff
Randomizado
Recomendações



Atraso Base é duplicado para cada retransmissão
Numero Randomico entre [-1,+1]
Atraso Base Máximo: 64 seconds
Servidor de Armazenamento

Armazenamento Permanente






Pool de endereços IP disponíveis
Parâmetros locais de configuração
Mapeamento entre clientes e alocações
Flexibilidade sobre atualização de armazenamento
Quando DHCPOFFER envia
Quando DHCPACK envia
Server Logic (Simplificado)
Event
Action Taken
DHCPDISCOVER
If current lease for client exists, send DHCPOFFER
Else, if IP address available, send DHCPOFFER
Else, do nothing
DHCPREQUEST
If IP address available, send DHCPACK
Else, send DHCPNAK
DHCPDECLINE
Mark IP address unavailable, notify network administrator
DHCPRELEASE
Mark IP address available, delete lease
DHCPINFORM
Send DHCPACK with configuration parameters
Lease expiration
Mark IP address available, delete lease
FORMATO DO DHCP PDU
32 Bits
Operation Code
Hardware Type
Hardware Length
Hop Count
Transaction ID
Seconds Elapsed
B
Client IP address
Your IP address
Server IP address
Relay agent IP address
Client hardware address
(16 bytes)
Server host name
(64 bytes)
Boot file name
(128 bytes)
Magic Cookie
Options
(up to 312 bytes)
Must Be Zero (MBZ)
Opções do DHCP
Magic Cookie:
99
130
83
99
4 bytes
Option format:
Code
Length
1 byte
1 byte
Data
Length bytes
Subnet Mask:
1
4
One-byte options:
0
255
Padding
End of options
255
255
255
0
Outra Rede Simples
Clientes DHCP
Agente de
Retransmissão
dentro do
roteador
Internet
Servidor DHCP
Agentes de Retransmissão



Remover a restrição de ter servidor DHCP em
cada rede
Escutar mensagens DHCP e transmiti-las para
a máquina apropriada
Retransmissão de Cliente para Servidor


Broadcast do cliente Unicast para server(s)
Retransmissão do Servidor para o cliente


Broadcast do server  Broadcast para cliente
Unicast do server  Unicast para client
DNS dinâmico



Se o endereço IP muda devido ao DHCP,
entrada DNS fica errada
Clientes ou servidores podem atualizar o DNS
Opção 81: Client FQDN
81
Length
1 byte
1 byte
Flags
rcode1
rcode2
“Length” bytes
Name…
Reliabilitação



Dois servidores DHCP sincronizados na
mesma rede: Primario, Secundario
Armazenamento constante
Falhas: Servidor secundário assume
Clientes DHCP
Server
Primario
Server
secundário
Configurando DHCP
ddns-update-style interim;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers
192.168.0.254;
option subnet-mask 255.255.255.0;
option domain-name "intranet2.com.br";
option domain-name-servers 192.168.0.254,
10.10.10.10;
range 192.168.0.60 192.168.0.100;
default-lease-time 21600;
max-lease-time 43200;
}
Exclude HOST
#------NOTEBOOK DIRETOR----------host diretor {
hardware ethernet 68:A3:C4:56:92:52;
fixed-address 192.168.1.244;
}
} # fechamento do DHCP
Download

DHCP - Unisul