Что такое редистрибуция в ospf
Особенности работы External Type 1 и External Type 2 маршрутов в OSPF. Часть 1
У практически любого сетевого инженера, рано или поздно наступает момент в жизни когда в его сети появляются домены маршрутизации отличные от любимого OSPF, EIGRP или IS-IS. Чаще всего это связано со слиянием двух сетей, но иногда может быть связано с модернизацией или редизайном. Одним словом, необходимость делать редистрибуцию маршрутов из одного протокола маршрутизации в другой возникает не так уж и редко. В случае с OSPF, эти маршруты появляются в таблице маршрутизации под меткой E1 (External Type 1) и E2 (Externel Type 2) маршрутов. Обычно учебные материалы Cisco говорят о том, что основное отличие этих двух маршрутов заключается в том, что при расчете метрики для Е1 маршрута используется общая метрика для всего пути, а для Е2 маршрута только стоимость редистрибуции. Попытаемся разобраться, что это значит и как это работает.
Для иллюстрации будем использовать следующую сетевую топологию:
Для данной схемы настроим редистрибуцию между OSPF и EIGRP, и посмотрим как будет вести себя префикс Loopback0 маршрутизатора R6, на R1.
Для начала настроим редистрибуцию на пограничных маршрутизаторах R4 и R5:
router eigrp 100
redistribute ospf 1 metric 1 1 1 1 1
network 192.168.0.0
auto-summary
eigrp router-id 4.4.4.4
!
router ospf 1
router-id 4.4.4.4
log-adjacency-changes
redistribute eigrp 100 subnets
router eigrp 100
redistribute ospf 1 metric 1 1 1 1 1
network 192.168.0.0
no auto-summary
eigrp router-id 5.5.5.5
!
router ospf 1
router-id 5.5.5.5
log-adjacency-changes
redistribute eigrp 100 subnets
Теперь проверим маршрут к 6.6.6.6 на маршрутизаторе R1:
Gateway of last resort is not set
6.0.0.0/32 is subnetted, 1 subnets
O E2 6.6.6.6 [110/20] via 10.0.2.2, 00:12:38, FastEthernet1/0
[110/20] via 10.0.1.2, 00:12:38, FastEthernet0/0
10.0.0.0/24 is subnetted, 4 subnets
C 10.0.2.0 is directly connected, FastEthernet1/0
O IA 10.0.3.0 [110/2] via 10.0.1.2, 01:06:39, FastEthernet0/0
C 10.0.1.0 is directly connected, FastEthernet0/0
O IA 10.0.4.0 [110/2] via 10.0.2.2, 01:06:39, FastEthernet1/0
O E2 192.168.0.0/24 [110/20] via 10.0.2.2, 00:57:06, FastEthernet1/0
[110/20] via 10.0.1.2, 00:57:06, FastEthernet0/0
R1#sh ip route 6.6.6.6
Routing entry for 6.6.6.6/32
Known via «ospf 1», distance 110, metric 20, type extern 2, forward metric 2
Last update from 10.0.2.2 on FastEthernet1/0, 00:12:53 ago
Routing Descriptor Blocks:
10.0.2.2, from 5.5.5.5, 00:12:53 ago, via FastEthernet1/0
Route metric is 20, traffic share count is 1
* 10.0.1.2, from 4.4.4.4, 00:12:53 ago, via FastEthernet0/0
Route metric is 20, traffic share count is 1
Таким образом маршрутизатор R1 знает, что у него есть 2 пути для того чтобы достичь адреса 6.6.6.6: сначала до ASBR (R4 и R5) и метрика для этого участка будет равна 2 (значение forward metric), а дальше через EIGRP домен, до R6, который имеет интерфейс 6.6.6.6 и метрика для этого участка будет равна 20 (значение metric, является метрикой по умолчанию). Поскольку этот маршрут является E2 маршрутом то эти значения не складываются, а используется только метрика объявляемая из внешней сети, она же метрика редистрибуции. Так как оба маршрута имеют одинаковую метрику, то они оба были установлены в таблицу маршрутизации.
Настроим теперь редистрибуцию так, чтобы один из маршрутов приходил как Е1 маршрут, с метрикой 100.
R4(config)#router ospf 1
R4(config-router)#redistribute eigrp 100 subnets metric-type 1 metric 100
И проверим таблицу маршрутизации на R1:
Gateway of last resort is not set
6.0.0.0/32 is subnetted, 1 subnets
O E1 6.6.6.6 [110/102] via 10.0.1.2, 00:01:18, FastEthernet0/0
10.0.0.0/24 is subnetted, 4 subnets
C 10.0.2.0 is directly connected, FastEthernet1/0
O IA 10.0.3.0 [110/2] via 10.0.1.2, 01:43:27, FastEthernet0/0
C 10.0.1.0 is directly connected, FastEthernet0/0
O IA 10.0.4.0 [110/2] via 10.0.2.2, 01:43:27, FastEthernet1/0
O E1 192.168.0.0/24 [110/22] via 10.0.1.2, 00:01:18, FastEthernet0/0
R1#sh ip route 6.6.6.6
Routing entry for 6.6.6.6/32
Known via «ospf 1», distance 110, metric 102, type extern 1
Last update from 10.0.1.2 on FastEthernet0/0, 00:02:13 ago
Routing Descriptor Blocks:
* 10.0.1.2, from 4.4.4.4, 00:02:13 ago, via FastEthernet0/0
Route metric is 22, traffic share count is 1
В части 2 я попробую рассказать, что происходит, когда приходят Е2 маршруты с одинаковыми значениями метрики, но разной ценой линков до ASBR.
Перераспределение протоколов маршрутизации
Параметры загрузки
Об этом переводе
Этот документ был переведен Cisco с помощью машинного перевода, при ограниченном участии переводчика, чтобы сделать материалы и ресурсы поддержки доступными пользователям на их родном языке. Обратите внимание: даже лучший машинный перевод не может быть настолько точным и правильным, как перевод, выполненный профессиональным переводчиком. Компания Cisco Systems, Inc. не несет ответственности за точность этих переводов и рекомендует обращаться к английской версии документа (ссылка предоставлена) для уточнения.
Содержание
Введение
Использование протокола маршрутизации для объявления маршрутов, сведения о которых были получены какими-либо другими способами, например с помощью другого протокола маршрутизации, в виде статических маршрутов или маршрутов, подключенных напрямую, называется перераспределением. Хотя во всей объединенной IP-сети желательно использовать единый протокол маршрутизации, по ряду причин часто используется многопротокольная маршрутизация: например, при слиянии компаний, в случае, если несколькими подразделениями управляют несколько сетевых администраторов, или в средах, где используются компоненты от разных поставщиков. При проектировании сети часто используются разные протоколы маршрутизации. В любом случае, наличие среды с несколькими протоколами делает перераспределение необходимым.
Различия в характеристиках протокола маршрутизации, таких как метрики, административное расстояние, классовые и бесклассовые возможности, могут повлиять на перераспределение. Эти отличия необходимо учитывать, чтобы перераспределение прошло успешно.
Предварительные условия
Требования
Для этого документа отсутствуют особые требования.
Используемые компоненты
Сведения, содержащиеся в данном документе, касаются следующих версий программного обеспечения и оборудования:
Cisco IOS® Software Release 12.2 (10b)
Маршрутизаторы Cisco серии 2500
Сведения, представленные в этом документе, были получены от устройств, работающих в специальной лабораторной среде. Все устройства, описанные в этом документе, были запущены с чистой (стандартной) конфигурацией. В рабочей сети необходимо изучить потенциальное воздействие всех команд до их использования.
Условные обозначения
Метрики
При перераспределении одного протокола в другой следует помнить, что метрики каждого протокола играют важную роль в перераспределении. Каждый протокол использует разные метрики. Например, метрика протокола RIP основана на количестве переходов, однако протоколы IGRP и EIGRP используют составную метрику в зависимости от пропускной способности, задержки, надежности, загрузки и максимального размера передаваемого блока данных (MTU), где пропускная способность и задержка являются единственными параметрами, используемыми по умолчанию. В процессе перераспределения маршрутов необходимо определить метрику, понятную принимающему протоколу. Есть два метода определения метрик при перераспределении маршрутов.
Можно определить метрику только для данного распределения:
Или можно использовать одну и ту же метрику по умолчанию для всего перераспределения (использование команды default-metric упрощает задачу, так как в этом случае не нужно определять метрику отдельно для каждого перераспределения).:
Административное расстояние
Если маршрутизатор использует более одного протокола маршрутизации и определяет маршрут до одного и того же места назначения с помощью обоих протоколов, какой из маршрутов должен быть признан лучшим? Каждый протокол использует свой тип метрики для определения лучшего маршрута. Сравнение маршрутов с разными типами метрик невозможно. Административные расстояния решают эту проблему. Административные расстояния назначаются источникам маршрута, так чтобы маршрут от наиболее предпочтительного источника был выбран в качестве оптимального. Дополнительные сведения об административных расстояниях и выборе маршрутов см. в документе «Выбор маршрутов в маршрутизаторах Cisco».
Административные расстояния помогают выбрать маршрут среди различных протоколов маршрутизации, но могут привести к проблемам при перераспределении. Среди этих проблем могут быть петли маршрутизации, проблемы сходимости и неэффективная маршрутизация. Ниже представлена топология и описание возможной проблемы.
В указанной выше топологии, если в маршрутизаторе R1 применяется RIP, а в R2 и R5 одновременно применяются RIP и IGRP с перераспределением RIP в IGRP, возможно возникновение проблем. Например, R2 и R5 оба узнают о сети 192.168.1.0 от R1 через протокол RIP. Эти данные перераспределяются в IGRP. R2 получит информацию о сети 192.168.1.0 через R3, а R5 получит эту информацию через R4 с помощью IGRP. У IGRP административное расстояние меньше, чем у RIP (100 против 120), поэтому в таблице маршрутизации используется маршрут IGRP. Теперь существует опасность цикличной маршрутизации. Даже при наличии разделения горизонта или другой функции, предназначенной для предотвращения петель маршрутизации, все равно имеет место проблема сходимости.
Если R2 и R5 также распределяют IGRP в RIP (эта операция иначе называется обоюдным перераспределением), и сеть 192.168.1.0 не подключена непосредственно к R1 (R1 получает восходящие пакеты из нее от другого маршрутизатора), то существует потенциальная опасность, что R1 будет получать информацию о сети с R2 или R5 с лучшей метрикой, чем из оригинального источника.
Стандартное поведение RIP, IGRP и EIGRP — объявлять напрямую подключенные маршруты, когда инструкция network для протокола маршрутизации включает подключенную подсеть интерфейса. Есть два способа получить подключенный маршрут:
Интерфейс настроен с IP-адресом и маской — эта соответствующая подсеть считается подключенным маршрутом.
Статический маршрут настроен только с исходящим интерфейсом и без IP-адреса следующего перехода — это также считается подключенным маршрутом.
Команда network, указанная для EIGRP, RIP или IGRP и включающая («охватывающая») каждый из этих типов подключенных маршрутов, включает эту подсеть для объявления.
Например, если у интерфейса адрес 10.0.23.1 и маска 255.255.255.0, подсеть 10.0.23.0/24 является подключенным маршрутом и будет объявлена этими протоколами маршрутизации, когда будет выполнена следующая инструкция network:
Статический маршрут 10.0.77.0/24 также объявляется этими протоколами маршрутизации, так как он подключен и «охвачен» инструкцией network.
Примеры и синтаксис конфигурации перераспределения
IGRP и EIGRP
В следующих выходных данных показано перераспределение маршрутизатором IGRP/EIGRP следующих маршрутов: статических, OSPF, RIP и IS-IS.
Когда протоколы IGRP и EIGRP перераспределяют другие протоколы, им нужно 5 метрик: пропускная способность, задержка, надежность, загрузка и MTU, соответственно. Пример идентификации метрики IGRP:
Метрика | Значение |
---|---|
bandwidth | В единицах килобитов в секунду; 10000 для Ethernet |
delay | В единицах десятых мксек; 100 x 10 микросекунд = 1 миллисекунда для Ethernet |
reliability | 255 для 100-процентной надежности |
load | Эффективная загрузка канала выражается числом от 0 до 255 (где 255 – 100-процентная загрузка), |
MTU | Минимальный MTU пути; обычно равен MTU для интерфейса Ethernet, то есть 1500 байт |
Несколько процессов IGRP и EIGRP могут запускаться на одном маршрутизаторе с их автоматическим перераспределением. Например, IGRP1 и IGRP2 могут выполняться на одном маршрутизаторе. Однако выполнение двух процессов одного протокола на одном и том же маршрутизаторе редко бывает необходимо и может потреблять память и процессорные ресурсы маршрутизатора.
Перераспределение IGRP/EIGRP в другой процесс IGRP/EIGRP не требует какого-либо преобразования метрик, поэтому во время перераспределения нет необходимости определять метрики или использовать команду default-metric.
Перераспределенный статический маршрут имеет приоритет по отношению к объединенному маршруту, потому что статический маршрут имеет административное расстояние 1, тогда как объединенный маршрут Eigrp имеет административное расстояние 5. Это может произойти, когда статический маршрут перераспределяется с помощью команды redistribute static в процессе Eigrp, когда у процесса Eigrp имеется маршрут по умолчанию.
В следующем выводе показан маршрутизатор OSPF, перераспределяющий статические маршруты, а также маршруты RIP, IGRP, EIGRP и IS-IS.
Метрика OSPF — это значение стоимости, основанное на значении 108/ пропускная способность канала в битах в секунду. Например, стоимость OSPF для Ethernet равна 10: 108/107 = 10
Примечание.Если метрика не указана, OSPF при перераспределении маршрутов от всех протоколов подставляет значение по умолчанию, равное 20, за исключением маршрутов протокола BGP, которые получают метрику 1.
Если есть основная сеть и подсети, при перераспределении протоколов в OSPF необходимо использовать ключевое слово «subnet». Без этого ключевого слова протокол OSPF перераспределяет только главные сети, не разбитые на подсети.
На одном и том же маршрутизаторе можно запускать несколько процессов OSPF. Однако запуск более одного процесса одного и того же протокола требуется редко и потребляет память и процессорные ресурсы маршрутизатора.
Перераспределение одного процесса OSPF в другом не требует определения метрики или использования команды default-metric.
Примечание.Принципы, изложенные в этом документе, применимы к RIP версий I и II.
В следующем выводе показан маршрутизатор RIP, перераспределяющий статические маршруты, а также маршруты IGRP, EIGRP, OSPF и IS-IS.
Метрика RIP состоит из количества переходов, и максимально допустимое значение этой метрики составляет 15. Все, что превышает 15, считается бесконечным. Для описания бесконечного значения в RIP можно использовать значение 16. Компания Cisco рекомендует использовать при перераспределении протоколов в RIP низкие метрики, например 1. Высокая метрика, такая как 10 еще больше ограничивает RIP. Если для перераспределяемых маршрутов определить метрику 10, эти маршруты можно будет объявлять только маршрутизаторам, которые находятся на расстоянии до 5 переходов, после которых метрика (количество переходов) превысит значение 15. Определяя для метрики значение 1, вы разрешаете маршруту максимальное количество переходов в домене RIP. Однако это увеличивает возможность петель маршрутизации, если есть несколько точек перераспределения и маршрутизатор получает данные о сети с лучшей метрикой из точки перераспределения, а не из оригинального источника, как описано в разделе Административное расстояние этого документа. Поэтому необходимо сделать так, чтобы метрика не была ни слишком высокой, чтобы избежать ее объявления всем маршрутизаторам, ни слишком низкой, из-за чего возникают маршрутные петли при наличии нескольких точек перераспределения.
Перераспределение статических маршрутов, кроме шлюза по умолчанию в RIP, с помощью карты маршрутов
Эта конфигурация является примером перераспределения статических маршрутов, кроме шлюза по умолчанию в RIP, посредством карты маршрутов.
Исходная конфигурация для данного примера:
Для того чтобы произвести эту настройку, выполните следующие действия:
Создайте список доступа (access-list) для сопоставления всех сетей, которые необходимо перераспределять
Вызовите этот список доступа (access-list) в карте маршрутов (route-map).
Перераспределите в RIP с помощью route-map и удалите команду default information originate из процесса RIP.
В этих выходных данных показан маршрутизатор IS-IS, перераспределяющий статические маршруты, а также маршруты RIP, IGRP, EIGRP и OSPF.
Метрика IS-IS должна иметь значение от 1 до 63. В IS-IS нет возможности использовать команду «default-metric» — необходимо определять метрику для каждого протокола, как показано в примере выше. Если для маршрутов, перераспределяемых в IS-IS, метрика не указана, по умолчанию используется метрика, равная 0.
Подключенные маршруты
Перераспределение сетей, подключенных напрямую, в протоколы маршрутизации не является распространенной практикой, в связи с чем оно не показано ни в одном из приведенных выше примеров. Однако важно отметить, что его можно выполнить — как прямо, так и косвенно. Для прямого перераспределения подключенных маршрутов используйте команду настройки маршрутизатора redistribute connected. Также в этом случае необходимо определить метрику. Можно также косвенно перераспределить подключенные маршруты в протоколы маршрутизации, как показано в следующем примере.
Маршрутизатор B в данном примере имеет два интерфейса Fast Ethernet. FastEthernet 0/0 находится в сети 10.1.1.0/24, а FastEthernet 0/1 — в сети 20.1.1.0/24. Маршрутизатор B выполняет EIGRP с маршрутизатором A и OSPF с маршрутизатором C. Маршрутизатор B выполняет взаимное перераспределение между процессами EIGRP и OSPF. Следующие данные необходимы маршрутизатору B:
Если в таблице маршрутизации найти маршрутизатор B, то можно увидеть следующее:
Есть три вещи, о которых нужно сказать о представленных выше конфигурации и таблице маршрутизации:
Рассматриваемые сети представлены в таблице маршрутизации маршрутизатора Б как непосредственно связанные сети.
Маршрутизатор B выполняет взаимное перераспределение между EIGRP и OSPF.
Ниже показаны таблицы маршрутизации для маршрутизаторов A и C.
Маршрутизатор A определил сеть 20.1.1.0/24 через EIGRP, который показан как внешний маршрут, поскольку он был перераспределен из OSPF в EIGRP. Маршрутизатор C определил сеть 10.1.1.0/24 через OSPF, используемый как внешний маршрут, поскольку он был перераспределен из EIGRP в OSPF. Хотя маршрутизатор B не перераспределяет подключенные сети, он объявляет сеть 10.1.1.0/24, которая является частью процесса EIGRP, перераспределенного в OSPF. Аналогичным образом маршрутизатор В объявляет сеть 20.1.1.0/24, которая является частью процесса OSPF, перераспределенного в EIGRP.
Примечание. По умолчанию при использовании команды redistibute bgp кандидатом на перераспределение в IGP является только информация, полученная посредством EBGP. Маршруты IBGP будут перераспределяться в IGP только после задания команды bgp redistribute-internal в команде router bgp. Однако при перераспределении маршрутов IBGP в IGP следует принимать меры предосторожности, чтобы избежать зацикливания маршрутов в автономной системе.
Как избежать проблем из-за перераспределения
Пример 1
В приведенной выше топологии маршрутизаторы R2 и R5 выполняют обоюдное перераспределение. Как показано в этой конфигурации, RIP перераспределяется в IGRP, а IGRP перераспределяется в RIP.
При использовании предыдущей конфигурации существует вероятность возникновения любых проблем, описанных ранее. Для того чтобы избежать их, обновления маршрутизации можно отфильтровать следующим образом:
Списки распределения, добавленные к конфигурациям, как показано выше, фильтруют любые обновления IGRP, которые попадают в последовательный интерфейс 1 маршрутизаторов. Если маршруты, указанные в обновлениях, разрешены списком доступа 1, маршрутизатор принимает их в обновлении, в противном случае — нет. В этом примере маршрутизаторам говорится, что они не должны определять сеть 192.168.1.0 через обновления IGRP, поступающие в их последовательный интерфейс 1; поэтому эти маршрутизаторы получают данные о сети 192.168.1.0 только через RIP от R1.
Также помните, что в этом случае для процесса RIP необязательно использовать ту же стратегию фильтрации, поскольку у RIP административное расстояние больше, чем у IGRP. Если маршруты, берущие начало в домене IGRP, вернутся в R2 и R5 через RIP, маршруты IGRP все равно будут иметь преимущество.
Пример 2
Можно продемонстрировать использование такой топологии (показана выше), которая является еще одним методом, часто наиболее предпочтительным, для предотвращения проблем с перераспределением. Этот метод использует карты маршрутов, чтобы задать теги для различных маршрутов. Процессы маршрутизации затем могут выполнять перераспределение на основе этих тегов. Обратите внимание, что перераспределение на основе тегов не работает с RIP версии 1 и IGRP.
Вот одна из проблем, с которыми можно столкнуться при использовании предыдущей топологии:
R1 объявляет сеть 192.168.1.0 R2. R2 затем перераспределяется на EIGRP. R5 изучает сеть через EIGRP и перераспределяет для RIPv2. В зависимости от метрики, которую R5 устанавливает для маршрута RIPv2, R6 может выбрать для выхода в сеть менее предпочтительный маршрут через R5 вместо маршрута через R1. Предотвратить это помогает следующая конфигурация с помощью установки тегов, а также перераспределения на основе этих тегов.
Выполнив вышеуказанную конфигурацию, можно проверить некоторые конкретные маршруты в таблице маршрутизации, чтобы убедиться, что теги установлены. Ниже приведены выходные данные команды show ip route для определенных маршрутов в R3 и R1:
Для вычисления метрики EIGRP использует пять разных переменных. Однако перераспределенные маршруты не имеют этих параметров, из-за чего маршруты не задаются однородно. Оптимальным методом при распределении маршрутов является задание метрики по умолчанию. Задание метрики по умолчанию позволяет улучшить работу EIGRP. Значения по умолчанию для EIGRP задаются командой:
Пример 3
Перераспределение производится также среди различных процессов одного протокола маршрутизации. Следующая конфигурация является примером использования политики перераспределения для перераспределения двух процессов EIGRP, выполняющихся на одном или нескольких маршрутизаторах:
Это лишь несколько примеров вариантов фильтрации, используемых для достижения описанных в этом документе целей. Однако возможны и другие допустимые стратегии, к которым можно прибегнуть. Дополнительные сведения см. в разделе фильтрации информации о маршрутизации в документе Настройка независимых от протокола функций IP-маршрутизации.
Пример 4
Например, имеется два маршрутизатора, один из которых ― маршрутизатор высокого уровня рабочий по протоколу BGP, а другой ― маршрутизатор низкого уровня, работающий по протоколу RIP. При перераспределении маршрутов BGP в RIP возможна ситуация, когда некоторые пакеты будут теряться.
Перераспределять BGP в протокол RIP обычно не рекомендуется, а такие протоколы, как iBGP, OSPF и EIGRP, являются масштабируемыми и имеют широкий выбор параметров.
Если вам встретилась такая ситуация, когда выполняется перераспределение BGP в RIP и некоторые пакеты теряются, возможно, нужно будет настроить в процессе RIP следующую команду:
Router(Config-router)# input-queue 1024
Примечание. При наличии маршрутизатора высокого уровня, выполняющего пересылку на высокой скорости в маршрутизатор низкого уровня, который, возможно, не в состоянии принимать трафик на такой скорости, рассмотрите возможность использования команды input-queue. Настройка этой команды поможет предотвратить потерю информации из таблицы маршрутизации.
Пример 5
Данный пример иллюстрирует перераспределение статического маршрута в протокол маршрутизации RIP. Согласно топологии, у нас есть три маршрутизатора (R1, R2 и R3). В маршрутизаторах R1 и R2 протокол RIP настроен на интерфейсе Fast Ethernet 0/0. Маршрутизатор R1 имеет статический маршрут к интерфейсу Lo 0 (IP-адрес 3.3.3.3/32) маршрутизатора R3. Этот статический маршрут перераспределяется в протокол маршрутизации RIP. В маршрутизаторе R3 настроен маршрут по умолчанию R3# ip route 0.0.0.0 0.0.0.0 FastEthernet 0/0.
На маршрутизаторе R2 маршрут 3.3.3.3 можно увидеть, выполнив команду show ip route:
Как перераспределить один статический маршрут
Для перераспределения одного статического маршрута его нужно выбрать с помощью команды route-map.