EIGRP

Материал из Xgu.ru

Перейти к: навигация, поиск
stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Автор: Наташа Самойленко

EIGRP — усовершенствованный дистанционно-векторный протокол динамической маршрутизации, разработанный компанией Cisco.

Содержание

[править] Основные характеристики протокола

Основные характеристики EIGRP:

  • Быстрая сходимость (по сравнению с другими дистанционно-векторными протоколами)
  • Поддержка VLSM
  • Частичные обновления
  • Поддержка разных протоколов сетевого уровня (IP, IPX, AppleTalk)
  • Одинаковые настройки протокола при использовании различных протоколов канального уровня (например, у OSPF настройки отличаются для Ethernet и Frame Relay)
  • Сложная метрика
  • Использование multicast (224.0.0.10) и unicast адресов, вместо широковещательной рассылки

[править] Терминология протокола

  • Reliable Transport Protocol (RTP)
  • Protocol-dependent module (PDM)

[править] Описание работы протокола

Связь между таблицами.

  • Таблица маршрутизации (routing table) —

[править] RTP и типы сообщений EIGRP

RTP управляет процессом отправки и получения пакетов EIGRP.

RTP обеспечивает:

  • Гарантированную доставку пакетов. Для этого используется проприетарный алгоритм Cisco, reliable multicast. Пакеты отправляются на multicast-адрес 224.0.0.10. Каждый сосед получивший такой пакет отправляет подтверждение отправителю пакета.
  • Сохранение порядка пакетов. В каждом пакете используется два номера последовательности (sequence). Каждый пакет включает в себя номер присвоенный ему отправителем. Этот номер увеличивается на единицу каждый раз, когда маршрутизатор отправляет новый пакет. Кроме того, отправитель помещает в пакет номер последнего полученного пакета от получателя.
  • В некоторых случаях RTP использует негарантированную доставку. В таких пакетах не проставляются номера последовательностей и они не требуют подтверждения о получении.

Все сообщения EIGRP инкапсулируются в IP-пакеты, номер EIGRP в поле protocol IP-пакета — 88.

EIGRP использует 5 типов сообщений:

  • Hello — маршрутизаторы используют hello-пакеты для обнаружения соседей. Пакеты отправляются multicast и не требуют подтверждения о получении.
  • Update — содержится информация об изменении маршрутов. Они отправляются только маршрутизаторам, которых касается обновление. Эти пакеты могут быть отправлены конкретному маршрутизатору (unicast) или группе маршрутизаторов (multicast). Получение update-пакета подтверждается отправкой ACK.
  • Query — когда маршрутизатор выполняет подсчет маршрута и у него нет feasible successor, он отправляет query-пакет своим соседям для того чтобы определить нет ли feasible successor для этого destination у них. Обычно query-пакеты отправляются multicast, но могут быть и unicast. Получение query-пакета подтверждается отправкой ACK получателем пакета.
  • Reply — маршрутизатор отправляет reply-пакет в ответ на query-пакет. Reply-пакеты отправляются unicast тому, кто отправил query-пакет. Получение reply-пакета подтверждается отправкой ACK.
  • ACK — пакет, который подтверждает получение пакетов update, query, reply. ACK-пакеты отправляются unicast и содержат в себе acknowledgment number. Фактически это hello-пакеты, которые не передают данных. Используется негарантированная доставка.

[править] Отношения соседства и пакеты Hello

Для установления отношений соседства EIGRP использует пакеты hello:

  • На ethernet-интерфейсах и point-to-point интерфейсах hello-пакеты по умолчанию отправляются каждые 5 секунд, но с небольшим случайным отклонением, которое используется для того, чтобы между маршрутизаторами не было синхронизации в отправке hello-пакетов.
  • На multipoint X.25, Frame Relay, и ATM интерфейсах hello-пакеты отправляются unicast по умолчанию каждые 60 секунд.
  • Если сосед не присылает hello-сообщение в течении hold time (по умолчанию 15 секунд, 3 hello-интервала), то он считается недоступным.

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

  • маршрутизаторы должны пройти аутентификацию,
  • маршрутизаторы должны быть в одной AS,
  • отношения соседства должны устанавливаться на primary-адресах (когда приходит hello-пакет, маршрутизатор проверяет принадлежит ли адрес отправителя сети на primary-адресе интерфейса),
  • должны совпадать значения K-коэффициентов.

Note-icon.gif

Для того чтобы маршрутизаторы стали EIGRP-соседями у них не обязаны совпадать Hello и Hold time.

Маршрутизатор использует значения таймеров полученные от соседа.

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

Информация о всех обнаруженных соседях содержится в таблице соседей.

Таблица соседей (neighbor table) — список непосредственно присоединенных маршрутизаторов (на которых работает EIGRP) с которыми маршрутизатор установил отношения соседства. Одна таблица соседей существует для каждого PDM.

Note-icon.gif

EIGRP может анонсировать сети secondary-адресов, но hello-пакеты отправляются с primary-адреса.

[править] Обновления (Update)

После того как маршрутизаторы стали соседями, они начинают обмениваться обновлениями (Update). Эти пакеты могут быть отправлены конкретному маршрутизатору (unicast) или группе маршрутизаторов (multicast).

Процесс обмена обновлениями:

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

Обновления EIGRP:

  • Непериодические (Nonperiodic) — обновления отправляются не через регулярные интервалы времени, а при изменении топологии или метрики;
  • Частичные (Partial) — в обновлениях передается не вся информация из таблицы маршрутизации, а только изменения;
  • Ограниченные (Bounded) — обновления отправляются только задействованным маршрутизаторам.

[править] DUAL

Diffusing Update Algorithm (DUAL) — логика которую использует EIGRP для вычисления новых маршрутов.

Терминология:

  • Advertised distance (AD), известная также как reported distance (RD) — стоимость расстояния между соседним маршрутизатором, который анонсирует маршрут, и сетью назначения.
  • Feasible distance (FD) — стоимость расстояния от локального маршрутизатора до сети назначения = AD, которое анонсирует соседний маршрутизатор + стоимость расстояния между локальным маршрутизатором и соседним маршрутизатором.
  • Successor — соседний маршрутизатор с путем без петель и с наименьшей стоимостью пути к сети назначения.
  • Feasible successor — резервный маршрутизатор с путем без петель (AD feasible successor должно быть меньше чем FD текущего маршрута successor).
  • Feasible condition — AD feasible successor должно быть меньше, чем FD текущего маршрута successor.

[править] Пример выбора лучшего маршрута и feasible successor

EIGRP.png

Для изображенной топологии расписаны три маршрута от R1 через маршрутизаторы R2, R3 и R4 к сети хоста H2.

Возле каждого соединения подписана его стоимость.


Соседний маршрутизатор Роль соседнего маршрутизатора Статус маршрута FD AD Feasible condition
R2 Не выбран Не выбран R1R2+R2R5 = 70 R2R5 = 60 Не выполняется
R3 Feasible successor Резервный маршрут R1R3+R3R5 = 60 R3R5 = 30 Выполняется AD < FD (R3R5 < R1R4R5)
R4 Successor Лучший маршрут R1R4+R4R5 = 50 R4R5 = 30 Лучший маршрут

[править] Таблица топологии

Таблица топологии (topology table) — список маршрутов выученных от каждого соседа.

Icon-caution.gif

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

Это правило обязательно должно соблюдаться для всех дистанционно-векторных протоколов.

Демонстрация этого правила есть в примерах в разделе Примеры настроек и демонстрация работы EIGRP.

В таблице топологии также хранится метрика, которую сообщает каждый сосед для каждого destination (AD) и метрика, которую локальный маршрутизатор будет использовать для того чтобы достигнуть destination через соседа (FD).

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

Записи в таблице топологии могут находиться в двух состояниях: active и passive.

Маршрут находится в состоянии passive, когда маршрутизатор не выполняет пересчет маршрута, и в состоянии active — если выполняется пересчет маршрута.

Пересчет выполняется, когда для сети назначения нет feasible successor. Маршрутизатор инициирует пересчет отправляя запрос (отправляет query packet) каждому соседнему маршрутизатору. Если у соседа есть маршрут к сети назначения, то он отвечает (отправляет reply packet), если маршрута нет — сосед отправляет запрос своим соседям.

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

В таблице топологии может хранится 6 маршрутов к сети получателя (основной и запасные).

[править] Таймеры протокола

  • Active Timer — интервал времени в течение которого маршрут может оставаться в состоянии active. Если таймер истечет до тех пор как будут получены все ответы от соседей (Reply), то маршрутизатор переводит маршрут в состояние stuck-in-active. Кроме того, разрываются отношения соседства с теми соседями, от которых не был получен ответ.

Если в ответ на отправку любого multicast-пакета, который требует подтверждения о получении, не было отправлено подтверждение (ACK), то пакет будет передаваться unicast соседу, который не отвечает. Если подтверждение не было получено после того как отправлено 16 unicast пакетов, то сосед считается неактивным.

  • Smooth round-trip time (SRTT) — время между отправкой пакета соседу и получением подтверждения от него. Измеряется в миллисекундах. Формула вычисления проприетарная.
  • Multicast Flow Timer — максимальное значение интервала в секундах, в течение которого маршрутизатор будет ждать ACK пакета после отправки EIGRP-пакета на multicast адрес, прежде чем переключиться на unicast отправку. Вычисляется на основании SRTT, сама формула вычисления проприетарная.
  • Retransmission timeout (RTO) — интервал между отправкой unicast-пакетов. Вычисляется на основании SRTT, сама формула вычисления проприетарная.

[править] Метрика EIGRP

Метрика EIGRP основана на таких 5 компонентах (по умолчанию используются только два):

  • Bandwidth — наименьшая bandwidth между source и destination (используется по умолчанию);
  • Delay — cumulative interface delay всего пути;
  • Reliability — наихудший показатель надежности на всем пути, на основании keepalive;
  • Loading — наихудший показатель загрузки линка на всем пути, на основании packet rate и настроенной bandwidth на интерфейсе;
  • MTU — наименьшее MTU на всем пути. MTU включается в обновления EIGRP, но фактически не используется для подсчета метрики.

По умолчанию для подсчета метрики используются bandwidth и delay. Остальные критерии не рекомендуется использовать, так как это приведет к частым пересчетам маршрутов.

[править] Вычисление метрики маршрута

EIGRP подсчитывает метрику с использованием коэффициентов. По умолчанию значения коэффициентов такие: K1 = K3 = 1, K2 = K4 = K5 = 0.

Общая метрика вычисляется при помощи значений bandwidth (пропускной способности) и delay (задержки). Используется следующая формула для вычисления значения bandwidth :

bandwidth = (10000000/bandwidth(i)) * 256 

Где bandwidth(i) является наименьшей пропускной способностью (bandwidth) из всех исходящих интерфейсов по пути в сеть назначения представленная в килобитах.

Формула для вычисления значения delay:

delay = delay(i) * 256

где delay(i) является суммой всех задержек (delays) сконфигурированных на исходящих интерфейсах по пути в сеть назначения в десятках микросекунд (microseconds). Задержка (delay) показываемая командой ip eigrp topology или show interface указана в микросекундах, соответственно это значение нужно поделить на 10 перед использованием в этой формуле.

EIGRP использует полученные значения при подсчете общей метрики.

При вычислении метрики, когда K5 = 0 (значение по умолчанию), используется такая формула:

Metric = (K1 * bandwidth) + [(K2 * bandwidth) / (256 - load)] + (K3 * delay)

Если значения коэффициентов K1, K2, K3 равны значениям по умолчанию, то формула превращается в такую:

Metric = bandwidth + delay

Если K5 не равно 0, то дополнительно выполняется такая операция:

Metric = metric * [K5 / (reliability + K4)]

Значения K-коэффициентов передаются в hello-пакетах. Обычно не рекомендуется изменять эти коэффициенты.

[править] Типы маршрутов EIGRP

EIGRP поддерживает несколько типов маршрутов, у каждого типа маршрута своё значение administrative distance:

  • internal -- внутренние маршруты EIGRP. AD -- 90,
  • external -- маршруты, перераспределенные в процесс EIGRP из других источников. AD -- 170,
  • summary -- суммарные маршруты EIGRP. AD -- 5 (по умолчанию, может быть любое - задается администратором при написании команды суммирования).

[править] Базовые настройки

Создание процесса EIGRP:

dyn1(config)# router eigrp <AS>

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

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

Включение EIGRP на интерфейсах:

dyn1(config)# router eigrp 100
dyn1(config-router)# network <network> [wildcard mask]

Параметры команды network:

  • <network> — непосредственно присоединенная сеть к маршрутизатору.
  • [wildcard mask] — маска, которая указывает с помощью нулей какая часть из указанной сети должна совпадать, а с помощью 1 какая часть сети может быть произвольной. Этот параметр опциональный. Если его не задать, то будет использоваться классовая маска для указанной сети

