В анимации на рисунке компьютер PC1 отправляет пакет компьютеру PC2. Компьютер PC1 должен определить, находится ли IPv4-адрес назначения в той же сети. Компьютер PC1 определяет собственную подсеть, совершая операцию AND со своим собственным IPv4-адресом и маской подсети. В результате этой операции будет получен сетевой адрес, которому принадлежит компьютер PC1. Далее PC1 выполняет ту же операцию AND с IPv4-адресом назначения пакета и маской подсети компьютера PC1.

Если сетевой адрес назначения находится в той же сети, что и PC1, то данный компьютер не использует шлюз по умолчанию. Вместо этого компьютер PC1 обращается к своему ARP-кэшу, чтобы найти МАС-адрес устройства с этим IPv4-адресом назначения. Если в ARP-кэше MAC-адрес не найден, PC1 создаёт ARP-запрос на получение адреса, чтобы успешно отправить пакет до места назначения. Если сетевой адрес назначения находится в другой сети, компьютер PC1 пересылает пакет на свой шлюз по умолчанию.

Чтобы определить МАС-адрес шлюза по умолчанию, PC1 ищет в своей таблице ARP IPv4-адрес шлюза по умолчанию и соответствующий MAC-адрес.

Если в таблице ARP нет записи для шлюза по умолчанию, PC1 отправляет ARP-запрос. Маршрутизатор R1 отправляет ARP-ответ. Затем PC1 может переслать пакет на МАС-адрес шлюза по умолчанию, интерфейс Fa0/0 маршрутизатора R1.

Аналогичный процесс выполняется для IPv6-пакетов. Вместо протокола ARP разрешение адресов IPv6 использует ICMPv6-сообщения типа Neighbor Solicitation и Neighbor Advertisement (запрос и объявление о соседях). Сопоставления IPv6-адресов с MAC-адресами хранятся в схожей с ARP-кэшем таблице, которая называется Neighbor cache (кэш информации о соседях).