logo search
04-09-2015_19-17-13 (1) / Конспект лекций lll

Ip-адрес мас-адрес Тип записи

194.85.135.75 008048ЕВ7Е60 Динамический

194.85.135.70 08005А21А722 Динамический

194.85.60.21 008048ЕВ7567 Статический

Поле «Тип записи» может содержать одно из двух значений — «динамический» или «статический». Статические записи создаются вручную с помощью утилиты агр и не имеют срока устаревания, точнее, они существуют до тех пор, пока компь­ютер или маршрутизатор не будут выключены. Динамические же записи создают­ся модулем протокола ARP, использующим широковещательные возможности локальных сетевых технологий. Динамические записи должны периодически об­новляться. Если запись не обновлялась в течение определенного времени (порядка нескольких минут), то она исключается из таблицы. Таким образом, в ARP-табли-це содержатся записи не обо всех узлах сети, а только о тех, которые активно участвуют в сетевых операциях. Поскольку такой способ хранения информации называют кэшированием, ARP-таблицы иногда называют ARP-кэш.

В глобальных сетях администратору сети чаще всего приходится вручную фор­мировать ARP-таблицы, в которых он задает, например, соответствие IP-адреса адресу узла сети Х.25, который имеет для протокола IP смысл локального адреса. В последнее время наметилась тенденция автоматизации работы протокола ARP и в глобальных сетях. Для этой цели среди всех маршрутизаторов, подключенных к какой-либо глобальной сети, выделяется специальный маршрутизатор, который ведет ARP-таблицу для всех остальных узлов и маршрутизаторов этой сети. При таком централизованном подходе для всех узлов и маршрутизаторов вручную нужно задать только IP-адрес и локальный адрес выделенного маршрутизатора. Затем каждый узел и маршрутизатор регистрирует свои адреса в выделенном маршрутиза­торе, а при необходимости установления соответствия между IP-адресом и локаль­ным адресом узел обращается к выделенному маршрутизатору с запросом и автоматически получает ответ без участия администратора. Работающий таким образом маршрутизатор называют ARP-сервером.

Итак, после того как модуль IP обратился к модулю ARP с запросом на разре­шение адреса, происходит поиск в ARP-таблице указанного в запросе IP-адреса. Если таковой адрес в ARP-таблице отсутствует, то исходящий IP-пакет, для кото­рого нужно было определить локальный адрес, ставится в очередь. Далее протокол ARP формирует свой запрос (ARP-запрос), вкладывает его в кадр протокола ка­нального уровня и рассылает запрос широковещательно.

Все узлы локальной сети получают ARP-запрос и сравнивают указанный там IP-адрес с собственным. В случае их совпадения узел формирует ARP-ответ, в котором указывает свой IP-адрес и свой локальный адрес, а затем отправляет его уже направ­ленно, так как в ARP-запросе отправитель указывает свой локальный адрес. ARP-запросы и ответы используют один и тот же формат пакета. В табл. 5.6 приведены значения полей примера ARP-запроса для передачи по сети Ethernet.

Таблица 5.6. Пример ARP-запроса

Тип сети 1 (0х1)

Тип протокола 2048 (0х800)

Длина локального адреса 6 (0х6)

Длина сетевого адреса 4 (0х4)

Опция 1 (0х1)

Локальный адрес отправителя 008048ЕВ7Е60

Сетевой адрес отправителя 194.85.135.75

Локальный (искомый) адрес получателя 000000000000

Сетевой адрес получателя 194.85.135.65

В поле «тип сети» для сетей Ethernet указывается значение 1.

Поле «тип протокола» позволяет использовать протокол ARP не только для

протокола IP, но и для других сетевых протоколов. Для IP значение этого поля равно OSOOie.

Длина локального адреса для протокола Ethernet равна 6 байт, а длина IP-адреса — 4 байт. В поле операции для ARP-запросов указывается значение 1, если это запрос, и 2, если это ответ.

Из этого запроса видно, что в сети Ethernet узел с IP-адресом 194.85,135.75 пытается определить, какой МАС-адрес имеет другой узел той же сети, сетевой адрес которого 194.85.135.65. Поле искомого локального адреса заполнено нулями.

Ответ присылает узел, опознавший свой IP-адрес. Если в сети нет машины с искомым IP-адресом, то ARP-ответа не будет. Протокол IP уничтожает IP-пакеты,

направляемые по этому адресу. (Заметим, что протоколы верхнего уровня не могут отличить случай повреждения сети Ethernet от случая отсутствия машины с иско­мым IP-адресом.) В табл. 5.7 помещены значения полей ARP-ответа, который мог бы поступить на приведенный выше пример ARP-запроса.

Таблица 5.7. Пример ARP-ответа

Тип сети 1(0х1)

Тип протокола 2048 (0х800)

Длина локального адреса 6 (0х6)

Длина сетевого адреса 4 (0х4)

Опция 1(0х1)

Локальный адрес отправителя OOEOF77F1920

Сетевой адрес отправителя 194.85.135.65

Локальный (искомый) адрес получателя 008048ЕВ7Е60

Сетевой адрес получателя 194.85.135.75

Этот ответ получает машина, сделавшая ARP-запрос. Модуль ARP анализирует ARP-ответ и добавляет запись в свою ARP-таблицу (табл. 5.8). В результате обме­на этими двумя ARP-сообщениями модуль IP-узла 194.85.135.75 определил, что IP-адресу 194.85.135.65 соответствует МАС-адрес OOEOF77F1920. Новая запись в ARP-таблице появляется автоматически, спустя несколько миллисекунд после того, как она потребовалась.

Таблица 5.8. Обновленная ARP-таблица

IP-адрес

МАС-адрес

Тип записи

194.85.135.75 194.85.135.70 194.85.60.21 194.85.135.65

008048ЕВ7Е60 08005А21А722 008048ЕВ7567 OOEOF77F1920

Динамический

Динамический

Статический

Динамический

ПРИМЕЧАНИЕ Некоторые реализации IP и ARP не ставят IP-пакеты в очередь на время ожидания ARP-ответов. Вместо этого IP-пакет просто уничтожается, а его восстановление возлагается на модуль TCP или прикладной процесс, работающий через UDP. Такое восстановление выполняется с помощью тайм-аутов и повторных передач. Повторная передача сообщения проходит успешно, так кок первая попытка уже вызвала запол­нение ARP-таблицы.