Команда network делает следующее:

  • включает EIGRP на интерфейсе, IP-адрес которого совпадает с указанной сетью и маской,
  • анонсирует сеть этого интерфейса через другие интерфейсы, на которых включен EIGRP.

Сеть интерфейса анонсируется только если интерфейс в состоянии up/up.

Команда network включает EIGRP на текущих интерфейсах и на всех следующих, которые появятся и совпадут с сетью, которая указана в команде network.

[править] Пример базовых настроек

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

EIGRP basic.png

В примере настроены различные варианты использования команды network. Это сделано специально для того чтобы показать как её можно использоваться вместе с wildcard маской и без. Выбор варианта при настройке реальной сети будет зависеть от того, какие интерфейсы должны быть задействованы.

На dyn1 EIGRP включен на всех интерфейсах, IP-адреса которых начинаются на 192.168.1 и 192.168.3 (по умолчанию используется классовая маска /24):

router eigrp 100
 network 192.168.1.0
 network 192.168.3.0

На dyn2 EIGRP включен на всех интерфейсах, IP-адреса которых начинаются на 192.168:

router eigrp 100
 network 192.168.0.0 0.0.255.255

На dyn4 EIGRP включен на всех интерфейсах независимо от адреса интерфейса:

router eigrp 100
 network 0.0.0.0

На dyn6 EIGRP включен на конкретных интерфейсах:

router eigrp 100
 network 192.168.8.6 0.0.0.0
 network 192.168.9.6 0.0.0.0
 network 192.168.10.6 0.0.0.0

[править] Управление информацией о маршрутах

[править] Маршрут по умолчанию

Маршрут по умолчанию EIGRP может быть настроен с помощью команды:

dyn1(config)# ip default-network <network-number>

Например, для топологии изображенной на рисунке, задана такая ip default-network для dyn1:

dyn1(config)# ip default-network 192.168.1.0

На dyn1 после добавления этой команды добавляется маршрут по умолчанию отмеченный *.

Таблица маршрутизации до задания ip default-network на dyn5:

dyn5#sh ip route

Gateway of last resort is not set

C    192.168.4.0/24 is directly connected, FastEthernet0/0
C    192.168.5.0/24 is directly connected, FastEthernet1/0
D    192.168.1.0/24 [90/286720] via 192.168.4.3, 00:00:08, FastEthernet0/0
D    192.168.2.0/24 [90/30720] via 192.168.4.3, 00:00:08, FastEthernet0/0
D    192.168.3.0/24 [90/30720] via 192.168.4.3, 00:00:08, FastEthernet0/0

Таблица маршрутизации после задания ip default-network на dyn5:

dyn5#sh ip route

Gateway of last resort is 192.168.4.3 to network 192.168.1.0

C    192.168.4.0/24 is directly connected, FastEthernet0/0
C    192.168.5.0/24 is directly connected, FastEthernet1/0
D*   192.168.1.0/24 [90/286720] via 192.168.4.3, 00:00:38, FastEthernet0/0
D    192.168.2.0/24 [90/30720] via 192.168.4.3, 00:02:24, FastEthernet0/0
D    192.168.3.0/24 [90/30720] via 192.168.4.3, 00:02:24, FastEthernet0/0

[править] Суммирование маршрутов

Суммарные маршруты EIGRP:

  • По умолчанию включено автоматическое суммирование маршрутов.
  • Минимальная метрика (лучшая метрика) из всех маршрутов, которые суммируются, используется в качестве метрики суммарного маршрута.
  • Когда последний специфический маршрут, который был объединен в суммарный, пропадет из таблицы маршрутизации (на маршрутизаторе на котором выполняется суммирование), пропадет и суммарный маршрут.
  • При создании суммарного маршрута, маршрутизатор автоматически добавляет в таблицу маршрутизации этот суммарный маршрут с next-hop указывающим на null0.

Отключение автоматического суммирования маршрутов:

dyn3(config-router)#no auto-summary

После отключения автоматического суммирования на локальном маршрутизаторе появляются такие сообщения:

dyn3(config-router)#no auto-summary
dyn3(config-router)#
*Sep 10 04:10:41.989: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.2.1 (FastEthernet0/0) is resync: summary configured
*Sep 10 04:10:41.993: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.4.5 (FastEthernet2/0) is resync: summary configured
dyn3(config-router)#

На соседе этого маршрутизатора:

dyn5(config-router)#
*Sep 10 04:27:19.917: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.4.3 (FastEthernet0/0) is resync: peer graceful-restart
dyn5(config-router)#

graceful-restart: это обычное Hello сообщение с выставленными К коэффициентами в максимальное значение равное 255. Такого типа Hello сообщение посылает роутер после специфических изменений. Если у вас роутер со старым релизом IOS - тогда будет сообщение типа K-values mismatch. Реакция идентичная.

Суммарный маршрут настраивается на интерфейсе:

dyn3(config-if)#ip summary-address eigrp <AS-number> <address> <mask> [admin-distance]

По умолчанию у суммарного маршрута EIGRP administrative distance — 5. AD суммарного маршрута используется для того чтобы определить помещать ли маршрут в null0 для суммарного маршрута в таблицу маршрутизации. AD является локальным параметром и не передается соседям. У соседей суммарный маршрут будет с AD = internal = 90.

Если необходимо чтобы маршрут в null0 не помещался в таблицу маршрутизации, то необходимо указать AD = 255.

Пример задания суммарного маршрута:

dyn3(config-if)#ip summary-address eigrp 1 172.16.0.0 255.255.0.0

[править] Leak-map

Leak-map позволяет отдельно анонсировать специфический маршрут из суммарного маршрута.

Правила использования leak-map:

  • Если leak-map настроена и указывает на route-map, а route-map указывает на access-list, то анонсируется суммарный маршрут и все специфические маршруты, которые попадают под правило permit.
  • Если leak-map настроена и указывает на route-map, которая не существует, то анонсируется только суммарный маршрут, без специфических маршрутов.
  • Если leak-map настроена и указывает на route-map, а route-map указывает на access-list, который не существует, то анонсируется суммарный маршрут и все специфические маршруты.

Указание leak-map для суммарного маршрута:

dyn3(config-if)# ip summary-address eigrp <AS-number> <address> <mask> [leak-map <map-name>]

[править] Фильтрация маршрутов

Входящие или исходящие обновления EIGRP могут фильтроваться на любом интерфейсе или для всего процесса EIGRP.

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

Фильтрация маршрутов с помощью distribute list:

dyn5(config-router)# distribute-list <acl | gateway | prefix | route-map> <in|out> [interface]

[править] Перераспределение маршрутов

Перераспределение маршрутов (route redistribution) — передача маршрутов выученные с помощью одного протокола маршрутизации в другой протокол маршрутизации. Кроме того, статические маршруты или непосредственно присоединенные сети, также могут быть перераспределены и, после этого, будут передаваться с помощью соответствующего протокола маршрутизации.

Для того чтобы перераспределить маршруты из одного источника в другой, должна быть как минимум одна точка где они перераспределяются. То есть, должен быть маршрутизатор, который это выполняет. Например, если перераспределяются маршруты протокола OSPF в маршруты EIGRP, то на таком маршрутизаторе должны быть настроены оба протокола, а затем правила перераспределения маршрутов из одного протокола в другой.

Если настроено перераспределение маршрутов в EIGRP из другого протокола маршрутизации, то маршрутизатор поместит в процесс EIGRP:

  • маршруты в таблице маршрутизации, которые были выучены по это протоколу,
  • все connected маршруты, которые указаны в команде network этого протокола.

Icon-caution.gif

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

Перераспределение маршрутов в EIGRP:

dyn3(config-router)# redistribute <protocol> [process-id] [match <route-type>]
[metric <metric-value>] [route-map <map-tag>]

Параметры команды redistribute:

  • <protocol> — протокол, маршруты которого перераспределяются в EIGRP
  • match <route-type> — команда для перераспределения маршрутов OSPF в другие протоколы. Позволяет указать тип маршрутов OSPF, которые будут перераспределены:
    • external 1
    • external 2
    • internal
    • nssa-external
  • metric <metric-value> — метрика, которая будет использоваться для перераспределенных маршрутов. По умолчанию равна 0, это приводит к тому, что маршрут не перераспределяется
  • route-map <map-tag> — указывает на карту маршрута, которая используется для фильтрации маршрутов, которые будут перераспределены в EIGRP

Перераспределенные маршруты в EIGRP обозначаются как внешние. Пример внешнего маршрута в таблице маршрутизации:

dyn6#sh ip route eigrp 
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, + - replicated route 

Gateway of last resort is not set

D EX  192.168.1.0/24 [170/2573568] via 192.168.8.4, 00:00:26, FastEthernet0/0
D     192.168.2.0/24 [90/30720] via 192.168.8.4, 00:26:09, FastEthernet0/0
D     192.168.3.0/24 [90/33280] via 192.168.8.4, 00:26:09, FastEthernet0/0
D     192.168.4.0/24 [90/30720] via 192.168.8.4, 00:26:09, FastEthernet0/0

Для внешних маршрутов EIGRP использует значение AD 170, а для внутренних 90. Это значит, что если одинаковый маршрут был получен как внутренний и как внешний, то внутренний выиграет.

[править] Балансировка нагрузки

[править] Балансировка нагрузки между маршрутами с одинаковой метрикой

По умолчанию EIGRP выполняет балансировку нагрузки между 4 маршрутами с одинаковой метрикой. Для старых версий IOS это число настраивается в диапазоне от 1 до 6. В поздних версиях количество одновременно используемых маршрутов увеличено до 16.


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

Изменение количества маршрутов, между которыми выполняется балансировка нагрузки:

dyn1(config-router)# maximum-paths 6

В зависимости от того как маршрутизатор обрабатывает пакет балансировка нагрузки выполняется per-packet или per-destination:

  • Если пакет process-switched, то балансировка нагрузки выполняется per-packet.
  • Если пакет fast-switched, то балансировка нагрузки выполняется per-destination.

При тестировании балансировки нагрузки надо учитывать, что, например, если пинговать маршрутизаторы или с маршрутизаторов с fast-switching интерфейсами, генерируется локальный трафик, который process-switched.

[править] Балансировка нагрузки между маршрутами с разной метрикой

EIGRP может распределять трафик между несколькими маршрутами с различной метрикой. Это регулируется заданием variance:

dyn3(config-router)# variance 2

Значение variance может быть от 1 до 128. Это множитель, на который будет умножаться FD текущего лучшего маршрута для определения feasible маршрутов.

Icon-caution.gif

Балансировка нагрузки может выполняться только между feasible routes и только они попадут в таблицу маршрутизации.

Маршрут считается feasible при выполнении двух условий:

  • FD лучшего маршрута больше чем AD, которое анонсирует соседний маршрутизатор. Другими словами, следующий маршрутизатор на пути должен быть ближе к destination, чем локальный маршрутизатор (для предотвращения создания петель маршрутизации).
  • FD лучшего маршрута умноженное на variance должно быть больше чем FD альтернативного маршрута.

[править] Дополнительные настройки балансировки нагрузки

Без дополнительных настроек с помощью команды traffic-share, EIGRP балансирует нагрузку между маршрутами независимо от метрики.

Включение балансировки по принципу, чем меньше метрика маршрута, тем больше передается по нему трафика (обратно пропорционально метрике):

dyn3(config-router)# traffic-share balanced

Несмотря на то, что есть несколько маршрутов, отправлять трафик только по маршрутам с наименьшей метрикой:

dyn3(config-router)# traffic-share min

При использовании traffic-share min, если есть маршруты, которые попали в нужный диапазон, то они будут помещены в таблицу маршрутизации, но фактически не будут использоваться. Наличие маршрутов в таблице маршрутизации уменьшает время сходимости сети, в случае если маршрут с минимальной метрикой пропадёт.

Балансировать трафик отправляя его на различные исходящие интерфейсы:

dyn3(config-router)# traffic-share min across-interfaces

[править] Изменение параметров протокола

[править] Изменение таймеров

Изменения интервала отправки hello-пакетов:

router(config-if)# ip hello-interval eigrp <asn> <seconds>

Изменения hold-интервала:

router(config-if)# ip hold-time eigrp <asn> <seconds>

Note-icon.gif

По умолчанию hello-интервал 5 секунд для большинства интерфейсов или 60 секунд на некоторых типах(nbma networks like FR). Hold-интервал соответственно 15 или 180 секунд, то есть 3 интервала hello.

Однако, если изменить hello-интервал, то hold-интервал не изменится.

Отключение Active timer:

router(config-router)# timers active-time disabled

[править] Изменение K-коэффициентов и max-hop

Изменение K-коэффициентов:

dyn3(config-router)# metric weights <TOS> <K1>  <K2>  <K3>  <K4>  <K5>

Опции команды:

  • TOS — Type Of Service. Диапазон значений от 0 до 8. Поддерживается только значение 0.
  • K1 - K5 — K-коэффициенты. У каждого коэффициента диапазон значений от 0 до 255.

По умолчанию у EIGRP значение maximum-hops равно 100. То есть, маршрут, который достижим через 100 hop'ов считается недостижимым.

Изменение значения maximum-hops:

dyn3(config-router)# metric maximum-hops <1-255>

Для того чтобы обозначить маршрут как недостижимый в нём выставляется значение задержки равное 0xFFFFFF.

[править] Просмотр информации

Просмотр информации о соседях:

dyn3#sh ip eigrp neighbors
IP-EIGRP neighbors for process 1
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)         Cnt Num
1   192.168.4.5             Fa2/0             14 00:00:57  161       966  0  16
0   192.168.2.1             Fa0/0             12 00:00:57  180     1080  0  16

Пояснения к выводу команды sh ip eigrp neighbors:

  • H (handle) — номер, который используется маршрутизатором локально для идентификации соседей. Указывает на порядок в котором соседи были обнаружены;
  • Address — IP-адрес соседа;
  • Interface — интерфейс локального маршрутизатора, через который доступен сосед;
  • Hold Time — максимальное время, в секундах, которое маршрутизатор будет ждать каких-либо сообщений от соседа, прежде чем он сочтет соседа недоступным;
  • Uptime — время прошедшее с тех пор как локальный маршрутизатор первый раз получил сообщение от соседа;
  • SRTT (smoothed round trip time) — время между отправкой пакета соседу и получением подтверждения от него;
  • RTO (retransmission timeout) — интервал между отправкой unicast-пакетов, которые отправляются после того как от соседа не было получено подтверждение о получении multicast-пакета;
  • Queue count — количество пакетов update, query и reply в очереди (number of enqueued packet), ожидающих отправку. Если значение больше 0, предположительно, существуют проблемы;
  • Seq Num — номер последнего пакета полученного от соседа. Используется для отслеживания порядка пакетов.

Показывает версию IOS соседа и stub настройки:

dyn3#sh ip eigrp neighbors detail

Маршруты в таблице маршрутизации полученные по EIGRP:

dyn3# sh ip route eigrp
D    192.168.5.0/24 [90/30720] via 192.168.4.5, 00:02:04, FastEthernet2/0
D    192.168.1.0/24 [90/284160] via 192.168.2.1, 00:02:04, FastEthernet0/0

Просмотр информации о настройках EIGRP (значения K-коэффициентов, значение maximum-hop и др.):

dyn3#sh ip protocols 
Routing Protocol is "eigrp 1"
  Outgoing update filter list for all interfaces is not set
  Incoming update filter list for all interfaces is not set
  Default networks flagged in outgoing updates
  Default networks accepted from incoming updates
  EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
  EIGRP maximum hopcount 100
  EIGRP maximum metric variance 1
  Redistributing: eigrp 1
  EIGRP NSF-aware route hold timer is 240s
  Automatic network summarization is not in effect
  Maximum path: 6
  Routing for Networks:
    192.168.2.0
    192.168.3.0
    192.168.4.0
  Routing Information Sources:
    Gateway         Distance      Last Update
    192.168.4.5           90      00:03:30
    192.168.2.1           90      00:03:30
  Distance: internal 90 external 170

Информация об интерфейсах на которых настроен EIGRP:

dyn3#sh ip eigrp interfaces 
IP-EIGRP interfaces for process 1

                        Xmit Queue   Mean   Pacing Time   Multicast    Pending
Interface        Peers  Un/Reliable  SRTT   Un/Reliable   Flow Timer   Routes
Fa0/0              1             0/0           180            0/1               680             0
Fa1/0              0             0/0             0              0/1                 0               0
Fa2/0              1             0/0           161            0/1               552             0

Таблица топологии EIGRP:

dyn3#sh ip eigrp topology 
IP-EIGRP Topology Table for AS(1)/ID(192.168.4.3)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status 

P 192.168.1.0/24, 1 successors, FD is 284160
        via 192.168.2.1 (284160/281600), FastEthernet0/0
P 192.168.2.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet0/0
P 192.168.3.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet1/0
P 192.168.4.0/24, 1 successors, FD is 28160
        via Connected, FastEthernet2/0
P 192.168.5.0/24, 1 successors, FD is 30720
        via 192.168.4.5 (30720/28160), FastEthernet2/0

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

dyn3#sh ip eigrp traffic 
IP-EIGRP Traffic Statistics for AS 1
  Hellos sent/received: 50219/37525
  Updates sent/received: 39/31
  Queries sent/received: 0/0
  Replies sent/received: 0/0
  Acks sent/received: 20/21
  Input queue high water mark 5, 0 drops
  SIA-Queries sent/received: 0/0
  SIA-Replies sent/received: 0/0
  Hello Process ID: 224
  PDM Process ID: 219

EIGRP accounting:

dyn3#sh ip eigrp accounting 
IP-EIGRP accounting for AS(1)/ID(192.168.4.3)
Total Prefix Count: 5  States: A-Adjacency, P-Pending, D-Down
State Address/Source   Interface        Prefix   Restart  Restart/
                                        Count     Count   Reset(s)
 A    192.168.4.5      Fa2/0                 1        0        0
 A    192.168.2.1      Fa0/0                 1        0        0

[править] Поиск неисправностей и команды отладки

Просмотр отправленных и полученных пакетов EIGRP:

dyn3# debug ip eigrp

Пример вывода команды debug ip eigrp:

*Sep 27 16:14:35.302: IP-EIGRP(Default-IP-Routing-Table:1): Processing incoming UPDATE packet
*Sep 27 16:14:35.302: IP-EIGRP(Default-IP-Routing-Table:1): Int 10.1.12.0/24 M 2172416 - 1657856 514560 SM 2169856 -
*Sep 27 16:14:35.306: IP-EIGRP(Default-IP-Routing-Table:1): route installed for 10.1.12.0  ()
*Sep 27 16:14:36.018: IP-EIGRP(Default-IP-Routing-Table:1): Processing incoming UPDATE packet
*Sep 27 16:14:36.018: IP-EIGRP(Default-IP-Routing-Table:1): Int 10.1.24.0/24 M 2174976 - 1657856 517120 SM 2172416 -
*Sep 27 16:14:36.022: IP-EIGRP(Default-IP-Routing-Table:1): route installed for 10.1.24.0  ()

