Отображение физических адресов на IР- адреса: протоколы ARP и RARP

В протоколе IP-адрес узла, то есть адрес компьютера или порта маршрутизатора, назначается произвольно администратором сети и прямо не связан с его локальным адресом, как это сделано, например, в протоколе IPX. Подход, используемый в IP, удобно использовать в крупных сетях и по причине его независимости от формата локального адреса, и по причине стабильности, так как в противном случае, при смене на компьютере сетевого адаптера это изменение должны бы были учитывать все адресаты всемирной сети Internet (в том случае, конечно, если сеть подключена к Internety ). Локальный адрес используется в протоколе IP только в пределах локальной сети при обмене данными между маршрутизатором и узлом этой сети. Маршрутизатор, получив пакет для узла одной из сетей, непосредственно подключенных к его портам, должен для передачи пакета сформировать кадр в соответствии с требованиями принятой в этой сети технологии и указать в нем локальный адрес узла, например, его МАС-адрес. В пришедшем пакете этот адрес не указан, поэтому перед маршрутизатором встает задача поиска его по известному IP-адресу, который указан в пакете в качестве адреса назначения, с аналогичной задачей сталкивается и конечный узел, когда он хочет отправить пакет в удаленную сеть через маршрутизатор, подключенный к той же локальной сети, что и данный узел. Для определения локального адреса по IP-адресу используется протокол разрешения адреса Address Sesohition Protocol, ARP, Протокол АRР работает различным образом в зависимости от того, какой протокол канального уровня работает в данной сети - протокол локальной сети (Ethernet, Token Ring, FDDI) с возможностью широковещательного доступа одновременно ко всем узлам сетн, или же протокол глобальной сети (Х-25, frame relay), как правило, не поддерживающий широковещательный доступ. Существует также протокол, решающий обратную задачу • нахождение IР-адрса по известному локальному адресу. Он называется реверсивный ARP - RARP (Severse Address Resolution Protocol) н используется при старте бездисковых станций, не знающих в начальный момент своего IP-адреса, но знающих адрес своего сетевого адаптера.

В локальных сетях протокол АRР использует широковещательные кадры протокола канального уровня для поиска в сети узла с заданным IP-адресом.

Узел, которому нужно выполнить отображение IР- адреса на локальный адрес, формирует АRР запрос, вкладывает его в кадр протокола канального уровня, указывая в нем известный IP-адрес, н рассылает запрос широковещательно. Все узлы локальной сети получают АRР запрос и сравнивают указанный там IP-адрес с собственным. В случае их совпадения узел формирует АRР - ответ, в котором указывает свой IP-адрес и свой локальный адрес и отправляет его уже направленно, так как в АRР запросе отправитель указывает свой локальный адрес. АRР - запросы и ответы используют един и тот же формат пакета. Так как локальные адреса могут в различных типах сетей иметь различную длину, то формат пакета протокола АRР зависит от типа сети. На рисунке 3.2 показан формат пакета протокола АRР для передачи по сети Ethernet.

image

В поле типа сети для сетей Ethernet указывается значение 1. Поле типа протокола позволяет использовать пакеты АRР не только для протокола IP, но и для других сетевых протоколов. Для IP значение этого поля равно 0800ц.

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

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

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

Предлагаю ознакомиться с аналогичными статьями: