Agora que já vimos como endereços IP são formados, pode-se estar curioso em saber como eles são usados em uma rede Ethernet para referenciar diferentes equipamentos. Na verdade, o protocolo Ethernet identifica uma máquina através de um número de seis octetos que não tem nada em comum com o endereço IP.
Um mecanismo de mapeamento de endereços é então necessário, para que possamos relacionar endereços Ethernet com endereços IP. Este sistema é denominado Protocolo de Resolução de Endereços, ou ARP2.5. Na verdade ARP não está restrito a redes Ethernet, mas pode ser usado em redes de rádio amadores por exemplo (!!). A idéia básica do ARP consiste no modelo usado por muitas pessoas que precisam encontrar Sr. Pedro Cabral em um conjunto de 150 pessoas: ele passeia entre elas, chamando pelo nome, seguramente se terá uma resposta caso ele esteja presente.
Quando ARP necessita descobrir o endereço Ethernet correspondente a um endereço IP fornecido, ele usa uma funcionalidade Ethernet conhecida como broadcasting, onde um datagrama é endereçado a todas as estações da rede simultaneamente. Ele contém um questionamento sobre o endereço IP. Cada máquina que receba o datagrama, compara este com o seu próprio endereço IP, e caso eles coincidam, a máquina retornará uma resposta ARP à estação de origem da pesquisa. Esta por sua vez pode agora extrair o endereço Ethernet da resposta.
Obviamente pode-se perguntar em como obter o endereço Ethernet de uma única máquina, entre ``zilhões'' de máquinas através de todo o mundo, que pode ainda sequer usar redes de tipo Ethernet. Estas questões envolvem um processo denominado roteamento, que tem a função de obter a localização física de uma máquina em uma rede. Este será o tema do próximo tópico.
Por hora, vamos tratar do ARP um pouco mais detidamente. Uma vez que o endereço Ethernet da máquina tenha sido descoberto, ele é armazenado no cache ARP, permitindo que o próximo acesso ao equipamento não tenha que sofrer o mesmo tipo de pesquisa de envio de datagramas a todas as máquinas da rede. Porém não seria muito inteligente manter esta informação indefinidamente. Por exemplo, a placa de rede Ethernet pode ser substituída por problemas técnicos, tornando o endereço ARP inválido. Para forçar uma nova pesquisa de endereços IP, as entradas no cache ARP são descartadas após algum tempo. Algumas vezes é necessário ainda encontrar o endereço IP associado a um endereço Ethernet fornecido. Isso ocorre quando um equipamento sem disco rígido necessita inicializar o sistema operacional a partir de um servidor de rede, o que é uma situação comum em uma rede local. Um cliente sem disco rígido, praticamente não tem nenhuma informação sobre si mesmo, exceto talvez o seu endereço Ethernet. Então, basicamente o que ele faz, é divulgar uma mensagem contendo um pedido aos servidores de inicialização para que informem qual é o seu endereço IP. Há ainda o protocolo RARP - (Protocolo de Resolução de Endereços Reversos). Em conjunto com o protocolo BOOTP serve para definir um procedimento de configuração de inicialização de clientes sem discos em uma rede2.6.