Протокол IP : Протокол EIGRP

Выбор маршрута в маршрутизаторах Cisco

5 апреля 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Перевод, выполненный профессиональным переводчиком (21 мая 2008) | Английский (22 августа 2015) | Отзыв


Содержание


Введение

Один из самых интересных аспектов маршрутизаторов Cisco, особенно для пользователей, малознакомых с маршрутизацией, — это метод, который маршрутизатор использует для выбора наилучшего из доступных маршрутов, созданных протоколами маршрутизации, при помощи ручной настройки и другими способами. Несмотря на то что процесс выбора маршрута проще, чем можно предположить, полное понимание этого процесса требует некоторых знаний принципа работы маршрутизаторов Cisco.

Предварительные условия

Требования

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

Используемые компоненты

Настоящий документ не имеет жесткой привязки к каким-либо конкретным версиям программного обеспечения и оборудования.

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Технические рекомендации Cisco. Условные обозначения.

Связанные процессы

В создание и поддержку таблицы маршрутизации в маршрутизаторе Cisco вовлечены три процесса:

  • Различные процессы маршрутизации, которые фактически запускают сетевой протокол или протокол маршрутизации, такой как улучшенный протокол маршрутизации внутреннего шлюза (EIGRP), связь между промежуточными системами (IS-IS), первоочередное открытие кратчайших маршрутов (OSPF).

  • Сама таблица маршрутизации, которая получает сведения от процессов маршрутизации и отвечает на запросы данных от процесса переадресации.

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

Чтобы понять, как происходит построение таблицы маршрутизации, рассмотрим взаимодействие между протоколами маршрутизации и таблицей маршрутизации.

Построение таблицы маршрутизации

Основные вопроси при построении маршрутной таблицы:

  • Административное расстояние – Это мера надежности источника маршрута. Если маршрутизатор узнает о получателе из нескольких протоколов маршрутизации, то сравниваются административные расстояния и преимущество получают маршруты с меньшим административным расстоянием. Другими словами, это степень доверия источнику маршрута.

  • Метрики – это мера, используемая протоколом маршрутизации для вычисления лучшего пути к данному месту назначения, если известно множество путей к нему. Каждый протокол маршрутизации использует свою метрику.

  • Длина префикса

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

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

Для лучшего понимания давайте обратимся к примеру. Предположим, что в маршрутизаторе работает 4 процесса маршрутизации —: EIGRP, OSPF, RIP и IGRP. Все 4 процесса получили данные о различных маршрутах к сети 192.168.24.0/24, и каждый выбрал наилучший путь к этой сети, используя внутренние метрики и процессы.

Каждый из четырех процессов пытается установить свой маршрут к сети 192.168.24.0/24 в таблицу маршрутизации. Каждый из процессов маршрутизации назначил административное расстояние, которое используется для определения маршрута, который следует установить.

Административное расстояние по умолчанию
Связанный 0
Статичный 1
eBGP 20
EIGRP (внутренний) 90
IGRP 100
OSPF 110
IS-IS 115
RIP 120
EIGRP (внешний) 170
iBGP 200
Суммарный маршрут EIGRP 5

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

Резервные маршруты

Что другие протоколы, RIP, IGRP и OSPF, делают с неустановленными маршрутами? Что делать, если оптимальный маршрут, полученный от EIGRP, недоступен? Cisco программное обеспечение IOS� использует два подхода для решения этой проблемы: Сначала каждый процесс маршрутизации должен периодически пытаться установить свои лучшие маршруты. Если наиболее предпочтительный маршрут недоступен, то на следующей попытке будет выбран следующий по приоритету маршрут (в соответствие с административным расстоянием). Другим решением для протокола маршрутизации, которому не удалось установить маршрут в таблице, является использование маршрута и передача процессу таблицы маршрутизации команды послать отчет, если лучший маршрут даст сбой.

Для протоколов, не имеющих своей информации таблиц маршрутизации, например IGRP, используется первый метод. Каждый раз, когда протокол IGRP получает обновление маршрута, он пытается установить обновленные данные в таблицу маршрутизации. Если в таблице маршрутизации на это направление уже назначен маршрут, попытка установки закончится неудачей.

