Хост не знает, до определенного времени, MAC-адрес, используемый для связи с маршрутизатором по умолчанию. Чтобы получить информацию о MAC-адресе, используется протокол ARP.
ARP (Address Resolution Protocol) – протокол преобразования адресов TCP/IP. Протокол с помощью которого IP-хост может, зная IP-адрес другого IP-хоста, находящегося в той же локальной подсети, выяснить его MAC-адрес.
Чтобы хост мог узнать, какой MAC-адрес у маршрутизатора, ему достаточно спросить об этом маршрутизатор. Осуществляется это широковещанием по протоколу ARP. Широковещание по протоколу ARP (ARP broadcast) – это широковещательный фрейм локальной сети, который содержит ARP-запрос. Запрос содержит IP-адрес; если хост, которому принадлежит этот IP-адрес получает запрос, он должен ответить, указав в сообщении с ARP-ответом свой MAC адрес. В сообщении, говориться примерно следующее: «Эй, если это твой IP-адрес, сообщи мне свой MAC-адрес».
Протокол ARP предает широковещательное сообщение, в котором указывает IP-адрес, для которого ARP ищет соответствующий MAC-адрес. Поэтому все хосты кроме маршрутизатора проигнорируют запрос.
Маршрутизатор отвечает сообщением ARP, которое называется ответ ARP (ARP reply) – это одноадресный фрейм, передаваемый в локальной сети и содержащий IP-адрес и MAC-адрес, отвечающей стороны. В ответе ARP не используется в качестве адреса получателя широковещательный Ethernet-адрес, вместо этого используется адрес отправителя широковещательного сообщения ARP.
Для того, чтобы в следующий раз, при возникновении необходимости отправки пакета на тот же самый хост, не возникало необходимости в отправке широковещательного сообщения по протоколу ARP, хост сохраняет информацию об соответствии IP- и MAC-адресов в кэше ARP в виде т.н. ARP-таблицы. ARP-кэш(ARP сасхе) — таблица, имеющаяся а каждом IP-хосте, включая маршрутизаторы, которая содержит IP- и соответствующие им MAC-адреса, полученные в результате их изучения с помощью протокола ARP.