Описание полей в выводе:

  • Int — указывает, что далее следует информация о внутренней сети назначения;
  • Ext — указывает, что далее следует информация о внешней (external) сети назначения;
  • SM — метрика маршрута, которую анонсирует сосед;
  • M — метрика маршрута, которая состоит из суммы метрики анонсируемой соседом и стоимости пути между локальным маршрутизатором и соседом:
    • Первой число — метрика маршрута,
    • Последующие два числа — inverse bandwidth и delay, соответственно.

[править] Очистка отношений соседства

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

dyn5# clear ip eigrp neighbors [ip-address]

При выполнении команды отношения соседства разрываются, пример выполнения команды:

dyn5# clear ip eigrp neighbors 192.168.2.3
dyn5#
*Jul 27 19:13:31.923: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.2.3 (FastEthernet1/0) is down: manually cleared
*Jul 27 19:13:36.327: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.2.3 (FastEthernet1/0) is up: new adjacency

Очистить все отношения соседства, соответственно очищается вся таблица топологии:

dyn5# clear ip eigrp neighbors

Очистить все отношения соседства для указанного интерфейса:

dyn5# clear ip eigrp neighbors [interface]

Синхронизироваться с соседом без разрыва отношений соседства:

dyn5# clear ip eigrp neighbors soft
*Jul 27 19:08:16.503: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 1: Neighbor 192.168.2.3 (FastEthernet1/0) is resync: manually cleared

[править] Дополнительные возможности

[править] Bandwidth utilization

По умолчанию EIGRP использует на всех serial-интерфейсах bandwidth T1 (1,544 Mbps).

Для point-to-point Frame Relay:

  • По умолчанию используется bandwidth T1,
  • Должна быть настроена вручную и равна значению CIR PVC.

Для multipoint Frame Relay, ATM, ISDN PRI:

  • EIGRP использует bandwidth физического интерфейса, делит ее на количество соседей на этом интерфейсе для получения значения bandwidth, которое использует для отдельного соседа.
  • Если на multipoint интерфейсе разные CIR у соседей, то берется минимальное значение CIR, умножается на количество соседей и bandwidth настраивается равным полученному значению.

Настройка процента bandwidth, который будет использовать EIGRP:

dyn3(config-if)#ip bandwidth-percent eigrp <AS-number>  <percent>

[править] Аутентификация EIGRP

Создание цепочки ключей:

dyn3(config)#key chain passw 
dyn3(config-keychain)#key 1 
dyn3(config-keychain-key)#key-string password1

Настройка аутентификации:

dyn3(config-if)#ip authentication mode eigrp 1 md5
dyn3(config-if)#ip authentication key-chain eigrp 1 passw

[править] EIGRP Stub

Если маршрутизатор получает информацию о том, что его сосед stub-маршрутизатор, то он не отправляет ему запросы о каких-либо маршрутах.

Настройка EIGRP stub маршрутизатора:

dyn3(config-router)#eigrp stub [connected | leak-map | receive-only | redistributed | static | summary]

Опции команды eigrp stub:

  • Без опций (по умолчанию) — connected и summary;
  • connected — Разрешает stub маршрутизатору отправлять connected маршруты, но только для интерфейсов, адреса которых находятся в сетях, указанных командой network;
  • leak-map — Allow dynamic prefixes based on the leak-map;
  • receive-only — Запрещает stub маршрутизатору отправлять какие-либо маршруты;
  • redistributed — Разрешает stub маршрутизатору отправлять redistributed маршруты;
  • static — Разрешает stub маршрутизатору отправлять static маршруты, при том, что перераспределение статических маршрутов уже настроено;
  • summary — Разрешает stub маршрутизатору отправлять суммарные маршруты (автоматически просуммированные или административно).

[править] EIGRP Stuck in Active (SIA)

Если один из соседей не отвечает на запрос о маршруте в течение 3 минут (по умолчанию), то маршрут попадает в состояние SIA и маршрутизатор разрывает отношение соседства с соседом, который не ответил на запрос.

Сброс (reset) отношений соседства с соседом означает, что локальный маршрутизатор переводит все маршруты, известные через соседа, в состояние active и отправляет все маршруты о которых он знает соседу.

[править] Active Process Enhancement

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

  • SIA-Query — Отправляется через 1,5 минут (по умолчанию) для того чтобы проверить статус непосредственно присоединенного маршрутизатора. Для того чтобы, если пропал маршрут, который находится за соседом (при этом связь с соседом нормальная), не сбрасывались отношения соседства с непосредственно присоединенным маршрутизатором. Не требует подтверждения о получении. После отправки трех сообщений и не получении ответа сосед считается в состоянии down и маршрут убирается из таблицы топологии.
  • SIA-Reply — Отправляется в ответ на SIA-Query. Не требует подтверждения о получении.

[править] Graceful Shutdown

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

Goodbye сообщение отправляется в hello-пакетах. В таком пакете все K-коэффициенты выставляются равными 255.

[править] Примеры настроек и демонстрация работы EIGRP

[править] Таблица топологии

[править] Пример таблицы

Топология для примера:

Topology test.png

Пример таблицы топологии на R3:

R3#sh ip eigrp topology
EIGRP-IPv4 Topology Table for AS(100)/ID(150.1.3.3)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status

P 150.1.7.7/32, 1 successors, FD is 1709056
        via Redistributed (1709056/0)
P 155.1.23.0/24, 1 successors, FD is 2169856
        via Connected, Serial1/3
P 150.1.2.2/32, 1 successors, FD is 1709056
        via Redistributed (1709056/0)
P 150.1.2.0/24, 1 successors, FD is 2297856
        via 155.1.23.2 (2297856/128256), Serial1/3
P 155.1.37.0/24, 1 successors, FD is 1709056
        via Redistributed (1709056/0)
P 192.10.1.0/24, 1 successors, FD is 2195456
        via 155.1.23.2 (2195456/281600), Serial1/3

Таблица топологии на R2:

R2#sh ip eigrp topology 
EIGRP-IPv4 Topology Table for AS(100)/ID(150.1.2.2)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status 

P 150.1.7.7/32, 1 successors, FD is 2221056
        via 155.1.23.3 (2221056/1709056), Serial1/1
