Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Блок кода
esr(config-rip)# enable

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

...

Примечание

Помимо настройки протокола RIP необходимо в firewall разрешить UDP-порт 520.

Scroll Pagebreak

Настройка RIPng

RIPng – дистанционно-векторный протокол динамической маршрутизации, использующий алгоритм Беллмана-Форда для нахождения наилучшего маршрута. Данная версия протокола включает в себя поддержку работы с IPv6. RIPng работает на 3 уровне стека TCP/IP, используя UDP-порт 521. 

...

ШагОписаниеКомандаКлючи

1

Настроить приоритетность протокола OSPF-маршрутизации для основной таблицы маршрутизации (не обязательно).

esr(config)# ip protocols ospf preference <VALUE>

<VALUE> – приоритетность протокола, принимает значения в диапазоне [1..255].

Значение по умолчанию: 150.

esr(config-vrf)# ip protocols ospf preference <VALUE>

2

Настроить емкость таблиц маршрутизации протокола OSPF (не обязательно).

esr(config)# ip protocols ospf max-routes <VALUE>

<VALUE> – количество маршрутов протокола OSPF в маршрутной таблице, принимает значения в диапазоне:

  • для ESR-1000/1200/
    1500/1511/1700/
    3100/3200/3200L/
    3300 – [1..500000];
  • для ESR-20/21/30/31/
    100/200 – [1..300000];
  • для ESR-10/12V(F)/15/
    15R/15VF – [1..30000].

Значение по умолчанию для глобального режима:

  • для ESR-1000/1200/
    1500/1511/1700/
    3100/3200/3200L/
    3300 – (500000);
  • для ESR-20/21/30/31/
    100/200 – (300000);
  • для ESR-10/12V(F)/15/
    15R/15VF – (30000).

Значение по умолчанию для VRF: 0.

esr(config)# ipv6 protocols ospf max-routes <VALUE>



3

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

esr(config)# router ospf log-adjacency-changes


esr(config)# ipv6 router ospf log-adjacency-changes

4

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

esr(config)# ip prefix-list <NAME>

<NAME> – имя конфигурируемого списка подсетей, задаётся строкой до 31 символа.

esr(config)# ipv6 prefix-list <NAME>

5

Разрешить (permit) или запретить (deny) списки префиксов (не обязательно).

esr(config-pl)# permit [ { object-group <OBJ-GROUP-NETWORK-NAME> | <ADDR/LEN> | <IPV6-ADDR/LEN> } ] [ { eq <LEN> | le <LEN> | ge <LEN> [ le <LEN> ] } ]

<OBJ-GROUP-NETWORK-NAME> – имя профиля IPv4/IPv6-адресов, задаётся строкой до 31 символа;

<ADDR> – IP-адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<LEN> – длина префикса, принимает значения [1..32] в IP-списках префиксов;

  • eq – при указании команды длина префикса должна соответствовать указанной;
  • le – при указании команды длина префикса должна быть меньше либо соответствовать указанной;
  • ge – при указании команды длина префикса должна быть больше либо соответствовать указанной.

esr(config-pl)# deny [ { object-group <OBJ-GROUP-NETWORK-NAME> | <ADDR/LEN > | <IPV6-ADDR/LEN> } ] [ { eq <LEN> | le <LEN> | ge <LEN> [ le <LEN> ] } ]

6

Добавить OSPF-процесс в систему и осуществить переход в режим настройки параметров OSPF-процесса.

esr(config)# router ospf <ID> [vrf <VRF>]

<ID> – номер автономной системы процесса, принимает значения [1..65535]

<VRF> – имя экземпляра VRF, задается строкой до 31 символа, в рамках которого будет работать протокол маршрутизации.

esr(config)# ipv6 router ospf <ID> [vrf <VRF>]

7

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

esr(config-ospf)# router-id  { <ID> | <IF> | <TUN> }

<ID> – идентификатор маршрутизатора, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

<IF> – интерфейс, задаётся в виде, описанном в разделе 
Типы и порядок именования интерфейсов маршрутизатора.

