Podem ocorrer duas situações na resolução de endereços:
O host de origem manda um pacote ARP contendo o número IP
de destino da mensagem para todas as demais estações de sua
rede. Somente a estação que se identificar com o número
IP desse pacote irá responder à mensagem, mandando de volta
o seu endereço MAC;
Além de mandar a mensagem, o host de origem armazena o endereço
MAC recebido do host destino em uma tabela temporária, que relaciona
números IP aos endereços MAC da suposta rede local.
Nesse caso, o host origem enviará um pacote ARP contendo
o número IP para o gateway, que então orientará esse
pacote por diversas conexões até que chegue na rede local
desejada. Ocorrerá, então, o mesmo que na situação
anterior,apenas diferenciando-se pelo fato de que o próprio gateway
enviará os pacotes ARP para todas as estações locais.
O RARP (Reverse Address Resolution Protocol) é um protocolo que
permite a uma estação descobrir seu próprio endereço
IP. Ele é bastante utilizado por estações de trabalho
desprovidas de disco rígido, uma vez que elas não tem como
armazenar permanentemente um endereço IP.
Cada vez que uma estação desse tipo vai mandar alguma
mensagem, ela precisa descobrir seu endereço IP.
Para tanto, ela envia uma mensagem ao servidor RARP de sua rede local,
contendo seu endereço MAC. O servidor então retorna à
estação seu número IP, possibilitando assim o envio
de mensagens.
O Proxy ARP é uma variação do ARP. Ele possibilita
que uma organização possua somente um endereço IP
para suas diversas redes.
Nesse caso, todas as redes estão conectadas a um router.Quando
um host quiser se comunicar com um host de outra rede (sem saber seu endereço
MAC), ele irá despejar um pacote com o número IP do host
destino. Mas nesse caso o pacote é interceptado primeiramente pelo
router, que retorna ao host destino seu próprio endereço
MAC. A informação subsequente será então orientada
para o router, que a redicionará para o host destino, de
acordo com a sua própria tabela de endereços.
A estrutura do Header ARP/RARP é mostrada na ilustração abaixo:
Estrutura do Header ARP/RARP
Hardware Type:
Especifica o tipo de interface de hardware a qual o emissor da requisição
espera resposta de solicitação.
Protocol Type
Especifica o tipo de protocolo de alto nível que o emissor da
requisição possui.
HLen
Comprimento do endereço de hardware.
PLen
Comprimento do endereço de protocolo.
Operation
Os valores são os seguintes?
1 ARP request
2 ARP response
3 RARP request
4 RARP response
5 Dynamic RARP request
6 Dynamic RARP reply
7 Dynamic RARP error
8 InARP request
9 InARP reply
Sender hardware address
Endereco de Hardware do emissor da requisição
Sender protocol address
Endereço do protocolo de terceiro nivel (nível superior)
do emissor da requisião
Targed hardware address
Endereco de Hardware do destinatário da requisição
Targed protocol address
Endereço do protocolo de terceiro nivel (nível superior)
do destinatário