...
| Блок кода |
|---|
esr# show ip route vrf bit |
...
Настройка MultiWAN
...
Технология MultiWAN позволяет организовать отказоустойчивое соединение с резервированием линков от нескольких провайдеров, а также решает проблему балансировки трафика между резервными линками.
Алгоритм настройки
| Якорь | ||||
|---|---|---|---|---|
|
| Шаг | Описание | Команда | Ключи |
|---|---|---|---|
| 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 | <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>] | |||
...
IS-IS — протокол динамической маршрутизации, стандартизированный ISO, основанный на состояниях линков (link-state). Он обеспечивает быструю сходимость и отличную масштабируемость, экономно использует пропускную способность сетей, использует Алгоритм Дейкстры для просчёта наилучших маршрутов. Отличительной особенностью протокола IS-IS является работа поверх канального уровня модели OSI, поэтому он не привязан к конкретному протоколу сетевого уровня.
Алгоритм настройки
| Шаг | Описание | Команда | Ключи |
|---|---|---|---|
1 | Cоздать IS-IS процесс и перейти в режим настройки параметров этого процесса. | esr(config)# router isis <ID> [vrf <VRF>] | <ID> – номер процесса, принимает значения [1..65535]; <VRF> – имя экземпляра VRF, задается строкой до 31 символа. |
2 | Установить NET-адрес. | esr(config-isis)# net {<NET>} | <NET> – NET-адрес, формат: ff[.ffff.ffff.ffff.ffff.ffff.ffff].ffff.ffff.ffff.00. |
3 | Включить IS-IS процесс. | esr(config-isis)# enable | |
4 | Установить алгоритм аутентификации для L2-уровня (не обязательно). | esr(config-isis)# authentication domain algorithm <ALGORITHM> | <ALGORITHM> – алгоритм аутентификации:
|
| 5 | Установить пароль аутентификации для L2-уровня (не обязательно). | esr(config-isis)# authentication domain key ascii-text { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> } | <CLEAR-TEXT> – пароль, задаётся строкой 8 символов; <ENCRYPTED-TEXT> – зашифрованный пароль размером 8 байт (16 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...). |
6 | Установить список ключей для аутентификации (не обязательно). | esr(config-isis)# authentication domain key chain <KEYCHAIN> | <KEYCHAIN> – идентификатор списка ключей, задаётся строкой до 16 символов. |
| 7 | Выбрать алгоритм аутентификации для L1-уровня (не обязательно). | esr(config-isis)# authentication area algorithm <ALGORITHM> | <ALGORITHM> – алгоритм аутентификации:
|
| 8 | Установить пароль аутентификации для L1-уровня (не обязательно). | esr(config-isis)# authentication area key ascii-text { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> } | <CLEAR-TEXT> – пароль, задаётся строкой 8 символов; <ENCRYPTED-TEXT> – зашифрованный пароль размером 8 байт (16 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...). |
| 9 | Установить список ключей для аутентификации (не обязательно). | esr(config-isis)# authentication area key chain <KEYCHAIN> | <KEYCHAIN> – идентификатор списка ключей, задаётся строкой до 16 символов. |
| 10 | Включить передачу имени маршрутизатора в LSP (не обязательно). | esr(config-isis)# hostname dynamic | |
| 11 | Установить уровень работы IS-IS процесса (не обязательно). | esr(config-isis)# is-type {<LEVEL>} | <LEVEL> – уровень работы протокола IS-IS:
|
| 12 | Установить тип метрики, который будет использоваться в работе IS-IS процесса (не обязательно). | esr(config-isis)# metric-style { narrow | wide | transition } [<LEVEL>] | narrow – принимает и генерирует TLV (о достижимости сетей) старого типа; wide – принимает и генерирует TLV (о достижимости сетей) нового типа; transition – принимает и генерирует TLV (о достижимости сетей) нового и старого типа; <LEVEL> – уровень работы протокола IS-IS:
|
| 13 | Установить приоритетность маршрутов для данного IS-IS процесса (не обязательно). | esr(config-isis)# preference {<VALUE>} | <VALUE> – принимает значения [1..255]. |
| 14 | Включить работу IS-IS с IPv4 и/или IPv6 адресами (не обязательно). | esr(config-isis)# address-family { ipv4 | ipv6 } | ipv4 – семейство адресов IPv4; ipv6 – семейство адресов IPv6. |
| 15 | Установить интервал обновления собственных LSP (не обязательно). | esr(config-isis)# lsp-refresh-interval { min | max } <TIME> [ <LEVEL> ] | min – минимальный интервал обновления/генерации; max – максимальный интервал обновления/генерации; <TIME> – время в секундах, принимает значения [1..65535]; <LEVEL> – уровень работы протокола IS-IS:
|
| 16 | Установить время жизни собственных LSP (не обязательно). | esr(config-isis)# max-lsp-lifetime <TIME> [<LEVEL>] | <TIME> – время в секундах, принимает значения [1..65535]; <LEVEL> – уровень работы протокола IS-IS:
|
| 17 | Установить таймаут перед следующим расчётом SPF (не обязательно). | esr(config-isis)# spf-timeout <TIME> [<LEVEL>] | <TIME> – время в миллисекундах, принимает значения [1..10000]; <LEVEL> – уровень работы протокола IS-IS:
|
| 18 | Включить анонсирование маршрутов, полученных альтернативным способом (не обязательно). | esr(config-isis)# redistribute bgp <AS> [ route-map <NAME> ] [is-type <LEVEL>] | <AS> – номер автономной системы, может принимать значения [1..4294967295]; <NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых маршрутов, задаётся строкой до 31 символа; <LEVEL> – уровень работы протокола IS-IS:
|
esr(config-isis)# redistribute ipv6 bgp <AS> [ route-map <NAME> ] [is-type <LEVEL>] | |||
esr(config-isis)# redistribute ospf <ID> <ROUTE-TYPE> [ route-map <NAME> ] [is-type <LEVEL>] | <ID> – номер процесса, может принимать значение [1..65535]; <ROUTE-TYPE> – тип маршрута:
<NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых OSPF-маршрутов, задаётся строкой до 31 символа; <LEVEL> – уровень работы протокола IS-IS:
| ||
esr(config-isis)# redistribute ipv6 ospf <ID> <ROUTE-TYPE> [ route-map <NAME> ] [is-type <LEVEL>] | |||
esr(config-isis)# redistribute isis <ID> <ROUTE-TYPE> [ route-map <NAME> ] [is-type <LEVEL>] | <ID> – номер процесса, может принимать значение [1..65535]; <ROUTE-TYPE> – тип маршрута:
<NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых IS-IS-маршрутов, задаётся строкой до 31 символа; <LEVEL> – уровень работы протокола IS-IS:
| ||
esr(config-isis)# redistribute rip [ route-map <NAME> ] [is-type <LEVEL>] | <NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых RIP-маршрутов, задаётся строкой до 31 символа; <LEVEL> – уровень работы протокола IS-IS:
| ||
| esr(config-isis)# redistribute ipv6 rip [ route-map <NAME> ] [is-type <LEVEL>] | |||
esr(config-isis)# redistribute static [ route-map <NAME> ] [is-type <LEVEL>] | <NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых статических маршрутов, задаётся строкой до 31 символа; <LEVEL> – уровень работы протокола IS-IS:
| ||
esr(config-isis)# redistribute connected [ route-map <NAME> ] [is-type <LEVEL>] | <NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых подключённых маршрутов, задаётся строкой до 31 символа; <LEVEL> – уровень работы протокола IS-IS:
| ||
| 19 | Добавить фильтрацию подсетей во входящих или исходящих обновлениях (не обязательно). | esr(config-isis)# prefix-list { ipv6 <LIST_NAME> | <LIST_NAME> } {in|out} | <LIST-NAME> – имя сконфигурированного списка подсетей, задаётся строкой до 31 символа. in – фильтрация входящих маршрутов; out – фильтрация анонсируемых маршрутов. |
| 20 | Добавить фильтрацию подсетей во входящих или исходящих обновлениях (не обязательно). | esr(config-isis)# route-map <NAME> {in|out} | <NAME> – имя маршрутной карты, которая будет использоваться для фильтрации и модификации анонсируемых маршрутов, задаётся строкой до 31 символа. |
| 21 | Установить принадлежность интерфейса к определенному IS-IS процессу. | esr(config-if-gi)# isis instance <ID> | <ID> – номер процесса, принимает значения [1..65535]. |
| 22 | Включить работу протокола IS-IS на интерфейсе. | esr(config-if-gi)# isis enable | |
| 23 | Включить использование TLV#8 в hello-пакетах (не обязательно). | esr(config-if-gi)# isis hello-padding | |
| 24 | Установить приоритет при выборе DIS (не обязательно). | esr(config-if-gi)# isis priority <VALUE> [<LEVEL>] | <VALUE> – число, принимающее значения [0..127]; <LEVEL> – уровень работы протокола IS-IS:
|
| 25 | Установить значение метрики для интерфейсa (не обязательно). | esr(config-if-gi)# isis metric <VALUE> [<LEVEL>] | <VALUE> – число, принимающее значения [1..16777215]; <LEVEL> – уровень работы протокола IS-IS:
|
| 26 | Установить на каком уровне маршрутизации будет работать текущий процесс IS-IS на конкретном интерфейсе (не обязательно). | esr(config-if-gi)# isis circuit-type {<LEVEL>} | <LEVEL> – уровень работы протокола IS-IS:
|
| 27 | Установить интервал отправки hello-пакетов (не обязательно). | esr(config-if-gi)# isis hello-interval <TIME> [<LEVEL>] | <TIME> – время в секундах, принимает значения [1..65535]; <LEVEL> – уровень работы протокола IS-IS:
|
| 28 | Установить множитель для вычисления и отправки Hold Time (не обязательно). | esr(config-if-gi)# isis hello-multiplier <VALUE> [<LEVEL>] | <VALUE> – число, принимающее значения [3..1000]; <LEVEL> – уровень работы протокола IS-IS:
|
| 29 | Перевести интерфейс в режим работы point-to-point протокола IS-IS (не обязательно). | esr(config-if-gi)# isis network point-to-point | |
| 30 | Установить интервал генерации и отправки CSNP (не обязательно). | esr(config-if-gi)# isis csnp-interval <TIME> [<LEVEL>] | <TIME> – время в секундах, принимает значения [1..65535]; <LEVEL> – уровень работы протокола IS-IS:
|
| 31 | Установить интервал генерации и отправки PSNP (не обязательно). | esr(config-if-gi)# isis psnp-interval <TIME> [<LEVEL>] | <TIME> – время в секундах, принимает значения [1..65535]; <LEVEL> – уровень работы протокола IS-IS:
|
| 32 | Установить интервал между передачами LSP в Broadcast-сети (не обязательно). | esr(config-if-gi)# isis lsp-interval <TIME> [<LEVEL>] | <TIME> – время в миллисекундах, принимает значения [1-10000]; <LEVEL> – уровень работы протокола IS-IS:
|
| 33 | Установить интервал повторного распространения LSP в PtP-сети (не обязательно). | esr(config-if-gi)# isis lsp-retransmit-interval <TIME> [<LEVEL>] | <TIME> – время в секундах, принимает значения [1..65535]; <LEVEL> – уровень работы протокола IS-IS:
|
| 34 | Установить алгоритм аутентификации для hello-пакетов (не обязательно). | esr(config-if-gi)# isis authentication algorithm <ALGORITHM> [<LEVEL>] | <ALGORITHM> – алгоритм аутентификации:
<LEVEL> – уровень работы протокола IS-IS:
|
| 35 | Установить пароль для аутентификации hello-пакетов (не обязательно). | esr(config-if-gi)# isis authentication key ascii-text { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> } [<LEVEL>] | <CLEAR-TEXT> – пароль, задаётся строкой 8 символов; <ENCRYPTED-TEXT> – зашифрованный пароль размером 8 байт (16 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...); <LEVEL> – уровень работы протокола IS-IS:
|
| 36 | Установить список ключей для аутентификации hello-пакетов (не обязательно). | esr(config-if-gi)# isis authentication key chain <KEYCHAIN> [<LEVEL>] | <KEYCHAIN> – идентификатор списка ключей, задаётся строкой до 16 символов; <LEVEL> – уровень работы протокола IS-IS:
|
...