P 155.1.23.0/24, 1 successors, FD is 2169856
        via Connected, Serial1/1
P 150.1.2.0/24, 1 successors, FD is 128256
        via Connected, Loopback0
P 155.1.37.0/24, 1 successors, FD is 2221056
        via 155.1.23.3 (2221056/1709056), Serial1/1
P 192.10.1.0/24, 1 successors, FD is 281600
        via Connected, Ethernet0/0

Подробная информация о внутреннем маршруте на R3:

R3#sh ip ei topology 192.10.1.0/24
EIGRP-IPv4 Topology Entry for AS(100)/ID(150.1.3.3) for 192.10.1.0/24
  State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2195456
  Descriptor Blocks:
  155.1.23.2 (Serial1/3), from 155.1.23.2, Send flag is 0x0
      Composite metric is (2195456/281600), route is Internal
      Vector metric:
        Minimum bandwidth is 1544 Kbit
        Total delay is 21000 microseconds
        Reliability is 255/255
        Load is 1/255
        Minimum MTU is 1500
        Hop count is 1
        Originating router is 150.1.2.2

Подробная информация о внешнем маршруте на R2:

R2#sh ip eigrp topology  155.1.37.0/24         
EIGRP-IPv4 Topology Entry for AS(100)/ID(150.1.2.2) for 155.1.37.0/24
  State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2221056
  Descriptor Blocks:
  155.1.23.3 (Serial1/1), from 155.1.23.3, Send flag is 0x0
      Composite metric is (2221056/1709056), route is External
      Vector metric:
        Minimum bandwidth is 1500 Kbit
        Total delay is 20100 microseconds
        Reliability is 255/255
        Load is 1/255
        Minimum MTU is 1500
        Hop count is 1
        Originating router is 150.1.3.3
      External data:
        AS number of route is 100
        External protocol is OSPF, external metric is 0
        Administrator tag is 0 (0x00000000)

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

R2#sh ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, + - replicated route

Gateway of last resort is not set

      150.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C        150.1.2.0/24 is directly connected, Loopback0
D EX     150.1.7.7/32 [170/2221056] via 155.1.23.3, 00:04:19, Serial1/1
      155.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C        155.1.23.0/24 is directly connected, Serial1/1
D EX     155.1.37.0/24 [170/2221056] via 155.1.23.3, 00:04:19, Serial1/1
      192.10.1.0/24 is variably subnetted, 2 subnets, 2 masks
C        192.10.1.0/24 is directly connected, Ethernet0/0
[править] Конфигурации устройств

Настройка OSPF на R1:

router ospf 100
 network 0.0.0.0 255.255.255.255 area 0

Настройка OSPF и EIGRP на R3:

router eigrp 100
 network 155.1.23.0 0.0.0.255
 redistribute ospf 100 metric 1500 10 255 1 1500
 no auto-summary
!
router ospf 100
 network 155.1.23.0 0.0.0.255 area 0
 network 155.1.37.0 0.0.0.255 area 0

Настройка EIGRP на R2:

router eigrp 100
 network 0.0.0.0
 no auto-summary

[править] FD is Inaccessible

Topology test2.png

На изображенной топологии, по сравнению с предыдущей, добавилась настройка OSPF на R2.

Например, происходит перевод сети с EIGRP на OSPF. И предыдущая схема была первым этапом, когда одна часть сети работала по OSPF, а другая -- по EIGRP. И выполнялось перераспределение маршрутов на R3. Теперь на R2 поднят OSPF и часть маршрутов приходят и как внешние EIGRP, из-за настроенного перераспределения, и как внутренние маршруты OSPF.

Маршруты которые не попали в таблицу маршрутизации из-за того, что был лучший кандидат (по значению AD), видны в таблице топологии EIGRP с максимальной метрикой и отмечены как Inaccessible. Данные маршруты "проиграли" OSPF (AD = 110) из-за того, что это внешний маршруты EIGRP, а у них значение AD = 170.

Маршруты отмечены в таблице топологии FD is Inaccessible:

R2#sh ip eigrp topology
EIGRP-IPv4 Topology Table for AS(100)/ID(150.1.2.2)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
       r - reply Status, s - sia Status

P 150.1.7.7/32, 0 successors, FD is Inaccessible
        via 155.1.23.3 (2221056/1709056), Serial1/1
P 155.1.23.0/24, 1 successors, FD is 2169856
        via Connected, Serial1/1
P 150.1.2.2/32, 0 successors, FD is Inaccessible
        via 155.1.23.3 (2221056/1709056), Serial1/1
P 150.1.2.0/24, 1 successors, FD is 128256
        via Connected, Loopback0
P 155.1.37.0/24, 0 successors, FD is Inaccessible
        via 155.1.23.3 (2221056/1709056), Serial1/1
P 192.10.1.0/24, 1 successors, FD is 281600
        via Connected, Ethernet0/0

Более подробная информация о маршруте с такой пометкой:

R2#sh ip eigrp topology 155.1.37.0/24
EIGRP-IPv4 Topology Entry for AS(100)/ID(150.1.2.2) for 155.1.37.0/24
 State is Passive, Query origin flag is 1, 0 Successor(s), FD is 4294967295
 Descriptor Blocks:
 155.1.23.3 (Serial1/1), from 155.1.23.3, Send flag is 0x0
     Composite metric is (2221056/1709056), route is External
     Vector metric:
       Minimum bandwidth is 1500 Kbit
       Total delay is 20100 microseconds
       Reliability is 255/255
       Load is 1/255
       Minimum MTU is 1500
       Hop count is 1
       Originating router is 150.1.3.3
     External data:
       AS number of route is 100
       External protocol is OSPF, external metric is 0
       Administrator tag is 0 (0x00000000)

Проверка маршрута в таблице маршрутизации (маршрут есть в таблице маршрутизации, только получен он по OSPF):

R2#sh ip route 155.1.37.0   
Routing entry for 155.1.37.0/24
 Known via "ospf 100", distance 110, metric 74, type intra area
 Last update from 155.1.23.3 on Serial1/1, 00:07:15 ago
 Routing Descriptor Blocks:
 * 155.1.23.3, from 150.1.7.7, 00:07:15 ago, via Serial1/1
     Route metric is 74, traffic share count is 1
[править] Конфигурации устройств

Настройка OSPF на R1:

router ospf 100
 network 0.0.0.0 255.255.255.255 area 0

Настройка OSPF и EIGRP на R3:

