RIP2
Материал из Википедии — свободной энциклопедии
Протокол RIP (англ. Routing Information Protocol) — один из наиболее распространенных протоколов маршрутизации в небольших компьютерных сетях, который позволяет маршрутизаторам динамически обновлять маршрутную информацию (направление и дальность в хопах), получая ее от соседних маршрутизаторов.
Содержание |
[править] История
Алгоритм маршрутизации RIP (алгоритм Беллмана — Форда) был впервые разработан в 1969 г., как основной для сети ARPANET.
Прототип протокола RIP — Gateway Information Protocol, часть пакета PARC Universal Packet.
Версия RIP, которая поддерживает протокол интернета была включена в пакет BSD операционной системы Unix под названием routed (route daemon), а также многими производителями, реализовавшими свою версию этого протокола. В итоге протокол был унифицирован в документе RFC 1058.
В 1994 г. был разработан протокол RIP2 (RFC 2453), который является расширением протокола RIP, обеспечивающим передачу дополнительной маршрутной информации в сообщениях RIP и повышающим уровень безопасности.
Для работы в среде IPv6 была разработана версия RIPng.
[править] Техническая информация
RIP — так называемый дистанционно-векторный протокол, который оперирует хопами в качестве метрики маршрутизации. Максимальное количество хопов, разрешенное в RIP — 15 (метрика 16 означает «бесконечно большую метрику»). Каждый RIP-маршрутизатор по умолчанию вещает в сеть свою полную таблицу маршрутизации раз в 30 секунд, генерируя довольно много трафика на низкоскоростных линиях связи. RIP работает на прикладном уровне стека TCP/IP, используя UDP порт 520.
В современных сетевых средах RIP — не самое лучшее решение для выбора в качестве протокола маршрутизации, так как его возможности уступают более современным протоколам, таким как EIGRP, OSPF. Ограничение на 15 хопов не дает применять его в больших сетях. Преимущество этого протокола — простота конфигурирования.
[править] Формат RIP пакета
0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| command (1) | version (1) | must be zero (2) |
+---------------+---------------+-------------------------------+
| |
~ RIP Entry (20) ~
| |
+---------------+---------------+---------------+---------------+
command - Команда, определяет назначение датаграммы (1 - request; 2 - response)
version - Номер версии, в зависимости от версии, определяется формат пакета
must be zero - Должно быть нулём
RIP Entry - (RTE) Запись маршрутной информации RIP
RIP пакет может содержать от 1 до 25 записей RIP Entry.
[править] Формат RIP Entry для протокола RIP-1 (version=1)
0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| address family identifier (2) | must be zero (2) |
+-------------------------------+-------------------------------+
| IPv4 address (4) |
+---------------------------------------------------------------+
| must be zero (4) |
+---------------------------------------------------------------+
| must be zero (4) |
+---------------------------------------------------------------+
| metric (4) |
+---------------------------------------------------------------+
address family identifier - (AFI) Тип адреса, обычно поддерживается только запись AF_INET
которое равно 2 (т.е. используется для протокола IP)
must be zero - Должно быть нулём
IPv4 address - IP адрес места назначения (хост или сеть)
metric - Метрика маршрута
[править] Формат RIP Entry для протокола RIP-2 (version=2)
0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address Family Identifier (2) | Route Tag (2) |
+-------------------------------+-------------------------------+
| IP Address (4) |
+---------------------------------------------------------------+
| Subnet Mask (4) |
+---------------------------------------------------------------+
| Next Hop (4) |
+---------------------------------------------------------------+
| Metric (4) |
+---------------------------------------------------------------+
Address Family Identifier - (AFI) Тип адреса, обычно поддерживается только запись AF_INET
которое равно 2 (т.е. используется для протокола IP)
Route Tag - (RT) Тег маршрута. Предназначен для разделения "внутренних"
маршрутов от "внешних", взятые например из другого IGP или EGP
IP Address - IP адрес места назначения
Subnet Mask - Маска подсети
Next Hop - Следующий хоп. Содержит IP адрес маршрутизатора к месту назначения.
Значение 0.0.0.0 - хопом к месту назначения является отправитель пакета.
Незаменимо, если протокол RIP не может быть запущен на всех маршрутизаторах!
Metric - Метрика маршрута
[править] Аутентификация
0 1 2 3 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command (1) | Version (1) | unused | +---------------+---------------+-------------------------------+ | 0xFFFF | Authentication Type (2) | +-------------------------------+-------------------------------+ ~ Authentication (16) ~ +---------------------------------------------------------------+ Command - Version - unused - 0xFFFF - Authentication Type - Authentication -
[править] Реализации
[править] См. также
- Border Gateway Protocol (BGP)
- IPX
- RFC
- OSPF
- EGP

