ARP — протокол, предназначенный для определения адреса канального уровня по известному адресу сетевого уровня.
Существуют следующие типы сообщений ARP:
- запрос ARP (ARP-request)
- ответ ARP (ARP-reply)
Система-отправитель при помощи запроса ARP запрашивает физический адрес системы-получателя. Ответ (физический адрес узла-получателя) приходит в виде ответа ARP.
Перед тем как передать пакет сетевого уровня через сегмент Ethernet, узел проверяет кэш ARP, чтобы выяснить, не зарегистрирована ли в нём уже нужная информация о узле-получателе. Если такой записи в кэше ARP нет, то выполняется широковещательный запрос ARP. Этот запрос для устройств в сети имеет следующий смысл: «Знает ли кто-нибудь физический адрес устройства, обладающего следующим IP-адресом?». Когда получатель с этим IP-адресом примет этот пакет, то должен будет ответить: «Да, это мой IP-адрес. Мой физический адрес следующий: …». После этого отправитель обновит свой кэш ARP и будет способен передать информацию получателю.