Você está na página 1de 20

Redes de Computadores I

- Protocolos de Controle: BOOTP/DHCP

por
Helcio Wagner da Silva
Introdução
• Deficiências percebidas no RARP
– Servidores RARP precisam estar na mesma rede
local que seus clientes
– Por operar relativamente próximo ao HW da
máquina, dificulta a construção de servidores por
parte de programadores de aplicações
– Não pode ser usado em redes que alocam
dinamicamente endereços de HW às máquinas
– Informação trocada entre servidor e cliente está
limitada a apenas um endereço IP

2
Introdução
• Definido na RFCs 951, 1048 e 1084, o BOOTP
(BOOTstrap Protocol) foi projetado para suprir
algumas dessas deficiências
• Semelhanças & Diferenças
– Assim como o ARP, o BOOTP baseia-se em uma única
troca de mensagens
– Porém, nessa única troca são transferidas muito mais
informações do que no ARP
– Além disso, por usar o UDP (porta 67) e o IP, é mais
fácil para o programador implementar SW BOOTP
3
Funcionamento do BOOTP

??? 192.31.65.7
192.31.65.1/
192.31.60.4
BD E3/F1

E1 E2

Solicitação BOOTP Resposta BOOTP


• <END. IP CLIENTE => • <END. IP CLIENTE =>
• <“SEU” END. IP = > • <“SEU” END. IP = 192.31.65.5>
• <END. IP SERVIDOR = > • <END. IP SERVIDOR = 192.31.65.7>
• <END. IP GATEWAY = > • <END. IP GATEWAY = 192.31.65.1>
• <END. HW CLIENTE = E1> • <END. HW CLIENTE = E1>
• <HOSTNAME SERVIDOR = > • <HOSTNAME SERVIDOR = “server”>
4
Funcionamento do BOOTP
Nível de Aplicação

BOOTP Solicitação BOOTP...

Nível de Transporte
...encapsulada por
UDP um segmento UDP...

Nível de Rede
...encapsulado por
IP um datagrama IP...

Nível de Enlace

Protocolo ...encapsulado por


de Enlace um quadro

Endereços de difusão
5
Formato da Mensagem BOOTP
0 8 16 24 31
OPERAÇÃO TIPO END. HW TAM. END. HW SALTOS
IDENTIFICADOR DA TRANSAÇÃO
SEGUNDOS INUTILIZADO
ENDEREÇO IP DO CLIENTE (COLOCADO PELO CLIENTE)
“SEU” ENDEREÇO IP (COLOCADO PELO SERVIDOR)
ENDEREÇO IP DO SERVIDOR
ENDEREÇO IP DO ROTEADOR (GATEWAY)

ENDEREÇO DE HW DO CLIENTE (16 OCTETOS)

NOME (HOSTNAME) DO SERVIDOR (64 OCTETOS)

NOME DO ARQUIVO DE INICIALIZAÇÃO (128 OCTETOS)

ÁREA ESPECÍFICA DO FABRICANTE (64 OCTETOS) 6


Processo de Inicialização para
Máquinas Sem Disco
• Duas etapas
1. Máquina obtém junto a servidores BOOTP as
informações necessárias ao descarregamento de
uma imagem do SO
2. Máquina descarrega o SO de um repositório
remoto (usando o TFTP, por exemplo)
• BOOTP desacopla as etapas de configuração e
armazenamento durante a inicialização
– O Servidor de arquivos pode, inclusive, ser
executado a partir de uma máquina diferente da
que executa o servidor BOOTP
7
Processo de Inicialização para
Máquinas Sem Disco
192.31.65.1/
Servidor BOOTP Servidor de arq. 192.31.60.4
IP??? IP??? (192.31.65.7) (192.31.65.8)
E3/F1

BD imagens

E3 E4
E1 E2

Solicitação BOOTP Resposta BOOTP


• <END. IP CLIENTE => • <END. IP CLIENTE =>
• <“SEU” END. IP = > • <“SEU” END. IP = 192.31.65.5>
• <END. IP SERVIDOR = > • <END. IP SERVIDOR = 192.31.65.7>
• <END. IP GATEWAY = > • <END. IP GATEWAY = 192.31.65.1>
• <END. HW CLIENTE = E1> • <END. HW CLIENTE = E1>
• <HOSTNAME SERVIDOR = > • <HOSTNAME SERVIDOR = “server”>
• <NOME ARQ. INIC. = “unix”> • <NOME ARQ. INIC. = “192.31.65.8/unixImg.iso”>
8
Processo de Inicialização para
Máquinas Sem Disco

192.31.65.1/
Servidor BOOTP Servidor de arq. 192.31.60.4
192.31.65.5 IP??? (192.31.65.7) (192.31.65.8)
E3/F1

BD imagens

E3 E4
E1 E2
TFTP

9
Processo de Inicialização para
Máquinas Sem Disco

Servidor BOOTP Servidor de arq.


192.31.65.5 IP??? (192.31.65.7) (192.31.65.8)
E3/F1

BD imagens

E3 E4
E1 E2

Solicitação BOOTP Resposta BOOTP


• <END. IP CLIENTE => • <END. IP CLIENTE =>
• <“SEU” END. IP = > • <“SEU” END. IP = 192.31.65.6>
• <END. IP SERVIDOR = > • <END. IP SERVIDOR = 192.31.65.7>
• <END. IP GATEWAY = > • <END. IP GATEWAY = 192.31.65.1>
• <END. HW CLIENTE = E2> • <END. HW CLIENTE = E1>
• <HOSTNAME SERVIDOR = > • <HOSTNAME SERVIDOR = “server”>
• <NOME ARQ. INIC. = “windows”> • <NOME ARQ. INIC. = “192.31.65.8/winImg.iso”>
10
Processo de Inicialização para
Máquinas Sem Disco

