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

1.1.4. Разрешение ip-адресов

1.1.4.1. Разрешение ip-адресов в mac-адреса

На канальном и физическом уровнях модели OSI для передачи IP-пакетов они должны содержать как минимум аппаратный (MAC) адрес получателя. Для определения MAC-адреса получателя необходим механизм сопоставления IP-адресу MAC-адреса.

Разрешение (преобразование) IP-адресов в соответствующие им MAC-адреса осуществляется при помощи протокола ARP (Address Resolution Protocol). Процесс сопоставления адресов достаточно прост. Когда компьютер должен отправить пакет, ARP отправляет в локальную сеть широковещательный запрос об MAC-адресе узла с данным IP-адресом. Если узел находится в локальной сети, то он отвечает на ARP запрос и возвращает свой MAC-адрес. На этом процедура разрешения адресов заканчивается. Немного по-другому протокол ARP работает для узла-получателя в удаленной сети. Если узел находится в удаленной сети, то шлюз по умолчанию возвращает в ответ на запрос свой MAC-адрес. После этого компьютер отправитель отправляет при помощи протокола ICMP (Internet Control Message Protocol, протокол используемый IP и другими высокоуровневыми протоколами для отправки и получения сообщений о статусе передаваемой информации) эхо-запрос узлу-получателю через шлюз по умолчанию, который пытается достичь конечного узла. При этом маршрутизатор (шлюз) начинает свой собственный ARP-сеанс – и так продолжается с каждым маршрутизатором по пути следования пакета, пока очередной маршрутизатор не обнаружит, что для него узел-получатель является локальным.

ПРИМЕР __________________________________________________

Если предположить, что на пути между узлом-отправителем и узлом-получателем находится три маршрутизатора, каждый из которых должен определить аппаратный адрес узла адресата (иначе говоря, адрес не находится в ARP-кэше каждого маршрутизатора). Ближайший к узлу-отправителю маршрутизатор отправляет ARP-запрос следующему маршрутизатору, тот отправляет запрос третьему, а третий отправляет запрос уже непосредственно узлу-адресату.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Когда узел-получатель сообщает своему локальному маршрутизатору свой аппаратный адрес, а так же ответ на ICMP-запрос, процесс разрешения адресов для адресата в удаленной сети заканчивается. Такой процесс определения удаленного адреса называется ARP-прокси, поскольку маршрутизатор играет для запросов роль прокси-сервера.

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

В большинство операционных систем включена утилита (команда) ARP, она имеет следующий синтаксис:

arp <ключ> <IP-адрес> <MAC-адрес>

Таблица 1.10 – Ключи команды ARP и их описание

Ключ

Описание

-a

Вывод записей содержащихся в ARP-кэше

-N

Вывод записей содержащихся в ARP-кэше и относящихся к определенному интерфейсу

-s

Добавление статической записи в ARP-кэш

-d

Удаление статической записи в ARP-кэш

Адреса можно вводить в ARP-кэш вручную (ключ -s), создаваемые таким образом статические записи не удаляются из кэша автоматически, однако они удаляются при перезагрузке системы или при получении широковещательного сообщения, свидетельству-ющего о неверности адреса. Если статическая запись изменяется в соответствии с широковещательным сообщением, ее тип тоже изменяется со статического на динамический и правило 10 минут вступает в силу.

Существует протокол обратного разрешения адресов RARP (Reverse Address Resolution Protocol). Его функции обратны ARP – он позволяет определить IP-адрес по данному аппаратному адресу. Этот протокол используется большей частью на бездисковых рабочих станциях (тонких клиентах), которые должны получить свой IP-адрес с сервера. Рабочая станция отправляет RARP-запрос, сервер RARP обрабатывает этот запрос и отправляет IP-адрес рабочей станции. В отличие от ARP протокол RARP требует сервера для назначения IP-адресов рабочим станциям, поэтому он используется не так широко, а после появления протокола DHCP (Dynamic Host Configuration Protocol) который мы рассмотрим позже, он стал скорее любопытной возможностью, но не функциональным протоколом.