<TUN> – имя туннеля устройства, задаётся в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора.

esr(config-ipv6-ospf)# router-id  { <ID> | <IF> | <TUN> }

8


Определить приоритетность маршрутов процесса OSPF (не обязательно).


esr(config-ospf)# preference <VALUE>

<VALUE> – приоритетность маршрутов процесса OSPF, принимает значения в диапазоне [1..255]. 


esr(config-ipv6-ospf)# preference <VALUE>

9Определить референсное значение для автоматического расчёта стоимости (cost) интерфейсов (не обязательно).esr(config-ospf)# auto-cost reference bandwidth <VALUE>

<VALUE> – референсное значение для расчета стоимости интерфейса в диапазоне [1..100000000K].

Значение по умолчанию: 100000K.

esr(config-ipv6-ospf)# auto-cost reference bandwidth <VALUE>
10Определить максимальное количество равнозначных маршрутов до цели (не обязательно).esr(config-ospf)# maximum-path <PATHS>

<PATHS> – количество равноценных маршрутов до цели, принимает значения в диапазоне [1..32].

Значение по умолчанию: 16.

esr(config-ipv6-ospf)# maximum-path <PATHS>

11

Включить совместимость с RFC 1583 (не обязательно).

esr(config-ospf)# compatible rfc1583


esr(config-ipv6-ospf)# compatible rfc1583

12

Добавить фильтрацию подсетей во входящих или исходящих обновлениях (не обязательно).

esr(config-ospf)# prefix-list <PREFIX-LIST-NAME> { in | out }

<PREFIX-LIST-NAME> – имя сконфигурированного списка подсетей, задаётся строкой до 31 символа.

  • in – фильтрация входящих маршрутов;
  • out – фильтрация анонсируемых маршрутов.

esr(config-ipv6-ospf)# prefix-list <PREFIX-LIST-NAME> { in | out }

13

Включить анонсирование маршрутов, полученных альтернативным способом (не обязательно).

esr(config-ospf)# redistribute static [metric <TYPE> <METRIC>] [ route-map <NAME> ]

<TYPE> – тип атрибута OSPF Metric, принимает значение type-1 и type-2;

<METRIC> – значение атрибута OSPF Metric, принимает значения [0..65535].

<NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых статических маршрутов, задаётся строкой до 31 символа.

esr(config-ipv6-ospf)# redistribute static [metric <TYPE> <METRIC>] [route-map <NAME> ]

esr(config-ospf)# redistribute connected [metric <TYPE> <METRIC>] [ route-map <NAME> ]

<TYPE> – тип атрибута OSPF Metric, принимает значение type-1 и type-2;

<METRIC> – значение атрибута OSPF Metric, принимает значения [0..65535].

<NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых напрямую подключенных подсетей, задаётся строкой до 31 символа.

esr(config-ipv6-ospf)# redistribute connected  [metric <TYPE> <METRIC>] [ route-map <NAME> ]


esr(config-ospf)# redistribute rip [metric <TYPE> <METRIC>] [ route-map <NAME> ]

<TYPE> – тип атрибута OSPF Metric, принимает значение type-1 и type-2;

<METRIC> – значение атрибута OSPF Metric, принимает значения [0..65535].

<NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых RIP-маршрутов, задаётся строкой до 31 символа.

esr(config-ospf)# redistribute isis <ID> <ROUTE-TYPE> [metric <TYPE> <METRIC>] [ route-map <NAME> ]

<TYPE> – тип атрибута OSPF Metric, принимает значение type-1 и type-2;

<METRIC> – значение атрибута OSPF Metric, принимает значения [0..65535].

<ID> – номер процесса, может принимать значение [1..65535].

<ROUTE-TYPE> – тип маршрута:

  • level-1 – анонсирование маршрутов ISIS-процесса уровня 1;
  • level-2 – анонсирование маршрутов ISIS-процесса уровня 2;
  • inter-area – анонсирование межзоновых маршрутов ISIS-процесса.

<NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых BGP-маршрутов, задаётся строкой до 31 символа.

esr(config-ipv6-ospf)# redistribute isis <ID> <ROUTE-TYPE> [ route-map <NAME> ]

esr(config-ospf)# redistribute bgp <AS> [metric <TYPE> <METRIC>] [ route-map <NAME> ]

<TYPE> – тип атрибута OSPF Metric, принимает значение type-1 и type-2;

<METRIC> – значение атрибута OSPF Metric, принимает значения [0..65535].

<AS> – номер автономной системы, может принимать значения [1..4294967295];

<NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых BGP-маршрутов, задаётся строкой до 31 символа.

14

Активировать OSPF-процесс.

esr(config-ipv6-ospf)# redistribute bgp <AS> [metric <TYPE> <METRIC>] [ route-map <NAME> ]

esr(config-ipv6-ospf)# enable


15

Создать OSPF-область и перейти в режим конфигурирования области.

esr(config-ospf)# area <AREA_ID>

<AREA_ID> – идентификатор области, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

esr(config-ipv6-ospf)# area <AREA_ID>

16

Включить анонсирование подсетей (не обязательно).

esr(config-ospf-area)# network <ADDR/LEN>

<ADDR/LEN> – адрес подсети, указывается в следующем формате:

AAA.BBB.CCC.DDD/EE – IP-адрес подсети с маской в форме префикса, где AAA-DDD принимают значения [0..255] и EE принимает значения [1..32].

esr(config-ipv6-ospf-area)# network <IPV6-ADDR/LEN>

<IPV6-ADDR/LEN> – IPv6-адрес и маска подсети, задаётся в виде X:X:X:X::X/EE, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF] и EE принимает значения [1..128].

17

Определить тип области (не обязательно).

esr(config-ospf-area)# area-type <TYPE> [ no-summary ]

<TYPE> – тип области:

  • stub – устанавливает значение stub (тупиковая область);
    no-summary – команда в связке с параметром «stub» образует область «totallystubby» (для передачи информации за пределы области используется только маршрут по умолчанию).
  • nssa – устанавливает значение nssa (область NSSA);
    no-summary – в связке с параметром nssa образует область totallynssa (автоматически генерирует маршрут по умолчанию как межобластной).

esr(config-ipv6-ospf-area)# area-type <TYPE> [ no-summary ]

18

Включить генерацию маршрута по умолчанию для NSSA или stub-области и анонсирование его в качестве Type-7 или Type-3 LSA соответственно (не обязательно).

esr(config-ospf-area)# default-information-originate


esr(config-ipv6-ospf-area)# default-information-originate

19

Определить тип метрики маршрута по умолчанию для NSSA-области (не обязательно).

esr(config-ospf-area)# default-metric-type <TYPE>

  • type-1 – устанавливает тип метрики E1 для маршрута по умолчанию в NSSA-области;
  • type-2 – устанавливает тип метрики E2 для маршрута по умолчанию в NSSA-области.

esr(config-ipv6-ospf-area)# default-metric-type <TYPE>

20

Активировать OSPF-область.

esr(config-ospf-area)# enable


esr(config-ipv6-ospf-area)# enable

21

Установить виртуальное соединение между основной и удаленными областями, имеющими между ними несколько областей (не обязательно).

esr(config-ospf-area)# virtual-link <ID>

<ID> – идентификатор маршрутизатора, с которым устанавливается виртуальное соединение, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

esr(config-ipv6-ospf-area)# virtual-link <ID>

22

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

esr(config-ospf- vlink)# restransmit-interval <TIME>

<TIME> – время в секундах, принимает значения [1..65535].

Значение по умолчанию: 5 секунд.

esr(config-ipv6-ospf- vlink)# restransmit-interval <TIME>

23

Установить интервал времени в секундах, по истечении которого маршрутизатор отправляет следующий hello-пакет (не обязательно).

esr(config-ospf- vlink)# hello-interval <TIME>esr(config-bgp-neighbor)# fall-over bfd

