Inverse ARP
Inverse ARP (InARP, обратный ARP) — это протокол сетевого уровня, используемый в сетях с коммутацией кадров (frame relay) и ATM для автоматического определения сетевого адреса (например, IP-адреса) удалённого устройства по известному адресу канального уровня (DLCI в Frame Relay или VPI/VCI в ATM). В отличие от классического протокола ARP (Address Resolution Protocol), который решает задачу «какой MAC-адрес соответствует данному IP-адресу», Inverse ARP работает в обратном направлении: по известному идентификатору виртуального канала (PVC) он позволяет узнать IP-адрес соседнего маршрутизатора.
История и происхождение
Протокол Inverse ARP был разработан в начале 1990-х годов как часть спецификации Frame Relay Forum (FRF.1) для упрощения настройки сетей Frame Relay. До появления InARP администраторам приходилось вручную прописывать соответствия между DLCI (Data Link Connection Identifier) и IP-адресами на каждом маршрутизаторе, что было трудоёмко и подвержено ошибкам. Первое описание протокола в виде RFC 1293 появилось в январе 1992 года, а затем было заменено более полным RFC 2390 в сентябре 1998 года. Позднее механизм был адаптирован для сетей ATM (Asynchronous Transfer Mode) в спецификации ATM Forum UNI 3.1.
Принцип работы
Inverse ARP функционирует на втором (канальном) и третьем (сетевом) уровнях модели OSI. Процесс состоит из следующих этапов:
- Инициализация соединения: Когда маршрутизатор (или другое сетевое устройство) устанавливает виртуальное соединение PVC (Permanent Virtual Circuit) через сеть Frame Relay, оно получает от коммутатора идентификатор DLCI для данного канала. На этом этапе устройство ещё не знает, какой IP-адрес находится на другом конце PVC.
- Формирование запроса: Устройство отправляет широковещательный (в пределах PVC) запрос Inverse ARP, в котором указывает:
- Свой DLCI (адрес канального уровня)
- Свой IP-адрес (сетевой адрес)
- Тип протокола (например, IP — 0x0800)
- Код операции (1 — запрос)
- Ответ удалённого устройства: Устройство на другом конце PVC, получив запрос, формирует ответный пакет Inverse ARP (код операции 2), в котором сообщает свой IP-адрес. Ответ отправляется по тому же DLCI.
- Обновление таблицы: После получения ответа маршрутизатор создаёт или обновляет запись в своей таблице соответствий (Inverse ARP cache), связывающую DLCI с IP-адресом удалённого узла. Эта таблица используется для последующей маршрутизации IP-пакетов через Frame Relay.
Процесс повторяется периодически (обычно каждые 60 секунд) для поддержания актуальности таблицы, особенно при изменениях в сети (например, при перезагрузке удалённого маршрутизатора или изменении его IP-адреса).
Отличия от классического ARP
| Характеристика | ARP (Address Resolution Protocol) | Inverse ARP |
|---|---|---|
| Назначение | Определение MAC-адреса по IP-адресу | Определение IP-адреса по адресу канального уровня (DLCI/VPI/VCI) |
| Область применения | Локальные сети Ethernet, Wi-Fi | Сети с коммутацией кадров (Frame Relay, ATM) |
| Исходные данные | Известен IP-адрес, неизвестен MAC | Известен DLCI (или VPI/VCI), неизвестен IP |
| Запрос | Широковещательный (broadcast) по всей сети | Отправляется только по конкретному PVC (точка-точка) |
| Автоматизация | Требует ручной настройки или DHCP для IP | Автоматически заполняет таблицу при установлении PVC |
Применение
Frame Relay
Основная сфера применения Inverse ARP — сети Frame Relay, которые были широко распространены в корпоративных сетях в 1990-х и начале 2000-х годов. InARP позволял маршрутизаторам автоматически узнавать IP-адреса соседних устройств при подключении к провайдеру Frame Relay. Это упрощало настройку и снижало вероятность ошибок конфигурации.
ATM (Asynchronous Transfer Mode)
В сетях ATM протокол Inverse ARP используется для определения IP-адресов по идентификаторам VPI (Virtual Path Identifier) и VCI (Virtual Channel Identifier). Процесс аналогичен Frame Relay, но учитывает особенности ATM — наличие виртуальных путей и каналов.
MPLS и современные сети
Хотя Frame Relay и ATM в значительной степени вытеснены технологиями MPLS (Multiprotocol Label Switching) и Ethernet, механизм Inverse ARP остаётся актуальным в некоторых устаревших или специализированных сетях. В современных MPLS-сетях для автоматического обнаружения соседей чаще используются протоколы LDP (Label Distribution Protocol) или BGP (Border Gateway Protocol), которые выполняют сходные функции, но на уровне маршрутизации, а не канального уровня.
Ограничения и недостатки
- Зависимость от PVC: InARP работает только для постоянных виртуальных каналов (PVC). Для коммутируемых виртуальных каналов (SVC) он неприменим, так как SVC устанавливаются по запросу и требуют других механизмов адресации.
- Одноадресность: Протокол не поддерживает многоадресные (multicast) или широковещательные (broadcast) запросы. Каждый запрос направляется только по одному конкретному PVC, что делает его неэффективным для сетей с большим количеством соседей.
- Безопасность: Inverse ARP не имеет встроенных механизмов аутентификации или шифрования. Злоумышленник, имеющий доступ к сети Frame Relay, может отправить поддельный ответ InARP, что приведёт к перенаправлению трафика (атака типа «человек посередине»).
- Устаревание: С массовым переходом на Ethernet и MPLS технология Frame Relay практически исчезла из современных сетей. Соответственно, использование Inverse ARP сократилось до минимума.
Альтернативы и эволюция
В современных сетях для автоматического обнаружения соседей и разрешения адресов используются более универсальные протоколы:
- NDP (Neighbor Discovery Protocol) — для IPv6, который объединяет функции ARP, Inverse ARP и ICMP.
- LDP (Label Distribution Protocol) — в MPLS-сетях для обмена метками.
- OSPF (Open Shortest Path First) и IS-IS — протоколы динамической маршрутизации, которые автоматически обнаруживают соседей через hello-пакеты.
Тем не менее, Inverse ARP остаётся важным историческим примером протокола, который решал специфическую задачу в сетях с коммутацией кадров, и его принципы легли в основу более современных решений.
Интересные факты
- Inverse ARP иногда называют «обратным ARP», но не следует путать его с RARP (Reverse Address Resolution Protocol), который используется для определения IP-адреса по MAC-адресу в Ethernet (например, при загрузке бездисковых станций). RARP и InARP решают разные задачи и работают в разных средах.
- В спецификации RFC 2390 указано, что Inverse ARP может использоваться не только для IP, но и для других протоколов сетевого уровня (например, IPX, AppleTalk), хотя на практике он применялся почти исключительно для IP.
- В некоторых реализациях Cisco IOS для Frame Relay Inverse ARP включён по умолчанию, но может быть отключён командой
no frame-relay inverse-arpв случае, если администратор предпочитает статические сопоставления.
Источники
- RFC 1293 — Inverse Address Resolution Protocol (1992)
- RFC 2390 — Inverse Address Resolution Protocol (1998)
- Frame Relay Forum Technical Committee, FRF.1 — User-to-Network Implementation Agreement (1991)
- ATM Forum, UNI 3.1 Specification (1995)
- Cisco Documentation — Configuring Frame Relay Inverse ARP
- W. Richard Stevens, «TCP/IP Illustrated, Volume 1: The Protocols» (1994)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →