воскресенье, июля 24, 2016

Переходим от RIP-1 к RIP-2

Всем привет! В прошлый раз мы разбирались с протоколом динамической маршрутизации RIP-1, сегодня мы продолжим работу по освоению протоколов динамической маршрутизации, но мучить мы сегодня будем уже RIP-2.

RIP-2, так же как и RIP-1, является дистанционно векторным протоколом динамической маршрутизации и определяет наилучший маршрут до требуемой сети, исходя из числа промежуточных узлов (маршрутизаторов).

Для иллюстрации работы данного протокола мы будем использовать туже сеть, что и в прошлой статье. Первоначально выполним все настройки которые мы в ней приводили и запустим в работу RIP-1 (выполняем все настройки приведенные в статье вплоть до конца статьи). Убедимся в связности сети попинговав её из конца в конец и пойдем дальше.
Тестовая сеть для работы с RIP-2
Тестовая сеть для работы с RIP-2
Теперь начнем переход на RIP-2. Введем в конфигурацию Router 0 следующие команды:

Router(config)#router rip
Router(config-router)#version 2

Поздравляю, теперь ваш маршрутизатор Router 0 использует в качестве протокола динамической маршрутизации RIP-2. Давайте выполним на нем следующую команду:

Router#show  ip route

В результате увидим примерно вот такую картину:

Gateway of last resort is not set
     172.20.0.0/30 is subnetted, 1 subnets
C       172.20.20.0 is directly connected, FastEthernet1/0
C    192.168.1.0/24 is directly connected, FastEthernet0/0
C    192.168.4.0/24 is directly connected, FastEthernet0/1

Как мы видим, никаких маршрутов к сетям 192.168.5.0/24, 192.168.2.0/24 тут нет. Если мы выполни аналогичные команды для маршрутизаторов Router 1 и Router 2, то увидим что они тоже не знаю о сети 192.168.1.0/24. Как вы уже наверное догадались, проблема в том, что у нас не совпадает версия протокола RIP на маршрутизаторах 0 (Версия 2) и 1, и 2 (Версия 2). Но немножко углубимся в данную ситуацию. Выполним на маршрутизаторе 0 команду:

Router#debug ip rip

Немного подождем и увидим следующее:

Router#RIP: sending  v2 update to 224.0.0.9 via FastEthernet1/0 (172.20.20.1)
RIP: build update entries
      192.168.1.0/24 via 0.0.0.0, metric 1, tag 0
      192.168.4.0/24 via 0.0.0.0, metric 1, tag 0
RIP: sending  v2 update to 224.0.0.9 via FastEthernet0/0 (192.168.1.1)
RIP: build update entries
      172.20.0.0/16 via 0.0.0.0, metric 1, tag 0
      192.168.4.0/24 via 0.0.0.0, metric 1, tag 0
RIP: sending  v2 update to 224.0.0.9 via FastEthernet0/1 (192.168.4.1)
RIP: build update entries
      172.20.0.0/16 via 0.0.0.0, metric 1, tag 0
      192.168.1.0/24 via 0.0.0.0, metric 1, tag 0
RIP: ignored v1 packet from 192.168.4.2 (illegal version)

Все приведенные выше строки, кроме последней, говорят о том что маршрутизатор 0 периодически генерирует обновления о известных ему сетях, и рассылает их через все свои интерфейсы. Последняя команда говорит о том, что маршрутизатор 0 принимает обновления от других маршрутизаторов, но отбрасывает их и не добавляет в свою таблицу маршрутизации по причине несовпадения версий протоколов RIP. Отсюда понятно почему в таблице маршрутизации маршрутизатора 0 нет ни одного маршрута от протокола RIP.

Теперь запустим аналогичный дебаг на любом из оставшихся маршрутизаторов, в моем случае на Router 2. В принципе он будет аналогичным:

RIP: ignored v2 packet from 172.20.20.1 (illegal version)
RIP: received v1 update from 192.168.5.2 on FastEthernet0/0
      192.168.4.0 in 1 hops
RIP: sending  v1 update to 255.255.255.255 via FastEthernet0/1 (192.168.2.1)
RIP: build update entries
      network 172.20.0.0 metric 1
      network 192.168.4.0 metric 2
      network 192.168.5.0 metric 1
RIP: sending  v1 update to 255.255.255.255 via FastEthernet0/0 (192.168.5.1)
RIP: build update entries
      network 172.20.0.0 metric 1
      network 192.168.2.0 metric 1
RIP: sending  v1 update to 255.255.255.255 via FastEthernet1/0 (172.20.20.2)
RIP: build update entries
      network 192.168.2.0 metric 1
      network 192.168.4.0 metric 2
      network 192.168.5.0 metric 1



Но есть одно существенное отличие, маршрутизаторы с действующим на них протоколом RIP-1 производят широковещательную рассылку обновлений "sending  v1 update to 255.255.255.255", в то время как маршрутизаторы с RIP-2 производят многоадресную рассылку "sending  v2 update to 224.0.0.9". Это одно из отличий протокола RIP-1 от RIP-2.

Пойдем далее. Переведем все маршрутизаторы нашей сети на RIP-2, и отключим на них автосуммирование маршрутов командами:

Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#no auto-summary

И далее выполним на маршрутизаторе 0, снова команду debug ip rip, увидим следующее (приведен только фрагмент):

RIP: build update entries
      172.20.20.0/30 via 0.0.0.0, metric 1, tag 0
      192.168.2.0/24 via 0.0.0.0, metric 2, tag 0
      192.168.4.0/24 via 0.0.0.0, metric 1, tag 0
      192.168.5.0/24 via 0.0.0.0, metric 2, tag 0

если бы мы выполни аналогичное действие на маршрутизаторе с RIP-1 то вывод был бы другим:

RIP: build update entries
      network 172.20.0.0 metric 1
      network 192.168.2.0 metric 2
      network 192.168.4.0 metric 1
      network 192.168.5.0 metric 2

Как видим протокол RIP-2 добавляет в свои обновления информаци о масках сети, а так же поддерживает маски переменной длины. Отсюда еще одно различие этих двух протоколов. Протокол RIP-1 поддерживает только классовую адресацию, а протокол RIP-2 поддерживает бесклассовую адресацию и маски сети переменной длины.

На сегодня это все, но к протоколу RIP мы еще вернемся.


4 коммент.:

Спасибо за то что читаете)

ТАК RIP2 ЛУЧШЕ ИЛИ НЕТ?

Добрый день.
Лучше, хуже, так немного некорректно говорить!
Правильнее сказать, что он более современный и имеет ряд функций, которые не поддерживаются RIP-1.

Отправить комментарий