Sei sulla pagina 1di 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

da

Por

máquina, dificulta a construção de servidores por parte de programadores de aplicações

Não

relativamente

próximo

operar

ao

HW

pode

usado

redes

alocam

ser

em

que

dinamicamente endereços de HW às máquinas

Informação trocada entre servidor e cliente está limitada a apenas um endereço IP

Introdução

Definido na RFCs 951, 1048 e 1084, o BOOTP

( BOOT strap P rotocol) 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

Funcionamento do BOOTP

Funcionamento do BOOTP 192.31.65.7 ??? BD E1 E2 Solicitação BOOTP • <END. IP CLIENTE => •
192.31.65.7 ??? BD E1 E2 Solicitação BOOTP • <END. IP CLIENTE => • <END. IP
192.31.65.7
???
BD
E1
E2
Solicitação BOOTP
• <END. IP CLIENTE =>
• <END. IP CLIENTE =>
• <“SEU” END. IP = >
• <END. IP SERVIDOR = >
• <END. IP GATEWAY = >
• <END. HW CLIENTE = E1>
<END. HW CLIENTE = E1>
• <HOSTNAME SERVIDOR = >
CLIENTE = E1> • <HOSTNAME SERVIDOR = > • 192.31.65.1/ 192.31.60.4 E3/F1 Resposta BOOTP

192.31.65.1/

192.31.60.4

E3/F1

Resposta BOOTP

<“SEU” END. IP = 192.31.65.5>

<END. IP SERVIDOR = 192.31.65.7>

<END. IP GATEWAY = 192.31.65.1>

<HOSTNAME SERVIDOR = “server”>

4

Funcionamento do BOOTP

Nível de Aplicação

BOOTP

Solicitação BOOTPFuncionamento do BOOTP Nível de Aplicação BOOTP Nível de Transporte UDP encapsulada por um segmento UDP

do BOOTP Nível de Aplicação BOOTP Solicitação BOOTP Nível de Transporte UDP encapsulada por um segmento

Nível de Transporte

UDP

encapsulada

por

um segmento UDP

Nível de Rede IP Nível de Enlace Protocolo de Enlace Endereços de difusão
Nível de Rede
IP
Nível de Enlace
Protocolo
de Enlace
Endereços de difusão

encapsulado

por

um datagrama IP

encapsulado um quadro

por

5

Formato da Mensagem BOOTP

0

8

16

24

31

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)

OPERAÇÃO

TIPO END. HW

TAM. END. HW

SALTOS

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

Processo de Inicialização para

Máquinas Sem Disco

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
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

192.31.65.1/

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) BD imagens E3 E4 E1 E2
Servidor BOOTP
Servidor de arq.
192.31.65.5
IP???
(192.31.65.7)
(192.31.65.8)
BD
imagens
E3
E4
E1
E2
TFTP

192.31.65.1/

192.31.60.4

E3/F1

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
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

Servidor BOOTP Servidor de arq. 192.31.65.5 192.31.65.6 (192.31.65.7) (192.31.65.8) BD imagens E3 E4 E1 E2
Servidor BOOTP
Servidor de arq.
192.31.65.5
192.31.65.6
(192.31.65.7)
(192.31.65.8)
BD
imagens
E3
E4
E1
E2
TFTP

192.31.65.1/

192.31.60.4

E3/F1

Á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

RESERVADO

128-254

-

Reservado para uso específico do sítio

12

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

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

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

aluno

tem

próprio

computador

seu

Funcionamento do DHCP

Um endereço IP é arrendado a uma máquina

??? 192.31.65.7 Solicitação DHCP BD Resposta DHCP E1 E2
???
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

Agentes de Retransmissão

WAN

Ethernet CC Ethernet EE 192.31.65.0 192.31.63.0 F2 Agente de 192.31.65.1/ Servidor DHCP Retransmissão
Ethernet CC
Ethernet EE
192.31.65.0
192.31.63.0
F2
Agente de
192.31.65.1/
Servidor DHCP
Retransmissão
192.31.60.7/
192.31.63.8
192.31.60.4
(192.31.63.7)
192.31.65.5 (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)

Solicitação DHCP (unicast)Solicitação DHCP (difusão)

Formato da Mensagem DHCP

0

8

16

24

31

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)

OPERAÇÃO

TIPO END. HW

TAM. END. HW

SALTOS

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

Campo OPÇÕES

Análogo

ÁREA

ESPECÍFICA

DO

FABRICANTE do BOOTP

se armazenar parâmetros

relacionados ao arrendamento de endereço IP,

a

Usado

para

sobrecarga de opções e tipos de mensagens

0

8

16

23

CÓDIGO (53)

TAMANHO (1)

TIPO (1→7)

TIPO

Mensagem DHCP

1

DHCPDISCOVER

2

DHCPOFFER

3

DHCPREQUEST

4

DHCPDECLINE

5

DHCPACK

6

DHCPNACK

7

DHCPRELEASE 19

/envia msg

DHCPDISCOVER

SELECIONAR
SELECIONAR

recebe msg

DHCPOFFER/

Seleciona oferta/ envia msg DHCPREQUEST

INICIALIZAR
INICIALIZAR

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

recebe msg

DHCPNACK/

Expira temporizador de religação/ envia msg DHCPREQUEST

RELIGAR
RELIGAR
RENOVAR
RENOVAR
SOLICITAR
SOLICITAR

recebe msg

DHCPACK/

recebe msg

DHCPACK/

recebe msg

DHCPACK/

Temporizador de renovação 50 % do temporizador de expiração Temporizador de religação 87,5 % do temporizador de expiração

LIGADO
LIGADO

Expira temporizador de renovação/ envia msg DHCPREQUEST

Cancela arrendamento/ envia msg DHCPRELEASE

20