Для протоколов, не имеющих БД маршрутной информации, например EIGRP, IS-IS, OSPF, BGP и RIP, резервный маршрут регистрируется при сбое первоначальной попытки установить маршрут. Если маршрут, установленный в таблице маршрутизации, отказывает по тем или иным причинам, процесс обслуживания таблицы маршрутизации вызывает процессы всех протоколов маршрутизации, которые зарегистрировали резервный маршрут, и просит установить этот маршрут в таблицу. Если резервный маршрут зарегистрировали несколько протоколов, предпочтительный маршрут выбирается на основе административного расстояния.

Настройка административного расстояния

Административное расстояние по умолчанию не могло бы всегда быть правильным для сети; можно хотеть отрегулировать их так, чтобы Маршруты RIP были предпочтены по маршрутам IGRP, например. Перед тем как объяснить, как регулировать административные расстояния, необходимо посмотреть на последствия изменения административного расстояния.

Опасно изменять административное расстояние в протоколах маршрутизации! Изменение расстояний по умолчанию может привести к образованию петель маршрутизации. Рекомендуется изменять административное расстояние с осторожностью и с полным представлением о том, что требуется получить, и всех последствиях своих действий.

Для полных протоколов изменение расстояния относительно просто. Для этого необходимо ввести команду distance в режиме субконфигурации процесса маршрутизации. Также можно изменить расстояние маршрутов, полученных только из одного источника или расстояние только определенных маршрутов. Для получения дополнительной информации отнеситесь для Регулировки Административного расстояния для Выбора маршрута в Примере конфигурации маршрутизаторов Cisco IOS .

Чтобы изменить расстояние для статических маршрутов, введите нужное расстояние после следующей команды ip route:

фрагмент сети ip route маскирует расстояние следующего перехода

Невозможно одновременно изменить административное расстояние для всех статических маршрутов.

Как метрика определяет процесс выбора маршрута

Маршрутизаторы выбираются и включаются в маршрутизационную таблицу на основании административного расстояния протокола маршрутизации. Маршруты с наименьшим административным расстоянием, полученные от протокола маршрутизации, устанавливаются в таблицу маршрутизации. Если с одного протокола маршрутизации существует несколько путей к одному и тому же получателю, то эти пути имеют одно административное расстояние, а оптимальный путь выбирается на основе метрики. Метрики представляют собой значения, связанные с определенными маршрутами, ранжирующие их в интервале от наиболее предпочитаемых до наименее предпочитаемых. Параметры, используемые для расчета метрик, зависят от протокола маршрутизации. Путь с самой низкой метрикой выбирается в качестве оптимального пути и устанавливается в таблице маршрутизации. Если существует несколько путей с равной метрикой до одного назначения, распределение нагрузки выполняется по этим путям эквивалентной стоимости. Дополнительные сведения о распределении нагрузки см. в разделе "Как работает средство распределения нагрузки"?

Длина префикса

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

  • EIGRP (внутренний): 192.168.32.0/26

  • RIP: 192.168.32.0/24

  • OSPF: 192.168.32.0/19

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

Давайте посмотрим, как переадресующий инструмент использует информацию таблицы маршрутизации для принятия решений о пересылке.

Принятие решений о переадресации

Давайте взглянем на три маршрута, которые мы только что установили в таблице маршрутизации, и посмотрим, как они выглядят на маршрутизаторе.

router# show ip route
     ....
     D   192.168.32.0/26 [90/25789217] via 10.1.1.1
     R   192.168.32.0/24 [120/4] via 10.1.1.2
     O   192.168.32.0/19 [110/229840] via 10.1.1.3
     ....

Если пакет прибывает на интерфейс маршрутизатора с адресом назначения 192.168.32.1, какой маршрут выберет маршрутизатор? Это зависит от длины префикса или количества бит, установленного в маске подсети. При пересылке пакета более длинные префиксы всегда предпочтительнее коротких.

В этом примере, пакет, отправленный по адресу 192.168.32.1 направляется в сеть 10.1.1.1, так как адрес 192.168.32.1 находится в сети 192.168.32.0/26 (192.168.32.0–192.168.32.63). Адресу соответствуют еще два доступных маршрута, но у 192.168.32.0/26 наиболее длинный префикс в таблице маршрутизации (26 бит против 24 и 19).

