• Nenhum resultado encontrado

Outros Protocolos. Prof. Dr. José Marcos C. Brito. Internet Control Message Protocol - ICMP

N/A
N/A
Protected

Academic year: 2021

Share "Outros Protocolos. Prof. Dr. José Marcos C. Brito. Internet Control Message Protocol - ICMP"

Copied!
17
0
0

Texto

(1)

Outros Protocolos

Prof. Dr. José Marcos C. Brito

Internet Control Message Protocol - ICMP

• Usado pelos hosts e roteadores para troca de informações relacionadas à camada de rede

– Tipicamente report de erro.

• Mensagens ICMP são transportadas por datagramas IP

• Mensagens contêm um campo de tipo e um campo de código

• O cabeçalho e os oito primeiro bytes do

datagrama IP que causou a mensagem também fazem parte da mesma

(2)

Algumas mensagens ICMP

TTL expired 0

11

Source quench 0

4

Destination port unreachable 2

3

Destination host unreachable 1

3

Destination network unreachable 0

3

Echo request 0

8

Echo reply (ping) 0

0

Descrição Cód

Tipo

Alguns usos do ICMP

• Ping

– Host de origem envia uma mensagem Echo request para o host especificado. O host de destino responde com um echo reply.

• Controle de congestionamento (quase nunca utilizada na prática)

– Roteador em congestionamento envia um

(3)

Alguns usos do ICMP

• Traceroute

– Host de origem envia datagramas UDP (com número de porta improvável).

– O primeiro datagrama vai com campo TTL = 1, o segundo com TTL = 2 e assim por diante.

– Host de origem iniciar um contador de tempo para cada datagrama

– Quando o roteador descarta o datagrama (TTL = 0), este envia de volta uma mensagem TTL expired, que contém o nome do roteador e seu endereço IP.

Alguns usos do ICMP

• Traceroute

– A fonte não sabe a quantos hops de distância está o destino.

– No entanto, o primeiro datagrama que chegar ao destino deve gerar uma mensagem ICMP Port

Unreachable, pois um número de porta improvável foi utilizado.

– Quando a fonte recebe esta mensagem ela sabe que o destino foi alcançado e pode parar de enviar

datagramas de probe.

(4)

Mapeamento de Endereços

• Mapeamento entre endereços lógicos e físicos

– ARP: Address Resolution Protocol

• Mapemanto entre endereços físicos e lógicos

– RARP: Reverse Address Resolution Protocol – BOOTP: Bootstrap Protocol

– DHCP: Dynamic Host Configuration Protocol

Protocolo de resolução de endereço - ARP

• Camada de enlace não entende endereços IP

– Ex.: Em Redes Locais o que a placa de rede vê é o endereço Ethernet (48 bits)

– Há necessidade de converter endereço IP em endereço da Camada de Enlace

(5)

ARP - Exemplo

Exemplo

• Usuário do host 1 envia mensagem para um usuário do host 2

– Através do DNS (Domain Name System) o

endereço do host 2 é convertido para o endereço IP correspondente (192.31.65.5)

– O software IP no host 1 olha para o endereço de destino e sabe que ele está na sua própria rede, mas não sabe o endereço Ethernet

correspondente.

(6)

Exemplo

• Como descobrir o endereço Ethernet do endereço IP 192.31.65.5 ?

– Ter um arquivo de configuração que mapeia os endereços IP em endereços Ethernet é uma solução possível, mas não é indicada pela complexidade resultante quando o número de máquinas cresce

ARP

• Host 1 envia um pacote em broadcast com a seguinte pergunta: “quem nesta rede tem o endereço 192.31.65.5” ?

• Host 2 responde enviando seu endereço Ethernet (E2). A resposta é Unicast.

• Host 1 aprende que associado ao endereço IP 192.31.65.5 está o endereço Ethernet E2

(7)

ARP packet

ARP

• O Host 1 armazena o par de endereços (IP,Ethernet) da máquina 2 para uso futuro

– O cache dura tipicamente 20 minutos

• O par de endereços do Host 1 está contido na mensagem de broadcast, permitindo que as demais máquinas da rede tomem conhecimento deste par de endereços (mas não

necessariamente o processam).

(8)

ARP

• Quando a máquina faz o boot, ela envia uma mensagem do tipo “qual máquina da rede tem meu próprio endereço?”

– O objetivo desta mensagem é apenas fazer um broadcast do par de endereços

(IP,Ethernet) da máquina que está

inicializando, de modo que os demais Hosts possam aprender esta informação

ARP

– Se outro Host responde “Meu endereço Ethernet é EX”, existem dois Hosts na rede com o mesmo endereço IP. A máquina que está inicializando aborta o processo e gera mensagem de erro

(9)

Quatro casos de uso do ARP

Host 1 deseja enviar pacote para o Host 4

• Solução 1: O roteador R1 pode ser

configurado para responder às requisições ARP para a rede 192.31.63.0