<TIME> – время в секундах, принимает значения [1..65535].

Значение по умолчанию: 10 секунд.

esr(config-ipv6-ospf- vlink)# hello-interval <TIME>

24

Установить интервал времени в секундах, по истечении которого сосед будет считаться неактивным (не обязательно).

Этот интервал должен быть кратным значению «hello-interval».

esr(config-ospf- vlink)# dead-interval <TIME>

<TIME> – время в секундах, принимает значения [1..65535]. Для (config-(ipv6)-ospf- vlink) - [2..65535]

Значение по умолчанию: 40 секунд.

esr(config-ipv6-ospf-vlink)# dead-interval <TIME>

25

Определяется интервал времени в секундах, по истечении которого маршрутизатор выберет DR в сети (не обязательно).

esr(config-ospf- vlink)# wait-interval <TIME>

<TIME> – время в секундах, принимает значения [2..65535].
Значение по умолчанию: 40 секунд.

esr(config-ipv6-ospf- vlink)# wait-interval <TIME>

26

Определить алгоритм аутентификации (не обязательно).

esr(config-ospf- vlink)# authentication algorithm <ALGORITHM>

<ALGORITHM> – алгоритм аутентификации:

  • cleartext – пароль, передается открытым текстом (доступно только для RIP и OSPF-VLINK);
  • md 5 – пароль, хешируется по алгоритму md5.

27

Установить пароль для аутентификации с соседом (не обязательно).

esr(config-ospf- vlink)# authentication key ascii-text  { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> }

<CLEAR-TEXT> – пароль, задаётся строкой от 8 до 16 символов.

<ENCRYPTED-TEXT> – зашифрованный пароль размером от 8 байт до 16 байт (от 16 до 32 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...).

28

Определить список паролей для аутентификации через алгоритм хеширования md5 (не обязательно).

esr(config-ospf- vlink)# authentication key chain <KEYCHAIN>

<KEYCHAIN> – идентификатор списка ключей, задаётся строкой до 16 символов.

29

Активировать виртуальное соединение (не обязательно).

esr(config-ospf- vlink)# enable


30

Перейти в режим конфигурирования интерфейса/туннеля/сетевого моста.

esr(config)# interface <IF-TYPE><IF-NUM>

<IF-TYPE> – тип интерфейса;

<IF-NUM> – F/S/P – F-фрейм (1), S – слот (0), P – порт.

esr(config)# tunnel <TUN-TYPE><TUN-NUM>

<TUN-TYPE> – тип туннеля;

<TUN-NUM> – номер туннеля.

esr(config)# bridge <BR-NUM>

<BR-NUM> – номер bridge.

31

Определить принадлежность интерфейса/туннеля/сетевого моста к определенному OSPF-процессу.

esr(config-if-gi)# ip ospf instance <ID>

<ID> – номер процесса, принимает значения [1..65535].

esr(config-if-gi)# ipv6 ospf instance <ID>

32

Определить принадлежность интерфейса к определенной области OSPF-процесса.

esr(config-if-gi)# ip ospf area <AREA_ID>

<AREA_ID> – идентификатор области, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

esr(config-if-gi)# ipv6 ospf area <AREA_ID>

33

Включить маршрутизацию по протоколу OSPF на интерфейсе.

esr(config-if-gi)# ip ospf



esr(config-if-gi)# ipv6 ospf

34

Включить режим, в котором OSPF-процесс будет игнорировать значение MTU интерфейса во входящих Database Description-пакетах (не обязательно).

esr(config-if-gi)# ip ospf mtu-ignore


esr(config-if-gi)# ipv6 ospf mtu-ignore

35

Определить алгоритм аутентификации протокола OSPF (не обязательно).

esr(config-if-gi)# ip ospf authentication algorithm <ALGORITHM>

<ALGORITHM> – алгоритм аутентификации:

  • cleartext – пароль, передается открытым текстом;
  • md 5 – пароль, хешируется по алгоритму md5.

36

Установить пароль для аутентификации с OSPF-соседом при передаче пароля открытым текстом (не обязательно).