Точно так же, если пакет, направленный на адрес 192.168.32.100, прибывает на один из интерфейсов маршрутизатора, он перенаправляется на 10.1.1.2, поскольку 192.168.32.100 не попадает в диапазон адресов 192.168.32.0/26 (от 192.168.32.0 до 192.168.32.63), но попадает в диапазон адресов 192.168.32.0/24 назначения (от 192.168.32.0 до 192.168.32.255). Опять, он также попадает в область, перекрытую 192.168.32.0/19, но 192.168.32.0/24 имеет более длинный префикс.

Бесклассовый IP

Для тех адресов, для которых команда ip classless configuration попадает в данный диапазон, возможно возникновение сбоев в процессе маршрутизации и пересылки. В реальности команда "IP classless" влияет только на работу процессов переадресации IOS, но не влияет на построение таблицы маршрутизации. Если функция "IP classless" не настроена (с помощью команды no ip classless), маршрутизатор не будет переадресовать пакеты в подсети. Для примера снова поместим три маршрута в таблицу маршрутизации и проведем пакеты через маршрутизатор.

Примечание: Если суперсеть или маршрут по умолчанию получены через IS-IS или OSPF, то команда no ip classless configuration игнорируется. В этом случае режим коммутация пакетов работает так, как если бы команда ip classless была настроена.

router# show ip route
....
     172.30.0.0/16 is variably  subnetted, 2 subnets, 2 masks
D        172.30.32.0/20 [90/4879540] via  10.1.1.2
D       172.30.32.0/24  [90/25789217] via 10.1.1.1
S*   0.0.0.0/0 [1/0] via 10.1.1.3  

Помня о том, что сеть 172.30.32.0/24 включает адреса с 172.30.32.0 по 172.30.32.255, а сеть 172.30.32.0/20 включает адреса с 172.30.32.0 по 172.30.47.255, мы можем выполнить коммутацию трех пакетов с использованием этой таблицы маршрутизации и проанализировать результаты.

  • Пакет, направленный по адресу 172.30.33.1, переадресуются на 10.1.1.2, так как этот маршрут имеет наибольший префикс.

  • Пакет, предназначенный для адреса 172.30.33.1, пересылается на 10.1.1.2, из-за совпадения самого длинного префикса.

  • Пакет, направленный по адресу 192.168.10.1 переадресуются на 10.1.1.3. Так как сеть отсутствует в таблице маршрутизации, пакет переадресуется на маршрут по умолчанию.

  • Пакет, отправленный по адресу 172.30.254.1, отбрасывается.

Удивительно, что из этих четырех пакетов был отброшен последний. Он отброшен потому, что его место назначения 172.30.254.1 находится внутри известной крупной сети 172.30.0.0/16, но маршрутизатор не знает об этой отдельной подсети внутри этой крупной сети.

На этом основана маршрутизация типа classful: Если одна часть основной сети известна, но подсеть в этой основной сети, для которой предназначен пакет, не известна, пакет отбрасывается.

Самым сложным для понимания аспектом этого правила является то, что маршрутизатор использует только маршрут по умолчанию, если крупная сеть назначения вообще не существует в таблице маршрутизации.

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

/image/gif/paws/8651/21a.gif

Маршрутизатор удаленного сайта настраивается следующим образом:

interface Serial 0
     ip address 10.1.2.2 255.255.255.0
   !
   interface Ethernet 0
     ip address 10.1.1.1 255.255.255.0
   !
   ip route 0.0.0.0 0.0.0.0 10.1.2.1
   !
   no ip classless

В такой конфигурации узлы на удаленном узле могут достичь назначения через Интернет (через облако 10.x.x.x), но не назначений в облаке 10.x.x.x, которое является корпоративной сетью. Поскольку удаленный маршрутизатор обладает информацией о части сети 10.0.0.0/8, двух напрямую подключенных подсетях и ничего не знает о другой подсети диапазона 10.x.x.x, то он предполагает, что таких подсетей не существует, и сбрасывает предназначенные для них пакеты. Однако трафик, направленный в Интернет, не имеет получателя в диапазоне адресов 10.x.x.x и поэтому правильно направляется по стандартному маршруту.

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

Сводка

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

/image/gif/paws/8651/21b.gif

Совпадение с наибольшей длиной префикса всегда выигрывает у маршрутов, установленных в таблице маршрутизации, в то время как протокол маршрутизации с самым коротким административным расстоянием всегда выигрывает при установке маршрутов в таблицу маршрутизации.

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 8651