– O Host 1 fará o mapeamento (192.31.63.8,E3) e enviará todo o tráfego destinado ao Host 4 para o roteador local

– Esta solução é chamada de PROXY ARP

(10)

Host 1 deseja enviar pacote para o Host 4

• Solução 2: O Host 1 verifica que o pacote se destina a uma rede remota e envia todo o tráfego para o endereço Ethernet default que manuseia todo o tráfego remoto, neste caso E3.

– Esta solução não requer que o roteador R1 saiba quais redes remotas ele está servindo.

O que acontece no roteador R1?

• Com base no endereço IP de destino e em sua tabela de roteamento ele descobre que os pacotes destinados à rede 192.31.63.0 devem ser enviados para o roteador

192.31.60.7.

– Se ele ainda não conhece o endereço FDDI deste roteador ele envia, em broadcast, uma requisição ARP solicitando que a máquina 192.31.60.7 se

(11)

O que acontece no roteador R2?

• O roteador examina o endereço IP do pacote e descobre que deve enviá-lo à máquina 192.31.63.8

– Se ele ainda não sabe o endereço Ethernet correspondente, ele envia uma requisição ARP para a rede e aprende que o Host de destino tem endereço Ethernet E6.

Mensagem para a WAN

• O roteador R1 recebe a mensagem e,

através de sua tabela de roteamento,

descobre que deve enviá-la para o

roteador FDDI conectado à WAN (que

possui endereço IP 192.31.60.8, por

exemplo, e endereço FDDI F2)

(12)

RARP

• Host que não conhece seu endereço lógico envia mensagem de broadcast perguntando:

“Qual é meu endereço lógico?”

• Servidor define endereço lógico e encaminha de volta para o host.

• Como a mensagem de broadcast é na camada de enlace, deve haver um servidor RARP para cada domínio de broadcast. PROBLEMA

• Está sendo abandonado.

BOOTP

• Protocolo cliente/servidor da camada de aplicação

• Cliente e servidor podem estar na mesma rede ou em redes separadas

• As mensagens BOOTP são encapsuladas em segmentos UDP, que são transportados por datagramas IP

Não é um protocolo de configuração dinâmica

Deve preexistir no servidor uma tabela que

(13)

Cliente e servidor podem estar na mesma rede ou em redes diferentes

Cliente e Servidor na mesma rede

• Cliente envia mensagem de broadcast perguntando “qual é meu endereço IP?”.

• O endereço IP da fonte é todo 0 (o cliente não sabe qual é seu endereço)

• O endereço IP de destino é todo 1 (o

cliente não sabe o endereço do servidor)

(14)

Cliente e Servidor em redes diferentes

• Mensagem broadcast IP não passa pelo roteador

– Há necessidade de um agente de retransmissão que conheça o endereço unicast do servidor BOOTP

• Agente de retransmissão encapsula a

mensagem BOOTP em um datagrama unicast e a encaminha para o servidor

– Agente inclui seu endereço IP na mensagem para que a mesma seja devolvida para ele.

• O agente recebe a resposta e a encaminha para o cliente BOOTP

Problemas com o BOOTP

• O que acontece se o host mudar de uma rede física para outra?

• O que acontece se um host quiser um endereço IP temporário?

• O BOOTP não consegue lidar com isto, pois as associações entre endereços físicos e lógicos é estática e determinada em uma tabela

(15)

DHCP

• Permite alocação estática ou dinâmica de endereços

– Com alocação estática funciona como o BOOTP.

• Há compatibilidade, um cliente BOOTP pode acessar um servidor DHCP

– Com alocação dinâmica há um banco de dados com um pool de endereços IP disponíveis

• Servidor atribui um endereço IP disponível por um período negociável

DHCP

• Servidor primeiro verifica tabela estática, se não houver associação estática, utiliza o pool de endereços disponíveis para definir de forma dinâmica o endereço.

• A alocação dinâmica é temporária

– Valor é fornecido pelo servidor na mensagem de resposta.

– Esgotado o tempo de validade, o cliente deve deixar de usar o endereço ou solicitar renovação (que pode

(16)

Mensagens DHCP

• DHCP server discovery

– Enviada em um segmento UDP para a porta 67

– Endereço IP de destino 255.255.255.255 – Endereço IP de origem 0.0.0.0

– Mensagem alcança o servidor DHCP ou o agente de retransmissão (como no BOOTP)

Mensagens DHCP

• DHCP server offer

– Servidor responde se oferecendo como servidor (pode haver mais de um)

– Mensagem contém o endereço IP proposto, a máscara de rede e o tempo de vida do

endereço

(17)

DHCP mensagens

• DHCP request

– Cliente escolhe servidor (se houver mais de uma resposta) e responde com a mensagem de resposta, fazendo um eco dos parâmetros recebidos.

• DHCP ack

– Servidor reconhece o recebimento do request, confirmando os parâmetros requisitados.

Exemplo

Referências

Documentos relacionados