router eigrp 100
 network 155.1.23.0 0.0.0.255
 redistribute ospf 100 metric 1500 10 255 1 1500
 no auto-summary
!
router ospf 100
 network 155.1.23.0 0.0.0.255 area 0
 network 155.1.37.0 0.0.0.255 area 0

Настройка EIGRP и OSPF на R2:

router eigrp 100
 network 0.0.0.0
 no auto-summary
!
router ospf 100
 log-adjacency-changes
 network 0.0.0.0 255.255.255.255 area 0


[править] EIGRP маршрутизатор передает соседям только те маршруты, которые сам использует

В это подразделе будет пример, который демонстрирует следующее правило:

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

Схема:

Topology test3.png

На всех маршрутизаторах настроен EIGRP.

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

R1#sh ip route
      150.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
D        150.1.2.0/24 [90/2323456] via 155.1.37.3, 00:01:18, Ethernet0/3
C        150.1.7.0/24 is directly connected, Loopback0
L        150.1.7.7/32 is directly connected, Loopback0
      155.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
D        155.1.23.0/24 [90/2195456] via 155.1.37.3, 00:01:18, Ethernet0/3
C        155.1.37.0/24 is directly connected, Ethernet0/3
L        155.1.37.7/32 is directly connected, Ethernet0/3
D     192.10.1.0/24 [90/2221056] via 155.1.37.3, 00:01:18, Ethernet0/3

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

R3#sh ip route       
      150.1.0.0/16 is variably subnetted, 4 subnets, 2 masks
D        150.1.2.0/24 [90/2297856] via 155.1.23.2, 00:08:02, Serial1/3
C        150.1.3.0/24 is directly connected, Loopback0
L        150.1.3.3/32 is directly connected, Loopback0
D        150.1.7.0/24 [90/409600] via 155.1.37.7, 00:06:47, Ethernet0/0
      155.1.0.0/16 is variably subnetted, 6 subnets, 2 masks
C        155.1.13.0/24 is directly connected, Serial1/2
L        155.1.13.3/32 is directly connected, Serial1/2
C        155.1.23.0/24 is directly connected, Serial1/3
L        155.1.23.3/32 is directly connected, Serial1/3
C        155.1.37.0/24 is directly connected, Ethernet0/0
L        155.1.37.3/32 is directly connected, Ethernet0/0
D     192.10.1.0/24 [90/2195456] via 155.1.23.2, 00:08:02, Serial1/3

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

R2#sh ip route       
      150.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C        150.1.2.0/24 is directly connected, Loopback0
L        150.1.2.2/32 is directly connected, Loopback0
D        150.1.7.0/24 [90/2323456] via 155.1.23.3, 00:07:51, Serial1/1
      155.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C        155.1.23.0/24 is directly connected, Serial1/1
L        155.1.23.2/32 is directly connected, Serial1/1
D        155.1.37.0/24 [90/2195456] via 155.1.23.3, 00:07:51, Serial1/1
      192.10.1.0/24 is variably subnetted, 2 subnets, 2 masks
C        192.10.1.0/24 is directly connected, Ethernet0/0
L        192.10.1.2/32 is directly connected, Ethernet0/0

Правило будет показано на сети 150.1.7.0/24 (loopback R1), поэтому сначала проверка его доступности:

R2#ping 150.1.7.7

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 150.1.7.7, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/16/16 ms

Если на R3 настроить статический маршрут в сеть 150.1.7.0/24, то он заменит маршрут полученный по EIGRP в таблице маршрутизации:

R3(config)#ip route 150.1.7.0 255.255.255.0 155.1.37.7

R3#sh ip route 

     150.1.0.0/16 is variably subnetted, 4 subnets, 2 masks
D        150.1.2.0/24 [90/2297856] via 155.1.23.2, 00:10:30, Serial1/3
C        150.1.3.0/24 is directly connected, Loopback0
L        150.1.3.3/32 is directly connected, Loopback0
S        150.1.7.0/24 [1/0] via 155.1.37.7
      155.1.0.0/16 is variably subnetted, 6 subnets, 2 masks
C        155.1.13.0/24 is directly connected, Serial1/2
L        155.1.13.3/32 is directly connected, Serial1/2
C        155.1.23.0/24 is directly connected, Serial1/3
L        155.1.23.3/32 is directly connected, Serial1/3
C        155.1.37.0/24 is directly connected, Ethernet0/0
L        155.1.37.3/32 is directly connected, Ethernet0/0
D     192.10.1.0/24 [90/2195456] via 155.1.23.2, 00:10:30, Serial1/3

В таблице топологии на R3 теперь он отмечен как inaccessible:

R3#sh ip eigrp topology 
EIGRP-IPv4 Topology Table for AS(100)/ID(150.1.3.3)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
      r - reply Status, s - sia Status 

P 150.1.7.0/24, 0 successors, FD is Inaccessible
       via 155.1.37.7 (409600/128256), Ethernet0/0
P 155.1.23.0/24, 1 successors, FD is 2169856
       via Connected, Serial1/3
P 150.1.2.0/24, 1 successors, FD is 2297856
       via 155.1.23.2 (2297856/128256), Serial1/3
P 155.1.37.0/24, 1 successors, FD is 281600
       via Connected, Ethernet0/0
P 192.10.1.0/24, 1 successors, FD is 2195456
       via 155.1.23.2 (2195456/281600), Serial1/3

На R2 маршрута нет, так как R3 его больше не анонсирует:

R2#sh ip route 150.1.7.0 255.255.255.0
% Subnet not in table

R2#sh ip route 
      150.1.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        150.1.2.0/24 is directly connected, Loopback0
L        150.1.2.2/32 is directly connected, Loopback0
      155.1.0.0/16 is variably subnetted, 3 subnets, 2 masks
C        155.1.23.0/24 is directly connected, Serial1/1
L        155.1.23.2/32 is directly connected, Serial1/1
D        155.1.37.0/24 [90/2195456] via 155.1.23.3, 00:10:49, Serial1/1
      192.10.1.0/24 is variably subnetted, 2 subnets, 2 masks
C        192.10.1.0/24 is directly connected, Ethernet0/0
L        192.10.1.2/32 is directly connected, Ethernet0/0

Теперь с R2 не доступен loopback R1:

R2#ping 150.1.7.7

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 150.1.7.7, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)

[править] EIGRPv6

[править] Дополнительная информация

Источник — «http://xgu.ru/wiki/EIGRP»