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

Ключ

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

...

  • <VRF> – имя экземпляра VRF, задается строкой до 31 символа;
  • <SUBNET> – адрес назначения, может быть задан в следующих видах:
    • X:X:X:X::X – IPv6-адрес хоста, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];
    • X:X:X:X::X/EE – IPv6-адрес подсети с маской в виде префикса, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF] и EE принимает значения [1..128].
  • <NEXTHOP> – IPv6-адрес шлюза, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];
  • resolve – при указании данного параметра IPv6-адрес шлюза будет рекурсивно вычислен через таблицу маршрутизации. Если при рекурсивном вычислении не удастся найти шлюз из напрямую подключенной подсети, то данный маршрут не будет установлен в систему;
  • <ID> – номер юнита, принимает значения [1..2];
  • <IF> – имя IP-интерфейса, задаётся в виде, описанном в разделе Типы и порядок именования интерфейсов маршрутизатора;
  • blackhole – при указании команды пакеты до данной подсети будут удаляться устройством без отправки уведомлений отправителю;
  • unreachable – при указании команды пакеты до данной подсети будут удаляться устройством, отправитель получит в ответ ICMP Destination unreachable (Host unreachable, code 1);
  • prohibit – при указании команды пакеты до данной подсети будут удаляться устройством, отправитель получит в ответ ICMP Destination unreachable (Communication administratively prohibited, code 13);
  • [METRIC] – метрика маршрута, принимает значения [0..255];
  • <NAME> – имя (описание) маршрута, текстовая переменная длиной до 31 символа;
  • bfd – при указании данного ключа активируется проверка next-hop при помощи протокола BFD. В случае недоступности next-hop ­маршрут удаляется.

Пример настройки

Задача:

Настроить доступ к сети Internet для пользователей локальных сетей 192.168.1.0/24 и 10.0.0.0/8, используя статическую маршрутизацию. На устройстве R1 создать шлюз для доступа к сети Internet. Трафик внутри локальной сети должен маршрутизироваться внутри зоны LAN, трафик из сети Internet должен относиться к зоне WAN.

Решение:

Зададим имя устройства для маршрутизатора R1:

...

ШагОписаниеКомандаКлючи
1Создать статический multipath ipv4 маршрут.

esr(config)# ip route multipath [ vrf <VRF> ] <SUBNET> [ track <TRACK-ID> ] [ name <NAME>] [ <METRIC> ]

<VRF> – имя экземпляра VRF, задается строкой до 31 символа;

<SUBNET> – адрес назначения, может быть задан в следующих видах:

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

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

<TRACK-ID> – идентификатор Tracking-объекта. Если маршрут привязан к Tracking-объекту, то он появится в системе только при выполнении всех условий, заданных в объекте;

<NAME> – имя (описание) маршрута, текстовая переменная длиной до 31 символа;

<METRIC> – метрика маршрута, принимает значения [0..255].

2Создать статический multipath ipv6 маршрут.

esr(config)# ipv6 route multipath [ vrf <VRF> ] <SUBNET> [ name <NAME>] [ <METRIC> ]

<VRF> – имя экземпляра VRF, задается строкой до 31 символа;

<SUBNET> – адрес назначения, может быть задан в следующих видах:

  • X:X:X:X::X – IPv6-адрес хоста, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];
  • X:X:X:X::X/EE – IPv6-адрес подсети с маской в виде префикса, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF] и EE принимает значения [1..128].

<NAME> – имя (описание) маршрута, текстовая переменная длиной до 31 символа;

<METRIC> – метрика маршрута, принимает значения [0..255].

3

Настроить шлюзы для маршрута.

esr(config)# gateway { <NEXTHOP> [ <WEIGHT> ] [ bfd ] [ unit <ID> ] [ track <TRACK-ID> ] | <IF> [ <WEIGHT> ] | <TUN> [ <WEIGHT> ] }

<NEXTHOP> – адрес шлюза, может быть задан в следующих видах:

  • AAA.BBB.CCC.DDD – IP-адрес шлюза, где каждая часть принимает значения [0..255];
  • X:X:X:X::X – IPv6-адрес шлюза, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];

<WEIGHT> – метрика шлюза, принимает значения [0..255].

<ID> – номер юнита, принимает значения [1..2];

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

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

