Опубликован: 28.09.2007 | Уровень: специалист | Доступ: платный
Лекция 5:

Протоколы DNS (структура, обработка запросов, ресурсные записи), ARP и RARP

< Лекция 4 || Лекция 5: 12345 || Лекция 6 >

В последнее время развивается технология DDNS — динамического обновления ресурсных записей зоны DNS внешними ЭВМ или процессами (Dynamic DNS; RFC-2136). Клиенты с возможностями DDNS могут сами обновлять записи локальных серверов имен. Еще более интересное решение базируется на интеграции служб DHCP и DNS. В этом варианте серверы DHCP, поддерживающие DDNS, посылают соответствующему серверу DNS данные для обновления записей, включая имена NetBIOS клиентов DHCP. Запись обновляется после выделения IP-адреса. При реализации DDNS возникают проблемы безопасности. Часть этих проблем может быть решена путем использования цифровых подписей (RFC-2137).

Еще одной проблемой, связанной со службой имен, являются атаки, которые сопряжены с имитацией DNS. Для преодоления таких атак разработан метод транзакционных подписей TSIG (Transaction SIGnature).

5.1. Протокол преобразования адресов ARP

Любое устройство, подключенное к локальной сети (Ethernet, FDDI и т.д.), имеет уникальный физический сетевой адрес, заданный аппаратным образом. 6байтовый Ethernet-адрес выбирает изготовитель сетевого интерфейсного оборудования из выделенного для него по лицензии адресного пространства. Если у машины меняется сетевой адаптер, то меняется и ее Ethernet-адрес.

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

Протокол ARP (address resolution protocol, RFC-826) решает именно эту проблему — преобразует IP в Ethernetадреса.

Рассмотрим процедуру преобразования адресов при отправлении сообщения. Пусть прикладная программа одной ЭВМ отправляет сообщение другой. Прикладной программе IP-адрес места назначения обычно известен. Для определения Ethernet-адреса просматривается ARP-таблица. Если для требуемого IP-адреса в ней присутствует Ethernet-адрес, то формируется и посылается соответствующий пакет. Если же с помощью ARP-таблицы не удается преобразовать адрес, то выполняется следующее:

  1. на IP-адрес места назначения накладывается маска машины отправителя и таким образом определяется, находится ли адресат в локальной субсети. Если это так, то
  2. всем машинам в сети посылается пакет с ARP-запросом (с широковещательным Ethernet-адресом места назначения);
  3. исходящий IP-пакет ставится в очередь.

Каждая машина, принявшая ARP-запрос, в своем ARP-модуле сравнивает собственный IP-адрес с IP-адресом в запросе. Если IP-адрес совпал, то прямо по Ethernet-адресу отправителя запроса посылается ответ, содержащий как IP-адрес ответившей машины, так и ее Ethernet-адрес. После получения ответа на свой ARP-запрос машина имеет требуемую информацию о соответствии IP и Ethernet-адресов, формирует элемент ARP-таблицы и отправляет IP-пакет, ранее поставленный в очередь. Если же в сети нет машины с искомым IP-адресом, то ARP-ответа не будет. Модуль IP будет уничтожать IP-пакеты, предназначенные для отправки по этому адресу.

Протоколы верхнего уровня не могут отличить случай повреждения в среде Ethernet от случая отсутствия машины с искомым IP-адресом. Во многих реализациях в случае, если IP-адрес не принадлежит локальной сети, внешний порт сети (gateway) или маршрутизатор откликается, выдавая свой физический адрес (режим проксиARP).

Функционально, ARP делится на две части. Одна определяет физический адрес при посылке пакета, другая отвечает на запросы других машин. ARP-таблицы имеют динамический характер, каждая запись в ней "живет" определенное время, после чего удаляется. Менеджер сети может осуществить запись в ARP-таблицу, которая там будет храниться "вечно". ARP-пакеты вкладываются непосредственно в Ethernetкадры. Формат ARP-пакета показан на рис. 5.9.

HALen — длина аппаратного адреса; PALen — длина протокольного адреса (длина в байтах, например, для IP-адреса PALen=4 ). Тип оборудования — это тип интерфейса, для которого отправитель ищет адрес; код содержит 1 для Ethernet. Ниже представлена таблица 5.4 кодов оборудования.

Поле код операции определяет, является ли данный пакет ARP-запросом (код = 1), ARP-откликом (2), RARP-запросом (3), или RARP-откликом (4).

ARP-таблицы строятся согласно документу RFC-1213 и для каждого IP-адреса содержит четыре кода (таблица 5.5.1.).

