Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
part9.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
310.27 Кб
Скачать

6.2.3. Разрешение ip-адресов в физические адреса сетевых устройств. Протокол arp

Для доставки IP-пакета к станции назначения, или от одного маршрутизатора к другому, необходимо передать его протоколу канального уровня, например Ethernet. Последний же «умеет» передавать кадры только по физическим адресам устройств, подключенных к среде передачи. В IP-сетях задачу преобразования сетевых адресов в физические решает протокол ARP (Address Resolution Protocol). Идея его функционирования иллюстрируется рис. 6.6.

Пусть хост Н1 хочет отослать пакет хосту Н3, MAC-адрес которого не известен. Хост Н1 генерирует так называемый ARP-запрос – специальный МАС-кадр, имеющий широковещательный адрес назначения. В поле данных этого кадра (собственно, поля ARP-запроса) находится IP-адрес хоста, MAC-адрес которого необходимо узнать. Каждый узел сети, получив такой кадр, сравнивает находящийся в нем IP-адрес со своим сетевым адресом. Если совпадение обнаружено, то этот хост посылает запрашивающей станции ответный кадр (ARP-ответ), содержащий его физический адрес. На всех остальных станциях сети кадры, содержащие ARP-запросы с «чужим» искомым IP-адресом, уничтожаются. Для того, чтобы уменьшить количество передаваемых в сети ARP-запросов, каждое сетевое устройство имеет специальную буферную память, в которой хранит ARP-таблицу. Последняя пополняется каждый раз, когда хост получает ARP-ответ, или широковещательный ARP-запрос, в котором указаны сетевой и физический адреса станции-отправителя.

В ARP-таблице могут быть как статические, так и динамические записи. Статические записи добавляются администратором и сохраняются в таблице до перезагрузки устройства. Кроме того, в таблице всегда содержится широковещательный адрес (FFFFFFFFFFFF), который позволяет обрабатывать широковещательные пакеты. Динамические записи добавляются и удаляются автоматически. Запись добавляется в результате получения ARP-ответа на запрос, инициированный данной станцией, а также в результате приема широковещательных ARP-запросов, отправленных любой из станций сегмента (из них извлекается IP- и MAC-адреса источника). Каждая такая запись имеет потенциальное время жизни. После добавления записи в таблицу включается специальный таймер и, если в течение первых двух минут запись не используется (станция, соответствующая записи, не отвечала на ARP-запросы, или не отправляла их сама), то запись удаляется; в противном случае, время жизни такой записи составляет некое предустановленную величину (обычно 5-10 минут). Требования к хостам (Host Requirements RFC) говорит, что запись из ARP-таблицы должна удаляться по тайм-ауту, даже если данная запись используется, однако большинство реализаций протокола не делают этого - они обновляют значения времени жизни записи каждый раз, когда происходит обращение к ней. Ниже приведен фрагмент ARP-таблицы маршрутизатора.

Таблица 6.5

IP-address

Port

Type

Media Address

Address Source

20.0.0.0

2

Broadcast

FFFFFFFFFFFF

Static

10.0.0.0

1

Broadcast

FFFFFFFFFFFF

Static

10.0.0.10

1

Local

080002145DE6

Static

20.0.0.10

2

Local

080002145DE5

Static

10.0.0.1

1

External

080002A56BC0

ARP

20.0.0.1

2

External

080002A719DD

ARP

Протокол ARP достаточно универсален, и его можно применять в сетях, использующих любые технологии на сетевом и канальном уровнях. ARP-сообщения имеют формат, представленный на рис. 6.7; они переносятся кадром канального протокола в его поле «Данные».

В поле «Тип сети» указывается код канального протокола; для Ethernet указывается значение 1, определены значения этого поля и для других технологий канального уровня. Поле «Тип протокола» определяет протокол сетевого уровня. Эти поля совместно с полями «Длина аппаратного адреса» и «Длина сетевого адреса» обеспечивают отмеченную выше универсальность протокола ARP. В поле «Тип операции» для ARP-запроса указывается 1, для ARP-ответа – 2.

Устройство, отправляющее ARP-запрос, заполняет в этом сообщении-запросе все поля, кроме искомого аппаратного адреса. Значение этого поля заполняется станцией, опознавшей свой IP-адрес в указанном значении поля «Сетевой адрес получателя» при формировании сообщения ARP-ответа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]