Процесс ARP - Отображение IP адресов на MAC-адреса

Рубрика: Ethernet

Протокол ARP обеспечивает две основных функции:

  • Разрешение IPv4 к MAC-адресам

  • Поддержание кэша сопоставлений

Процесс ARP

Разрешение IPv4 Адресов к MAC-Адресам

Чтобы поместить кадр на носитель LAN, он должен иметь MAC-адрес назначения. Когда пакет отправляется Канальному уровню, который будет инкапсулировать его во фрейм, узел обращается к таблице в своей памяти, чтобы найти адрес Канального уровня, который соответствует целевому адресу IPv4. Эту таблицу называют таблицей ARP или кэшем ARP. Таблица ARP хранится в памяти RAM устройства.

У каждой записи, или строки, таблицы ARP есть пара значений: IP-адрес и MAC-адрес. Мы называем отношение между двумя значениями отображением (картой, сопоставлением) - это просто означает, что можно найти IP-адрес в таблице и определить соответствующий ему MAC-адрес. Таблица ARP кэширует это сопоставление для устройств в локальной сети LAN.

Чтобы начать процесс, передающий узел пытается найти в ARP таблице MAC-адрес, соответствующий IPv4 назначения. Если это отображение кэшировано в таблице, узел использует MAC-адрес в качестве целевого MAC во фрейме, который инкапсулирует пакет IPv4. Затем Фрейм кодируется на сетевом носителе.

Поддержание Таблицы ARP

Таблица ARP поддерживается динамически. Есть два способа, посредством которых устройство может собирать MAC-адреса. Один путь состоит в том, чтобы контролировать трафик, который протекает в локальном сегменте сети. Когда узел принимает кадры с носителя, он может записать IP-адрес отправителя и MAC-адрес отправителя в качестве отображения в таблице ARP. По мере того как кадры передаются в сети, устройство заполняет таблицу ARP парами адресов.

Другой способ, по которому устройство может получить пару адресов, - широковещательный ARP запрос. ARP отправляет широковещательное сообщение Уровня 2 всем устройствам в Ethernet LAN. Фрейм содержит пакет ARP запроса с IP-адресом конечного хоста. Узел, принимающий кадр, который идентифицирует IP-адрес как свой собственный, отвечает, отсылая пакет ARP ответа назад к отправителю в виде одноадресного кадра. Этот ответ затем используется, чтобы сделать новую запись в таблице ARP.

К этим динамическим записям в таблице ARP добавляется отметка времени почти таким же образом, как это происходит с записями таблицы MAC в коммутаторах. Если устройство не принимает кадр от определенного устройства к тому времени, когда метка времени истекает, запись для этого устройства удаляется из таблицы ARP.

Кроме того, статические записи сопоставлений могут быть добавлены в таблицу ARP, но это делается редко. Статические записи таблицы ARP не истекают с течением времени и должны удаляться вручную.

Создание Фрейма

Что делает узел, когда он должен создать фрейм, а кэш ARP не содержит сопоставления IP-адреса к целевому MAC-адресу? Когда ARP получает запрос, чтобы отобразить адрес IPv4 на MAC-адрес, он ищет кэшированное спосоставление в своей таблице ARP. Если запись не находится, происходит сбой инкапсуляции пакета IPv4 и процессы Уровня 2 уведомляют ARP, что это нуждается в сопоставлении.

Тогда процессы ARP отсылают пакет ARP запроса, чтобы обнаружить MAC-адрес целевого устройства в локальной сети. Если у устройства, получающего запрос, IP-адрес соответствует искомому IP адресу, он отправляет ARP ответ. В таблице ARP создается сопоставление. Теперь для этого адреса IPv4 пакеты могут быть инкапсулированы во фреймы.

Если никакое устройство не отвечает на ARP запрос, пакет отбрасывается, потому что фрейм не может быть создан. Об этом отказе инкапсуляции сообщается верхним уровням устройства. Если устройство является посредническим устройством, как маршрутизатор, верхние уровни могут ответить исходному узелу сообщением об ошибке в пакете ICMPv4.

Переключайте кнопки на рисунке, чтобы просмотреть процесс, используемый для получения MAC-адреса узла в локальной физической сети.

Далее: Основные Сетевые Критерии

Смотрите также
Комментарии
Написать

(обязательно)

(обязательно)

Это не спам (обязательно)