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