192.31.65.1/
Servidor BOOTP Servidor de arq. 192.31.60.4
192.31.65.5 192.31.65.6 (192.31.65.7) (192.31.65.8)
E3/F1

BD imagens

E3 E4
E1 E2
TFTP

11
Área do Fabricante
Nome Código Tam. Conteúdo
Preenchimento 0 - Zeros – usado apenas para preenchimento
Máscara de subrede 1 4 Máscara de subrede para rede local
Hora do dia 2 4 Hora do dia em UTC
Final 255 - Final da lista de itens
Roteadores 3 N Endereços IP de N/4 roteadores
Servidores de Tempo 4 N Endereços IP de N/4 Servidores de Tempo
Servidores IEN116 5 N Endereços IP de N/4 Servidores IEN116
Servidores DNS 6 N Endereços IP de N/4 Servidores DNS
Servidores de Log 7 N Endereços IP de N/4 Servidores de Log
Servidores de Cotas 8 N Endereços IP de N/4 Servidores de Cotas
Servidores Lpr 9 N Endereços IP de N/4 Servidores Lpr
Servidores de Impressão 10 N Endereços IP de N/4 Servidores de Impressão
Servidores RLP 11 N Endereços IP de N/4 Servidores RLP
Hostname 12 N N bytes do nome do computador do cliente
Tam. Arq. de Inicialização 13 2 Tamanho do arquivo de inicialização
12
RESERVADO 128-254 - Reservado para uso específico do sítio
DHCP
• Similarmente ao RARP, o BOOTP foi projetado
para operação em um ambiente estático
– O BOOTP provê apenas um mapeamento estático
entre um identificador de máquina e um conjunto de
parâmetros para aquela máquina
• Com o advento dos computadores móveis e as
redes sem fio, era necessário um outro protocolo
de inicialização
• Neste contexto, surgiu o DHCP (Dynamic Host
Configuration Protocol)
• O DHCP é descrito nas RFCs 2131 e 2132
13
A Necessidade de Configuração Dinâmica

• A LAN de um laboratório de uma universidade


possui uma rede classe C
• Há espaço para 30 alunos no laboratório
• Cada aluno tem seu próprio computador
portátil
• A escala de utilização do laboratório prevê seu
uso em 10 slots de aulas por semana, cada
aula sendo dada para uma turma diferente

14
Funcionamento do DHCP
• Um endereço IP é arrendado a uma máquina
???
192.31.65.7

Solicitação DHCP
BD

Resposta DHCP
E1 E2

• O cliente DHCP pode sugerir um intervalo de


tempo para expiração do arrendamento
• Porém, a palavra final sobre qual será esse
tempo é dada pelo Servidor DHCP
15
Agentes de Retransmissão
WAN
Ethernet CC Ethernet EE
192.31.65.0 F2
192.31.63.0
Agente de
Retransmissão 192.31.65.1/ 192.31.60.7/ Servidor DHCP
192.31.65.5 192.31.60.4 (192.31.63.7) 192.31.63.8
(192.31.65.7) 192.31.63.1
E3/F1 F3/E4

FDDI
E1 E2 E5 E6

Solicitação DHCP (difusão)


Solicitação DHCP (unicast)

16
Formato da Mensagem DHCP
0 8 16 24 31
OPERAÇÃO TIPO END. HW TAM. END. HW SALTOS
IDENTIFICADOR DA TRANSAÇÃO
SEGUNDOS FLAGS
ENDEREÇO IP DO CLIENTE (COLOCADO PELO CLIENTE)
“SEU” ENDEREÇO IP (COLOCADO PELO SERVIDOR)
ENDEREÇO IP DO SERVIDOR
ENDEREÇO IP DO ROTEADOR (GATEWAY)

ENDEREÇO DE HW DO CLIENTE (16 OCTETOS)

NOME (HOSTNAME) DO SERVIDOR (64 OCTETOS)

NOME DO ARQUIVO DE INICIALIZAÇÃO (128 OCTETOS)

OPÇÕES (TAMANHO VARIÁVEL) 17


Campo FLAGS
• Substitui o campo INUTILIZADO do BOOTP
• Possui apenas um de seus bits definido
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
B

– Se B = 1, o servidor responde usando o endereço


de enlace de difusão
– Se B = 0, o servidor responde usando o endereço
de enlace unicast

18
Campo OPÇÕES
• Análogo a ÁREA ESPECÍFICA DO
FABRICANTE do BOOTP
• Usado para se armazenar parâmetros
relacionados ao arrendamento de endereço IP,
sobrecarga de opções e tipos de mensagens
TIPO Mensagem DHCP
1 DHCPDISCOVER
0 8 16 23 2 DHCPOFFER

CÓDIGO (53) TAMANHO (1) TIPO (1→7) 3 DHCPREQUEST


4 DHCPDECLINE
5 DHCPACK
6 DHCPNACK
7 DHCPRELEASE 19
INICIALIZAR

/envia msg
DHCPDISCOVER

recebe msg
DHCPNACK ou expira recebe msg
Temporizador de DHCPNACK/
recebe msg expiração/
SELECIONAR DHCPOFFER/

Expira temporizador de religação/


envia msg DHCPREQUEST
RELIGAR RENOVAR
Seleciona oferta/
envia msg DHCPREQUEST

recebe msg
recebe msg DHCPACK/
DHCPACK/
SOLICITAR
Expira temporizador de renovação/
envia msg DHCPREQUEST

recebe msg
DHCPACK/
LIGADO

Temporizador de renovação Cancela arrendamento/


• 50 % do temporizador de expiração envia msg DHCPRELEASE
Temporizador de religação
• 87,5 % do temporizador de expiração 20

Você também pode gostar