esr(config-if-gi)# ip ospf authentication key ascii-text  { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> }

<CLEAR-TEXT> – пароль, задаётся строкой от 8 до 16 символов;

<ENCRYPTED-TEXT> – зашифрованный пароль размером от 8 байт до 16 байт (от 16 до 32 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...).

37

Определить список паролей для аутентификации по алгоритму хеширования md5 с соседом (не обязательно).

esr(config-if-gi)# ip ospf authentication key-chain <KEYCHAIN>

<KEYCHAIN> – идентификатор списка ключей, задаётся строкой до 16 символов.

38

Определить пропускную способность интерфейса для расчёта стоимости (cost) интерфейса (не обязательно).


esr(config-if-gi)# ip ospf bandwidth <VALUE><VALUE> – пропускная способность интерфейса, принимает значения [1..100000000K].
esr(config-if-gi)# ipv6 ospf bandwidth <VALUE>

39

Определить интервал времени в секундах, по истечении которого маршрутизатор выберет DR в сети (не обязательно).

esr(config-if-gi)# ip ospf wait-interval <TIME>

<TIME> – время в секундах, принимает значения [1..65535].

Значение по умолчанию: 40 секунд.

esr(config-if-gi)# ipv6 ospf wait-interval <TIME>

40

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

esr(config-if-gi)# ip ospf restransmit-interval <TIME>

<TIME> – время в секундах, принимает значения [1..65535].

Значение по умолчанию: 5 секунд.

esr(config-if-gi)# ipv6 ospf restransmit-interval <TIME>

41

Установить интервал времени в секундах, по истечении которого маршрутизатор отправляет следующий hello-пакет (не обязательно).

esr(config-if-gi)# ip ospf hello-interval <TIME>

<TIME> – время в секундах, принимает значения [1..65535].

Значение по умолчанию: 10 секунд.

esr(config-if-gi)# ipv6 ospf hello-interval <TIME>

42

Установить интервал времени в секундах, по истечении которого сосед будет считаться неактивным (не обязательно).

Этот интервал должен быть кратным значению hello-interval.

esr(config-if-gi)# ip dead-interval <TIME>

<TIME> – время в секундах, принимает значения [1..65535].

Значение по умолчанию: 40 секунд.

esr(config-if-gi)# ipv6 dead-interval <TIME>

43

Установить интервал времени, в течение которого NBMA-интерфейс ждет, прежде чем отправить hello-пакет соседу, даже в случае, если сосед неактивен (не обязательно).

esr(config-if-gi)# ip poll-interval <TIME>

<TIME> – время в секундах, принимает значения [1 .. 65535].

Значение по умолчанию: 120 секунд.

esr(config-if-gi)# ipv6 poll-interval <TIME>

44

Задать статический IP-адрес соседа для установления отношения в NMBA и P2MP (Point-to-MultiPoint) сетях (не обязательно).

esr(config-if-gi)# ip ospf neighbor <IP> [ eligible ]

<IP> – IP-адрес соседа, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

eligible – опциональный параметр, позволяет устройству участвовать в процессе выбора DR в NBMA-сетях. Приоритет интерфейса должен быть больше нуля.

esr(config-if-gi)# ip ospf neighbor <IP> [ eligible ]

<IPV6-ADDR> – IPv6-адрес соседа, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];

eligible – опциональный параметр, позволяет устройству участвовать в процессе выбора DR в NBMA-сетях. Приоритет интерфейса должен быть больше нуля.

45


Определить тип сети для установления OSPF-соседства (не обязательно).

esr(config-if-gi)# ip ospf network <TYPE>

<TYPE> – тип сети:

  • broadcast – тип соединения широковещательный;
  • non - broadcast – тип соединения NBMA;
  • point - to - multipoint – тип соединения точка-многоточие;
  • point-to-multipoint non-broadcast – тип соединения NBMA точка-многоточие;
  • point - to - point – тип соединения точка-точка.

Значение по умолчанию: broadcast.