<TRACK-ID> – идентификатор Tracking-объекта. Если шлюз привязан к Tracking-объекту, то он появится в системе только при выполнении всех условий, заданных в объекте. Доступно только для ipv4;

bfd – при указании данного ключа активируется проверка доступности шлюза при помощи протокола BFD. В случае недоступности шлюз  удаляется из таблицы маршрутизации.

Пример настройки

Задача:

Обеспечить связность сетей 192.168.1.0/24 и 115.0.0.0/24, распределяя трафик между R2 и R3 с помощью статического multipath-маршрута.

Решение:

Конфигурация R1:

Блок кода
titleR1
esr# hostname R1
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)#   description "to LAN"
esr(config-if-gi)#   ip firewall disable
esr(config-if-gi)#   ip address 192.168.1.1/24
esr(config-if-gi)# exit
esr(config)# interface gigabitethernet 1/0/3
esr(config-if-gi)#   description "to R2"
esr(config-if-gi)#   ip firewall disable
esr(config-if-gi)#   ip address 192.0.1.1/30
esr(config-if-gi)# exit
esr(config)# interface gigabitethernet 1/0/4
esr(config-if-gi)#   description "to R3"
esr(config-if-gi)#   ip address 192.0.2.1/30
esr(config-if-gi)# exit
esr(config)# ip route multipath 115.0.0.0/24
esr(config-multipath-route)#   gateway 192.0.1.2
esr(config-multipath-route)#   gateway 192.0.2.2
esr(config-multipath-route)# exit

...

ШагОписаниеКомандаКлючи
1Настроить приоритетность протокола RIP-маршрутизации для основной таблицы маршрутизации (необязательно).

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

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

Значение по умолчанию: RIP (100).

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

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

<VALUE> – количество маршрутов протокола RIP в маршрутной таблице, принимает значения в диапазоне [1..10000];
Значение по умолчанию:

10000.

3

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

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

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

4