В SUN и некоторых других ЭВМ имеется программа arp, которая позволяет отобразить ARP-таблицу на экране. С флагом a команда отображает всю таблицу, флаг d позволяет стереть запись, а s служит для внесения записей в таблицу (последние два флага доступны для операторов с системными привилегиями). Команда ARP без флагов с адресом или именем ЭВМ выдаст соответствующую строку таблицы.

Формат пакета ARP

Рис. 5.9. Формат пакета ARP
Таблица 5.4. Коды оборудования
код типа оборудования описание
1 Ethernet (10 Мбит/с)
2 Экспериментальный Ethernet (3 Мбит/с)
3 Радиолюбительская связь через X.25
4 Proteon ProNET маркерная кольцевая сеть (Token Ring)
5 Chaos
6 Сети IEEE 802
7 ARCNET
arp 192.148.166.129
Name: semenov.itep.ru
Address: 192.148.166.129
Aliases: yas

А команда

arp nb

выдаст запись

nb (193.124.224.60) at 0:80:ad:2:24:b7 (запись для NetBlazer ИТЭФ)

ARP запросы могут решать и другие задачи. Так при загрузке сетевого обеспечения ЭВМ такой запрос может выяснить, а не присвоен ли идентичный IP-адрес какомуто еще объекту в сети. При смене физического интерфейса такой запрос может инициировать смену записи в ARP-таблице.

Таблица 5.5. Коды типов протоколов (для IP это 0800H)
код типа протокола описание
Десятичное значение Hex
512 0200 XEROX PUP
513 0201 PUP трансляция адреса
1536 0600 XEROX NS IDP
2048 0800 DOD Internet протокол (IP)
2049 0801 X.75 Internet
2050 0802 NBS Internet
2051 0803 ECMA Internet
2052 0804 Chaosnet
2053 0805 X.25 уровень 3
2054 0806 Протокол трансляции адреса (ARP)
2055 0807 XNS совместимость
2560 0A00 Xerox IEEE-802.3 PUP
4096 1000 Bercley Trailer
21000 5208 BBN Simnet
24577 6001 DEC MOP Dump/Load
24578 6002 DEC MOP удаленный терминал
24579 6003 DEC DECnet фаза IV
24580 6004 DEC LAT
24582 6005 DEC
24583 6006 DEC
32773 8005 HP Probe
32784 8010 Excelan
32821 8035 Реверсивный протокол ARP (RARP)
32824 8038 DEC LANbridge
32923 8098 Appletalk
33100 814C SNMP

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

Таблица 5.5.1.
ifindex Физический порт (интерфейс), соответствующий данному адресу
Физический адрес MAC-адрес, например Ethernet-адрес
IP-адрес IP-адрес, соответствующий физическому адресу
Тип адресного соответствия Это поле может принимать 4 значения: 1 — вариант нестандартный и не подходит ни к одному из описанных ниже типов; 2 — данная запись уже не соответствует действительности; 3 — постоянная привязка; 4 — динамическая привязка

Самообращенный запрос позволяет ЭВМ решить две проблемы. Во­первых, определить, нет ли в сети объекта, имеющего тот же IРадрес. Если на такой запрос придет отклик, то ЭВМ выдаст на консоль сообщение Duplicate IP address sent from Ethernet address <...>. Во­вторых, в случае смены сетевой карты производится корректировка записи в АRP-таблицах ЭВМ, которые содержали старый МАС-адрес инициатора. Машина, получающая ARP-запрос c адресом, который содержится в ее таблице, должна обновить эту запись.

Вторая особенность такого запроса позволяет резервному файловому серверу заменить основной, послав самообращенный запрос со своим МАС-адресом, но с IP вышедшего из строя сервера. Этот запрос вынудит перенаправлять кадры, адресованные основному серверу, на резервный. Клиенты сервера при этом могут и не знать о выходе основного сервера из строя. При этом возможны и неудачи, если программные реализации в ЭВМ не в полной мере следуют регламентациям протокола ARP.

< Лекция 4 || Лекция 5: 12345 || Лекция 6 >
Наталья Шульга
Наталья Шульга

Курс "информационная безопасность" .

Можно ли на него записаться на ПЕРЕПОДГОТОВКУ по данному курсу? Выдается ли диплом в бумажном варианте и высылается ли он по почте?

Мария Архипова
Мария Архипова
виктор виноградов
виктор виноградов
Россия, Курская область
Евгений Миловзоров
Евгений Миловзоров
Россия, Пенза, ПГУ, 2004