esr(config-if-gi)# ipv6 ospf network <TYPE>

46Перевести интерфейс в пассивный режим работы. В этом режиме не рассылаются hello-пакеты, не устанавливаются отношения соседства, но подключенная сеть анонсируется соседям (не обязательно).esr(config-if-gi)# ip ospf passive-interface

esr(config-if-gi)# ipv6 ospf passive-interface

47


Установить приоритет маршрутизатора, который используется для выбора DR и BDR (не обязательно).

esr(config-if-gi)# ip ospf priority <VALUE>

<VALUE> – приоритет интерфейса, принимает значения [1..65535].

Значение по умолчанию: 120.


esr(config-if-gi)# ipv6 ospf priority <VALUE>

48

Установить величину метрики на интерфейсе или туннеле (не обязательно).

esr(config-if-gi)# ip ospf cost <VALUE>

<VALUE> – величина метрики, задаётся в размере [0..32767].

Значение по умолчанию: 10.

esr(config-if-gi)# ipv6 ospf cost <VALUE>

49

Включить протокол BFD для протокола OSPF (не обязательно).


esr(config-if-gi)# ip ospf bfd-enable



esr(config-if-gi)# ipv6 ospf bfd-enable

50

Включить механизм ttl-security hops (не обязательно).esr(config-if-gi)# ip ospf ttl-security-hops <VALUE>

<VALUE> – значение ttl, задаётся в размере [1..255].

Значение по умолчанию: 0.

esr(config-if-gi)# ipv6 ospf ttl-security-hops <VALUE>

...

Блок кода
esr(config)# router ospf 10

Scroll Pagebreak

Создадим и включим требуемую область:

...

Якорь
Пример настройки OSPF stub area рисунок
Пример настройки OSPF stub area рисунок

Scroll Pagebreak

Решение:

Предварительно нужно настроить протокол OSPF и IP-адреса на интерфейсах согласно схеме, приведенной на рисунке.

...

Блок кода
esr# show ip route
C     * 10.0.0.0/24        [0/0]   dev gi1/0/12,                   [direct 00:49:34] 
O     * 10.0.1.0/24        [150/20] via 10.0.0.1 on gi1/0/12,      [ospf1 00:49:53]  (0.0.0.3)
O     * 192.168.20.0/24    [150/30] via 10.0.0.1 on gi1/0/12,      [ospf1 00:50:15]  (0.0.0.3)
C     * 192.168.10.0/24    [0/0]   dev lo1,                        [direct 21:32:01]

Scroll Pagebreak

Рассмотрим таблицу маршрутизации на маршрутизаторе R3:

...

Блок кода
esr-R3(config)# interface gigabitethernet 1/0/1
esr-R3(config-if-gi)# ip address 185.0.0.1/30
esr-R3(config-if-gi)# exit
esr-R3(config)# interface gigabitethernet 1/0/2
esr-R3(config-if-gi)# ip address 219.0.0.1/30
esr-R3(config-if-gi)# exit
esr-R3(config)# interface gigabitethernet 1/0/3
esr-R3(config-if-gi)# ip address 80.66.0.1/24
esr-R3(config-if-gi)# exit
esr-R3(config)# interface gigabitethernet 1/0/4
esr-R3(config-if-gi)# ip address 80.66.16.1/24
esr-R3(config-if-gi)# exit

Scroll Pagebreak
Сконфигурируем firewall для приема маршрутизатором BGP-трафика из зоны безопасности WAN:

...

Блок кода
esr-R3(config)# interface gigabitethernet 1/0/1
esr-R3(config-if-gi)# security-zone wan
esr-R3(config-if-gi)# exit
esr-R3(config)# interface gigabitethernet 1/0/2
esr-R3(config-if-gi)# security-zone wan
esr-R3(config-if-gi)# exit

Scroll Pagebreak

Создадим route-map, который будет использоваться в дальнейшем при настройке разрешающих анонсов роутерам из другой AS:

...

