Урок 30. Настройка протокола OSPF

 

Необходимые команды для начала работы протокола  

Попробуем настроить сеть ниже:

Пример сети с OSPF

 

Сеть состоит из магистральной и 2-х стандартных зон. Для запуска OSPF достаточно выполнить следующие команды: 

Router(config)# router ospf номер процесса

Router(config-router)# network IP_адрес  инверсная_маска (Wildcard mask) area номер_зоны

или 

Router(config-router)# network IP_адрес  маска (Wildcard mask) area номер_зоны 

Например, вот так выглядят настройки маршрутизатора стандартной зоны:

Настройки маршрутизатора стандартной зоны OSPF

 

А вот так выглядят настройки ABR маршрутизатора (маршрутизатор С):

Настройки пограничного маршрутизатора OSPF

 

Что означает номер процесса? 

Это означает, что на маршрутизаторе могут быть запущены несколько независимых друг от друга  OSPF процессов. Причем каждый процесс строит свою собственную базу данных. Номер процесса играет исключительно локальное значение и может не совпадать с номером процесса на других маршрутизаторах. 

А что означает инверсная маска? 

Инверсная маска (обратная маска) используется для более гибкого управления объявления подсетей в анонсах LSA, например когда требуется включить в анонсы LSA первые 8 или последние 64 подсетей определенной сети - вариантов много. Без инверсной маски пришлось бы вводить много похожих команд вручную. В OSPF данный функционал используется редко, однако мы рассмотрим его подробно в уроке по спискам доступа (Access Lists, ACL).

Поэтому для настройки OSPF вместо обратной маски можно с успехом использовать обычную маску. В дальнейшем мы рассмотрим пару примеров настройки OSPF с обратной маской.

 

Команды просмотра настроек протокола 

Для проверки и диагностики работы протокола можно воспользоваться приведенными ниже командами. 

Таблица маршрутизации: 

Router# show ip route

Таблица маршрутизации OSPF

 

Настройки протокола, адреса подключенных соседей, номер и тип зоны, а также ID локального маршрутизатора можно узнать из следующих 2-х команд: 

Router# show ip protocols

Настройки протокола OSPF

 

Router# show ip ospf номер процесса

Подробные настройки протокола OSPF

 

Топологическая база данных: 

Router# show ip ospf database

Топологическая база данных OSPF

 

Тип сети, DR/BDR, ID маршрутизатора: 

Router# ip ospf interface

Настройки OSPF на интерфейсе

 

Таблица соседей и состояние смежности, установленные с ними: 

Router# show ip ospf neighbor

таблица соседей OSPF

 

 

Необязательные команды 

Идентификатор маршрутизатора 

Для управления выбором DR/BDR можно настроить Router ID: 

Router(config-router)# router-id  ID в  формате IP адреса

Того же можно добиться с помощью настройки интерфейса обратной петли Loopback

 

Метрика маршрута 

Можно также повлиять на выбор маршрута, то есть заранее предопределить какой какой маршрут будет иметь лучшую/худшую метрику. Например, может возникнуть ситуация, когда до сети назначения ведут сразу 2 и более маршрутов с одинаковыми метриками. Однако по ряду причин требуется использовать только определенный маршрут, а остальные оставить в резерве. Это достигается 3-мя способами.

1) Изменение стоимости интерфейса. Вернемся к нашей сети и выполните команды: 

Router# show ip ospf interface

Router# show ip route 

и обратите внимание на установленную стоимость интерфейса и метрику маршрута:

Установленные стоимость и метрики OSPF Вычисленные стоимость и метрики маршрутов

 

Теперь изменим стоимость интерфейса с помощью команды: 

Router_B(config-if)# ip ospf cost 50

Снова посмотрим снова на вывод команд:

Измененные метрики OSPF на интерфейсе

Новые вычисленные метрики маршрутов OSPF

 

2) Изменение полосы пропускания. Стоимость маршрута рассчитывается по формуле исходная полоса пропускания/полоса пропускания интерфейса. За исходную полосу пропускания берется 100 Мбит/с. Полоса пропускания интерфейса уже по умолчанию установлена. Например, Ethernet - 10 Мбит/с, FastEthernet - 100 Мбит/с. Значение данного параметра можно изменить, однако это не повлияет на фактическую полосу пропускания интерфейса: 

Router(config-if)# bandwidth значение

3) Изменение исходной полосы пропускания. В вышеупомянутой формуле можно также изменить и числитель, то есть исходную полосу пропускания: 

Router(config-router)# auto-cost reference-bandwidth значение 

 

Аутентификация 

OSPF поддерживает аутентификацию паролем открытого текста и хэшем MD5. Аутентификацию можно включить глобально для всего процесса OSPF либо на отдельном интерфейсе. 

Аутентификация на отдельном интерфейсе с использованием пароля с открытым текстом: 

Router(config-if)# ip ospf authentication 

Router(config-if)# ip ospf authentication-key пароль

 

Аутентификация на отдельном интерфейсе с использованием зашифрованного пароля с помощью MD5: 

Router(config-if)# ip ospf authentication message-digest

Router(config-if)# ip ospf message-digest-key номер ключа md5 пароль

 

На интерфейсе соседнего маршрутизатора (к которому подключен напрямую) должны быть идентичные настройки, то есть тип аутентификации и пароль должны совпадать, иначе оба маршрутизатора никогда не установят отношения смежности.

 

Глобальная настройка аутентификации: 

Router(config)# router ospf номер процесса

Router(config-router)# area номер зоны authentication message-digest

 

Затем настроим пароли на каждом интерфейсе: 

Router(config-if)# ip ospf message-digest-key номер ключа md5 пароль

 

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