Разрешить (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> – имя профиля IP-адресов, задаётся строкой до 31 символа;

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

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

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

5

Перейти в режим настройки параметров RIP-процесса.

esr(config)# router rip

esr(config-rip)#


6

Включить RIP-протокол.

esr(config-rip)# enable


7

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

esr(config-rip)# authentication algorithm { cleartext | md5 }

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

8

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

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

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

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

9

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

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

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

10

Выключить анонсирование маршрутов на интерфейсах/туннелях/bridge, где это не нужно (необязательно).

esr(config-rip)# passive-interface {<IF> | <TUN> }

<IF> – интерфейс и идентификатор;

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

11

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

esr(config-rip)# timers update <TIME>

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

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

12

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

esr(config-rip)# timers invalid <TIME>

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

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

13

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

esr(config-rip)# timers flush <TIME>

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

При установке значения нужно учитывать следующее правило: «timersinvalid + 60»

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

14

Включить анонсирование подсетей.

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

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

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

15

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

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

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

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

16

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

esr(config-rip)# redistribute static [ route-map <NAME> ]

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

esr(config-rip)# redistribute connected [ route-map <NAME> ]

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

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

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

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

  • intra - area – анонсирование маршрутов OSPF-процесса в пределах зоны;
  • inter - area – анонсирование маршрутов OSPF-процесса между зонами;
  • external 1 – анонсирование внешних маршрутов OSPF-формата 1;
  • external 2 – анонсирование внешних маршрутов OSPF-формата 2;

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

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

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

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

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

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

esr(config-rip)# redistribute bgp <AS> [ route-map <NAME> ]

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

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

17

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

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.

18

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

esr(config-if-gi)# ip rip metric <VALUE>

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

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

19

Установить режим анонсирования маршрутов по протоколу RIP (необязательно).

esr(config-if-gi)# ip rip mode <MODE>

<MODE> – режим анонсирования маршрутов:

  • multicast – маршруты анонсируются в многоадресном режиме;
  • broadcast – маршруты анонсируются в широковещательном режиме;
  • unicast – маршруты анонсируются в unicast-режиме соседям.

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

20

Задать IP-адрес соседа для установления отношения в unicast-режиме анонсирования маршрутов (необязательно).

esr(config-if-gi)# ip rip neighbor <ADDR>

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

21

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

esr(config-if-gi)# ip rip summary-address <ADDR/LEN>

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

22Включить протокол BFD для протокола RIP (необязательно).esr(config-if-gi)# ip rip bfd-enable

Пример настройки

Задача:

Настроить на маршрутизаторе протокол RIP для обмена маршрутной информацией с соседними маршрутизаторами. Маршрутизатор должен анонсировать статические маршруты и подсети 115.0.0.0/24, 14.0.0.0/24, 10.0.0.0/24. Анонсирование маршрутов должно происходить каждые 25 секунд.

Якорь
Пример настройки RIP рисунок
Пример настройки RIP рисунок

Решение:

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

...

ШагОписаниеКомандаКлючи
1Настроить приоритетность протокола RIPng для основной таблицы маршрутизации (необязательно).

esr(config)# ipv6 protocols rip preference <VALUE>

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

Значение по умолчанию: RIPng (100).

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

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

<VALUE> – количество маршрутов протокола RIP в маршрутной таблице, принимает значения в диапазоне [1..10000];
Значение по умолчанию:

10000.

3

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

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

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

4

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

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

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

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

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

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

5

Перейти в режим настройки параметров RIPng-процесса.

esr(config)# ipv6 router rip

esr(config-ripng)#


6

Включить протокол RIPng.

esr(config-ripng)# enable


7

Отключить анонсирование маршрутов на интерфейсах/туннелях/bridge, где это не нужно (необязательно).

esr(config-ripng)# passive-interface {<IF> | <TUN>| <BR-NUM> }

<IF> – интерфейс и идентификатор;

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

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

8

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

esr(config-ripng)# timers update <TIME>

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

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

9

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

esr(config-ripng)# timers invalid <TIME>

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

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

10

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

esr(config-ripng)# timers flush <TIME>

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

При установке значения нужно учитывать следующее правило: «timersinvalid + 60»

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

11

Включить анонсирование подсетей.

esr(config-ripng)# network <IPV6-ADDR/LEN>

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

12

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

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

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

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

13

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

esr(config-ripng)# redistribute static [ route-map <NAME> ]

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

esr(config-ripng)# redistribute connected [ route-map <NAME> ]

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

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

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

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

  • intra - area – анонсирование маршрутов OSPF-процесса в пределах зоны;
  • inter - area – анонсирование маршрутов OSPF-процесса между зонами;
  • external 1 – анонсирование внешних маршрутов OSPF-формата 1;
  • external 2 – анонсирование внешних маршрутов OSPF-формата 2.

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

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

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

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

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

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

esr(config-ripng)# redistribute bgp <AS> [ route-map <NAME> ]

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

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

14

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

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.

15

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

esr(config-if-gi)# ipv6 rip metric <VALUE>

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

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

16

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

esr(config-if-gi)# ipv6 rip summary-address <IPV6-ADDR/LEN>

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

17Включить протокол BFD для протокола RIP (необязательно).esr(config-if-gi)# ipv6 rip bfd-enable

Пример настройки

Задача:

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

Решение:

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

...

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

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/
    3250/3300/3350 – [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/
    3250/3300/3350 – (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-ospf)# enable


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> [ non-eligible ]

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

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

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

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

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

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>

Пример настройки

Задача:

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

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


Решение:

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

...

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

Задача:

Изменить тип области 1.1.1.1, область должна быть тупиковой. 

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

Решение:

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

...

Задача:

Объединить две магистральные области в одну с помощью virtual link.

Якорь
Пример настройки Virtual link рисунок
Пример настройки Virtual link рисунок

Решение:
Примечание

В firewall необходимо разрешить протокол OSPF (89).

...

Подсказка

Часто бывает, особенно при конфигурировании iBGP, что в одном bgp-процессе необходимо настроить несколько bgp neighbor с одинаковыми параметрами. Во избежание избыточности конфигурации рекомендуется использовать bgp peer-group, в которой возможно описать общие параметры, а в конфигурации bgp neighbor просто указать причастность к bgp peer-group.

Пример настройки

Задача:

Настроить BGP-протокол на маршрутизаторе R3 со следующими параметрами:

  • собственные подсети: 80.66.0.0/24, 80.66.16.0/24;
  • анонсирование подсетей, подключенных напрямую;
  • собственная AS 2500;
  • первое соседство – подсеть 219.0.0.0/30, собственный IP-адрес 219.0.0.1, IP-адрес соседа 219.0.0.2, AS2500;
  • второе соседство – подсеть 185.0.0.0/30, собственный IP-адрес 185.0.0.1, IP-адрес соседа 185.0.0.2, AS20.

Scroll Pagebreak

Решение:

Сконфигурируем необходимые сетевые интерфейсы:

...

ШагОписаниеКомандаКлюч
1Настроить протокол BGP (см. раздел Настройка BGP).
2Cоздать advertise-map, описав в нем список подсетей для дальнейшего анонсирования.esr(config)# route-map <ADVERTISE><ADVERTISE> – имя конфигурируемых правил маршрутизации, задаётся строкой до 31 символа.
3Создать condition-map, описав в нем список подсетей по которым будет осуществляться проверка.esr(config)# route-map <CONDITION><CONDITION> – имя конфигурируемых правил маршрутизации, задаётся строкой до 31 символа.
4В контексте настройки address-family заданного BGP соседа указать условие и созданные ранее маршрутные карты.esr(config-bgp-neighbor-af)# advertise-map <ADVERTISE> {EXIST-MAP | NOT-EXIST-MAP} <CONDITION>

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

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

<EXIST-MAP> – условие проверки: если маршруты, описанные в condition-map, присутствуют в BGP RIB, то происходит анонсирование маршрутов, описанных в advertise-map.

<NOT-EXIST-MAP> – условие проверки: если маршруты, описанные в condition-map, отсутствуют в BGP RIB, то происходит анонсирование маршрутов, описанных в advertise-map.

Пример настройки

Задача:

ESR получает маршрут по умолчанию от двух провайдеров – ISP «Zero» и «ISP One». Дополнительно ISP «Zero» анонсирует маршрут 10.1.1.1/32, наличие которого в BGP RIB в дальнейшем и будет отслеживаться.

Необходимо в случае присутствия маршрута 10.1.1.1/32 в BGP RIB анонсировать маршрут 198.51.100.0/24 провайдеру ISP «Zero», если маршрут 10.1.1.1/32 отсутствует в BGP RIB – анонсировать 198.51.100.0/24 провайдеру ISP «One».

Решение:

Сконфигурируем необходимые сетевые интерфейсы на каждом устройстве в сети:

...

Scroll Pagebreak

Пример настройки
Задача:

Необходимо настроить eBGP между маршрутизаторами R1, R2 и включить протокол BFD.

Image ModifiedРешение:

На R1 предварительно необходимо настроить интерфейс Gi1/0/1:

...

Scroll Pagebreak
Пример настройки
Задача:

Настроить механизм Fast Peer Deactivation  между iBGP пирами R1 и R2.

Решение:

Предварительно настроим связность между маршрутизаторами в схеме:

...

ШагОписаниеКомандаКлючи
1Создать маршрутную карту для фильтрации и модификации
IP-маршрутов.
esr(config)# route-map <NAME><NAME> – имя маршрутной карты, задается строкой до 31 символа.
2Создать правило маршрутной карты.esr(config-route-map)# rule <ORDER>

<ORDER> – номер правила, принимает значения [1 .. 10000].

3Указать действие, которое должно быть применено для маршрутной информации.esr(config-route-map-rule)# action <ACT>

<ACT> – назначаемое действие:

  • permit – прием или анонсирование маршрутной информации разрешено;
  • deny – запрещено.
4Задать значение атрибута BGP AS-Path в маршруте, для которого должно срабатывать правило
(необязательно).
esr(config-route-map-rule)# match as-path  { [begin | contain | end ] <AS-PATH> | empty | regex <REGEX> }

<AS-PATH> – список номеров автономных систем, задается в виде AS,AS,AS, принимает значения [1..4294967295]. Опциональные параметры:

<REGEX> – регулярное выражение, задаётся по стандарту POSIX-Extended Regular Expressions.

  • begin – значение атрибута начинается с указанных номеров AS;
  • contain – значение атрибута содержит указанные номера AS;
  • empty – значение атрибута пусто;
  • end – значение атрибута заканчивается указанными номерами AS;
  • regex – значение атрибута соответствует регулярному выражению.
5

Задать значение атрибута BGP Community, для которого должно срабатывать правило (необязательно).

esr(config-route-map-rule)# match community  { <COMMUNITY-LIST> | regex <REGEX> }

<COMMUNITY-LIST> – список community, задается в виде AS:N,AS:N, принимает значения [1..4294967295]. Можно указать до 64 community.

  • regex – значение атрибута соответствует регулярному выражению.

<REGEX> – регулярное выражение, задаётся по стандарту POSIX-Extended Regular Expressions.

6

Задать значение атрибута BGP Extended Community, для которого должно срабатывать правило (необязательно).

esr(config-route-map-rule)# match extcommunity  { <EXTCOMMUNITY-LIST> | regex <REGEX> }

<EXTCOMMUNITY-LIST> – список extcommunity, задается в виде KIND:AS:N, KIND:AS:N, где

KIND – тип extcommunity:

  • rt (Route Target);
  • ro (Route Origin).

N – номер extcommunity, принимает значения [1..65535].

  • regex – значение атрибута соответствует регулярному выражению.

<REGEX> – регулярное выражение, задаётся по стандарту POSIX-Extended Regular Expressions.

7

Задать профиль IP-адресов, содержащий значения подсетей назначения в маршруте (необязательно).

esr(config-route-map-rule)# match ip address  object-group <OBJ-GROUP-NETWORK-NAME>


<OBJ-GROUP-NETWORK-NAME> – имя профиля IP-адресов, содержащего префиксы подсетей назначения, задаётся строкой до 31 символа.

esr(config-route-map-rule)# match ipv6 address  object-group <OBJ-GROUP-NETWORK-NAME>

8

 Задать профиль IP-адресов, содержащий значения атрибута BGP Next-Hop в маршруте для которого должно срабатывать правило (необязательно).


 esr(config-route-map-rule)# match ip bgp next-hop  object-group <OBJ-GROUP-NETWORK-NAME>


<OBJ-GROUP-NETWORK-NAME> – имя профиля IP-адресов, содержащего префиксы подсетей назначения, задается строкой до 31 символа.

esr(config-route-map-rule)# match ipv6 bgp next-hop  object-group <OBJ-GROUP-NETWORK-NAME> 

9

Задать профиль, содержащий IP-адреса маршрутизатора, анонсировавшего маршрут, для которого должно срабатывать правило (необязательно).

 

esr(config-route-map-rule)# match ip route-source  object-group <OBJ-GROUP-NETWORK-NAME>


<OBJ-GROUP-NETWORK-NAME> – имя профиля IP-адресов, содержащего префиксы подсетей назначения, задается строкой до 31 символа.

esr(config-route-map-rule)# match ipv6 route-source  object-group <OBJ-GROUP-NETWORK-NAME>

10

Задать ACL-группу, для которой должно срабатывать правило (необязательно).

esr(config-route-map-rule)# match access-group <NAME>

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

11

Задать значение атрибута BGP MED в маршруте для которого должно срабатывать правило (необязательно).

esr(config-route-map-rule)# match metric bgp <METRIC>

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

12

Задать значение атрибута BGP AS-Path, которое будет добавляться в начало списка AS-Path (необязательно).

esr(config-route-map-rule)# action set as-path
prepend <AS-PATH> {track <TRACK-ID>}

<AS-PATH> – список номеров автономных систем, который будет добавлен к текущему значению в маршруте. Задаётся в виде AS,AS,AS, принимает значения [1..4294967295].

<TCACK-ID> – идентификатор vrrp-tracking, при котором будет исполняться указанное действие. Изменяется в диапазоне [1..60].

13Заменять номер или последовательность номеров AS в атрибуте BGP AS-Path на номер локальной AS (необязательно).

esr(config-route-map-rule)# action set as-path
 replace { any | <AS-PATH> }

<AS-PATH> – список номеров автономных систем, который будет заменён на локальный номер AS. Задаётся в виде AS,AS,AS, принимает значения [1..4294967295].

  • any – заменять любой номер AS.
14

Задать значение атрибута BGP Community, которое будет установлено в маршруте (необязательно).

esr(config-route-map-rule)# action set community  {COMMUNITY-LIST> | no-advertise | no-export }

<COMMUNITY-LIST> – список community, задается в виде AS:N,AS:N, где каждая часть принимает значения [1..65535];

  • no - advertise – маршруты, передаваемые с данным community, не должны анонсироваться другим BGP-соседям;
  • no - export – маршруты, передаваемые с таким community, не должны анонсироваться eBGP-соседям, но анонсируются внешним соседям в конфедерации.
15

Задать значение атрибута BGP ExtCommunity, которое будет установлено в маршруте (необязательно).

esr(config-route-map-rule)# action set extcommunity  <EXTCOMMUNITY-LIST>

<EXTCOMMUNITY-LIST> – список extcommunity, задается в виде KIND:AS:N, KIND:AS:N, где

KIND – тип extcommunity:

  • rt (Route Target);
  • ro (Route Origin).

N – номер extcommunity, принимает значения [1..65535].

16

Задать атрибут BGP Next-Hop, который будет установлен в маршруте при анонсировании (необязательно).


esr(config-route-map-rule)# action set ip bgp-next-hop <ADDR>

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

esr(config-route-map-rule)# action set ipv6 bgp-next-hop <IPV6-ADDR>

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

17

Задать значение атрибута BGP Local Preference, который будет установлен в маршруте (необязательно).

esr(config-route-map-rule)# action set local-preference <PREFERENCE>

<PREFERENCE> – значение атрибута BGP Local Preference, принимает значения [0..255].

18

Задать значение атрибута BGP Origin, которое будет установлено в маршруте (необязательно).

esr(config-route-map-rule)# action set origin <ORIGIN>

<ORIGIN> – значение атрибута BGP Origin:

  • egp – маршрут выучен по протоколу EGP;
  • igp – маршрут получен внутри исходной AS;
  • incomplete – маршрут выучен другим образом.

 

19

Задать значение BGP MED, которое будет установлено в маршруте
(необязательно).

esr(config-route-map-rule)# action set metric bgp <METRIC>

<METRIC> – значение атрибута BGP MED, принимает значения [0..4294967295].

20

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


esr(config-bgp-neighbor)# route-map <NAME><DIRECTION>

<NAME> – имя сконфигурированной маршрутной карты;

<DIRECTION> – направление:

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

 

esr(config-ipv6-bgp-neighbor)# route-map <NAME><DIRECTION>

Пример настройки 1
Задача:

Назначить сommunity для маршрутной информации, приходящей из AS 64498.

...

AUI Tab Group
responsivetrue
ESR1


ESR2


Решение:

Создаем политику на ESR1:

...

Настройка завершена.

Пример настройки 2
Задача:

Для всей полученнной маршрутной информации (с community 64497:100) от ESR2 установить следующие BGP атрибуты:

...

AUI Tab Group
responsivetrue
ESR1ESR1


ESR2ESR2



Решение:

Создаем политику:

Блок кода
ESR1(config)# route-map community_in

...

Scroll Pagebreak

Пример настройки 

Задача:

Необходимо настроить протокол BFD для статического маршрута на маршрутизаторе R1.

Решение:

Предварительно необходимо настроить интерфейс Gi1/0/1 на R1 и R2:

...

Пример настройки 1. Route-map для BGP

Задача:

Назначить сommunity для маршрутной информации, приходящей из AS20:

...

  • Настроить BGP c AS2500 на маршрутизаторе ESR;
  • Установить соседство с AS20.
Решение:

Создаем политику:

Блок кода
esr# configure
esr(config)# route-map from-as20

...

Пример настройки 2. Route-map для BGP
Задача:

Для всей передаваемой маршрутной информации (с community 2500:25) назначить MED, равный 240, и указать источник маршрутной информации EGP:

...

Настроить BGP c AS2500 на ESR.

Решение:

Создаем политику:

Блок кода
esr(config)# route-map to-as20

...

Пример настройки Route-map на основе списков доступа (Policy-based routing)

Задача:

Распределить трафик между Интернет-провайдерами на основе подсетей пользователей.

...

Требуется направлять трафик с адресов 10.0.20.0/24 через ISP1 (184.45.0.150), а трафик с адресов 10.0.30.0/24 – через ISP2 (80.16.0.23). Требуется контролировать доступность адресов провайдеров (работоспособность подключений к ISP), и при неработоспособности одного из подключений переводить с него на рабочее подключение весь трафик.

Решение:

Создаем ACL:

Блок кода
esr# configure
esr(config)# ip access-list extended sub20
esr(config-acl)# rule 1
esr(config-acl-rule)# match source-address 10.0.20.0 255.255.255.0
esr(config-acl-rule)# match destination-address any
esr(config-acl-rule)# match protocol any
esr(config-acl-rule)# action permit
esr(config-acl-rule)# enable
esr(config-acl-rule)# exit
esr(config-acl)# exit
esr(config)# ip access-list extended sub30
esr(config-acl)# rule 1
esr(config-acl-rule)# match source-address 10.0.30.0 255.255.255.0
esr(config-acl-rule)# match destination-address any
esr(config-acl-rule)# match protocol any
esr(config-acl-rule)# action permit
esr(config-acl-rule)# enable
esr(config-acl-rule)# exit
esr(config-acl)# exit

...

Шаг

Описание

Команда

Ключи

1

Создать экземпляр VRF и перейти в режим настройки параметров экземпляра VRF.

esr(config)# ip vrf <VRF>

<VRF> – имя экземпляра VRF, задается строкой до 31 символа.

2

Назначить описание конфигурируемого экземпляра VRF.

esr(config-vrf)# description <DESCRIPTION>

<DESCRIPTION> – описание экземпляра VRF, задаётся строкой до 255 символов.

3

Настроить емкость таблиц маршрутизации в конфигурируемом VRF для IPv4/IPv6 протоколов маршрутизации (необязательно).

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

<PROTOCOL> – вид протокола, принимает значения: ospf, bgp;

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

  • OSPF ESR-1000/1200/1500/
    1511 (rev.B)/1700/3100/3200/3200L/3250/3300/3350 – [1..500000], ESR-20/21/30/31/100/
    200 – [1..300000], ESR-10/12V(F)/15/15R/
    15VF – [1..30000]
  • BGP ESR-1000/1200/1500/
    1511 (rev.B)/1700/3100/3200/3200L/3250/3300/3350 – [1..5000000], ESR-20/21/30/31/100/
    200 – [1..2500000], ESR-10/12V(F)/15/
    15VF/15R – [1..1000000].

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

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

4

Включить и настроить протоколы динамической маршрутизации трафика (Static/OSPF/BGP/IS-IS) в экземпляре VRF (необязательно). См. соответствующий раздел Конфигурирование статических маршрутов, Настройка OSPF и Настройка BGP.



5

В режиме конфигурирования физического/логического интерфейса, туннеля, правила DNAT/SNAT, DAS-сервера или SNMPv3 пользователя указать имя экземпляра VRF для которого будет использоваться (при необходимости).

esr(config-snat-ruleset)# ip vrf forwarding <VRF>

<VRF> – имя экземпляра VRF, задается строкой до 31 символа.

6

Настроить LT-туннель для передачи трафика в глобальный режим или другие VRF (при необходимости).

 

См. раздел Настройка LT-туннелей.

Пример настройки

Задача:

К маршрутизатору ESR подключены 2 сети, которые необходимо изолировать от остальных сетей.

Решение:

Создадим VRF:

Блок кода
esr(config)# ip vrf bit
esr(config-vrf)# exit

...

ШагОписаниеКомандаКлючи
1Сконфигурировать интерфейсы, по которым будет работать MultiWAN: установить IP-адреса и указать security-zone.

2Прописать статические маршруты через WAN (если необходимо).

esr(config)# ip route <SUBNET> wan load-balance rule <ID> [<METRIC>]

<ID> – идентификатор создаваемого правила из п.2.

[METRIC] – метрика маршрута, принимает значения [0..255].

3Создать правило WAN и перейти в режим настройки параметров правила.

esr(config)# wan load-balance rule <ID>

<ID> – идентификатор создаваемого правила, принимает значения [1..50].
4Задать интерфейсы или туннели, которые являются шлюзами в маршруте, создаваемом службой MultiWAN.

esr(config-wan-rule)# outbound
{ interface <IF> | tunnel <TUN> } [WEIGHT]

<IF>– имя интерфейса;

<TUN> – имя туннеля;

[WEIGHT] – вес туннеля или интерфейса, определяется в диапазоне [1..255]. Если установить значение 2, то по данному интерфейсу будет передаваться в 2 раза больше трафика, чем по интерфейсу со значением по умолчанию. В режиме резервирования активным будет маршрут с наибольшим весом. Значение по умолчанию 1.

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

esr(config-wan-rule)# description <DESCRIPTION>

<DESCRIPTION> – описание правила wan, задаётся строкой до 255 символов.
6Данной командой осуществляется переключение из режима балансировки в режим резервирования (если необходимо).

esr(config-wan-rule)# failover


7Данной командой включается отправка ответных пакетов сессии через тот же интерфейс, через который получены входящие пакеты сессии (если необходимо).esr(config-wan-rule)# stickiness
8Включить wan-правило.

esr(config-wan-rule)# enable


9Создать список IP-адресов для проверки целостности соединения и осуществить переход в режим настройки параметров списка.

esr(config)# wan load-balance target-list <NAME>

<NAME> – название списка, задается строкой до 31 символа.
10Задать цель проверки и перейти в режим настройки параметров цели.

esr(config-target-list)# target <ID>

<ID> – идентификатор цели, задаётся в пределах [1..50]. Если при удалении используется значение параметра «all», то будут удалены все цели для конфигурируемого списка целей.
11Описать target (необязательно).

esr(config-wan-target)# description <DESCRIPTION>

<DESCRIPTION> – описание target, задаётся строкой до 255 символов.
12Указать время ожидания ответа на запрос по протоколу ICMP (необязательно).

esr(config-wan-target)# resp-time <TIME>

<TIME> – время ожидания, определяется в секундах [1..30].
13

Указать IP-адрес проверки.


esr(config-wan-target)# ip address <ADDR>

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

esr(config-wan-target)# ipv6 address <IPV6-ADDR>

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

esr(config-wan-target)# enable


Команды для пунктов 14–17 необходимо применить на интерфейсах/туннелях в MultiWAN.

15Включить WAN-режим на интерфейсе для IPv4/IPv6-стека.

esr(config-if-gi)# wan load-balance enable


esr(config-if-gi)# ipv6 wan load-balance enable

16

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

esr(config-if-gi)# wan load-balance failure-count <VALUE>

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

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


esr(config-if-gi)# ipv6 wan load-balance failure-count <VALUE>

17

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

esr(config-if-gi)# wan load-balance success-count <VALUE>

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

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

esr(config-if-gi)# ipv6 wan load-balance success-count <VALUE>

18Задать IP-адрес соседа, который будет указан в качестве одного из шлюзов в статическом маршруте, создаваемом службой MultiWAN.

esr(config-if-gi)# wan load-balance nexthop  { <IP> | dhcp enable | tunnel enable }

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

dhcp enable – если на интерфейсе IP-адрес получен через DHCP-клиента, используется шлюз с DHCP-сервера.

tunnel enable – использовать в качестве nexthop – p-t-p адрес назначения. Применимо для подключаемых интерфейсов, работающих через ppp.

esr(config-if-gi)# ipv6 wan load-balance nexthop { <IPV6> }

<IPV6> – IPv6-адрес назначения (шлюз), задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF].
19Данной командой будут проверяться IP-адреса из списка проверки целостности. В случае недоступности всех (по умолчанию)/хотя бы одной (с использованием ключа chack-all) из проверяемых узлов, шлюз будет считаться недоступным.

esr(config-if-gi)# wan load-balance target-list { check-all | <NAME> }

<NAME> – проверку производить на основании конкретного target листа (заданного в п.7).

check-all – проверку производить на основании всех target листа.

esr(config-if-gi)# ipv6 wan load-balance target-list { check-all | <NAME> }

20Прописать статические маршруты через WAN.

esr(config)# ip route <SUBNET> wan load-balance rule <ID> [<METRIC>]

<ID> – идентификатор создаваемого правила из п.2.

[METRIC] – метрика маршрута, принимает значения [0..255].

esr(config)# ipv6 route <SUBNET> wan load-balance rule <ID [<METRIC>]

Пример настройки

Задача:

Настроить маршрут к серверу (108.16.0.1/28) с возможностью балансировки нагрузки.

Решение:

Предварительно нужно выполнить следующие действия:

...

Якорь
Пример настройки IS-IS рисунок
Пример настройки IS-IS рисунок
Пример настройки

Задача:

Настроить протокол IS-IS на маршрутизаторах для обмена маршрутной информацией с соседями. Маршрутизатор ESR1 будет L1-only, ESR2 – L1/L2, ESR3 – L2-only, который также будет находится в другой area.

Решение:



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

...