Блок кода
esr-R3(config-bgp)# neighbor 219.0.0.2
esr-R3(config-bgp-neighbor)# remote-as 2500
esr-R3(config-bgp-neighbor)# enable

Scroll Pagebreak
И включим обмен IPv4-маршрутами:

...

  1. Маршрут, помеченный как «stale», является менее приоритетным, чем маршрут без таковой метки. Маршрут помечается как «stale» в процессе работы технологии LLGR;
  2. Сравнивается значение атрибута Weight – лучшим становится маршрут, имеющий большее значение;
  3. Сравнивается значение атрибута Local preferences – лучшим становится маршрут, имеющий большее значение;
  4. Сравнивается длина AS-path – маршрут с меньшим количеством hop-ов становится лучшим;
  5. Сравнивается значение атрибута Origin – IGP является самым приоритетным. EGP приоритетнее, чем Incomplete; 
  6. Для маршрутов, принятых от одной и той же автономной системы, сравнивается значение атрибута multiple exit discriminator (MED) – наименьшее значение атрибута имеет больший приоритет;
  7. Маршрут, полученный от EBGP-пира, имеет больший приоритет по сравнению с маршрутом, полученным от IBGP-пира;
  8. Сравнивается IGP-метрика сети, через который доступен маршрут – наименьшее значение имеет больший приоритет;
    8.1 Если включен ECMP, то дальнейших сравнений не производится и маршрут (multipath) попадет в таблицу маршрутизации;
  9. Сравнивается параметр Router-Id – маршрут, полученный от BGP-соседа с наименьшим Router-Id, является приоритетным. При наличии атрибута Originator ID будет учитываться Router-id источника маршрута;
  10. Сравнивается количество адресов в Cluster list – маршрут, имеющий наименьшее количество адресов становится лучшим;
  11. Сравниваются адреса BGP-пиров – маршрут, полученный от BGP-пира с наименьшим из адресов, является приоритетным.

Scroll Pagebreak
В выводе маршрутной информации для определенного префикса лучший маршрут будет отмечен как «Best»:

Блок кода
ESR# show bgp ipv4 unicast 192.0.2.0/24
192.0.2.0/24 via 100.64.28.1 on gi1/0/1.2800   [bgp65514 2022-05-22] (65041i)
    Administrative Distance: 170
    Type:                    unicast
    Origin:                  IGP
    AS PATH:                 65054 65055 65056 65077 65098 65059
    Next Hop:                100.64.28.1
    Local Preference:        100
    Community:               (3356:2) (3356:22) (3356:86) (3356:501) (3356:666) (3356:903) (3356:2065)
                             (12389:6) (65000:64990)
    Weight:                  0
    Valid
192.0.2.0/24 via 101.7.0.1 on gi1/0/1.2800   [bgp65514 2022-05-22] (65041i)
    Administrative Distance: 170
    Type:                    unicast
    Origin:                  IGP
    AS PATH:                 65020 65030
    Next Hop:                101.7.0.1
    Local Preference:        200
    Community:               (3356:2) (3356:22) (3356:86) (3356:501) (3356:666) (3356:903) (3356:2065)
                             (12389:6) (65000:64990)
    Weight:                  0
    Valid,Best 

Scroll Pagebreak

Условное анонсирование маршрутной информации (Conditional Advertisement)

...

Блок кода
route-map CONDITION
  rule 1
    match ip address 192.0.2.255/32
  exit
exit
route-map ADVERTISE
  rule 1
    match ip address 198.51.100.0/24
  exit
exit
router bgp 65540
  neighbor R3
    description "To R3"
    address-family ipv4 unicast
      advertise-map ADVERTISE not exist-map CONDITION
	  enable
    exit

Scroll Pagebreak

Ниже приведена диаграмма состояний для условия EXIST-MAP:

Scroll Pagebreak

После активации функции , Conditional advertisement находится в состоянии «Uninitialized». На этом этапе анонсируется вся разрешенная маршрутная информация, происходит инициализация планировщика для дальнейшей работы. Время нахождения в этом состоянии – 60 секунд:

...