...
| Блок кода |
|---|
esr(config)# interface gigabitethernet 1/0/1 esr(config-if-gi)# ip netflow export |
| Scroll Pagebreak |
|---|
Активируем Netflow на маршрутизаторе:
...
Настройка Netflow для учета трафика между зонами аналогична настройке sFlow, описание приведено в разделе Настройка sFlow.
| Scroll Pagebreak |
|---|
| Якорь | ||||
|---|---|---|---|---|
|
...
| Шаг | Описание | Команда | Ключи |
|---|---|---|---|
| 1 | Установить частоту отправки пакетов пользовательского трафика в неизменном виде на sFlow-коллектор. | esr(config)# sflow sampling-rate <RATE> | <RATE> – частота отправки пакетов пользовательского трафика на коллектор, принимает значение [1..65535]. При значении частоты 10 на коллектор будет отправлен один пакет из десяти. Значение по умолчанию: 1000. |
2 | Установить интервал, по истечении которого происходит получение информации о счетчиках сетевого интерфейса. | esr(config)# sflow poll-interval <TIMEOUT> | <TIMEOUT> – интервал, по истечении которого происходит получение информации о счетчиках сетевого интерфейса, принимает значение [1..300] секунд. Значение по умолчанию: 10 секунд. |
3 | Создать коллектор sFlow и перейти в режим его конфигурирования. | esr(config)# sflow collector <ADDR> [ vrf <VRF> ] | <ADDR> – IP-адрес коллектора, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <VRF> – имя экземпляра VRF, задаётся строкой до 31 символа. |
| 4 | Указать порт sFlow-коллектора (необязательно). | esr(config-sflow-host)# port <PORT> | <PORT> – номер UDP-порта, указывается в диапазоне [1..65535]. |
| 5 | Установить адрес sFlow-агента (необязательно). | esr(config)# sflow agent-ip <ADDR> | <ADDR> – IPv4/IPv6-адрес агента sFlow. Если команда не указана, то в качестве адреса агента будет использован случайный адрес из присутствующих в конфигурации. |
6 | Активировать сервис sFlow на маршрутизаторе. | esr(config)# sflow enable | |
7 | В режиме конфигурирования интерфейса/туннеля/сетевого моста включить отправку статистики sFlow. | esr(config-if-gi)# ip sflow export |
| Scroll Pagebreak |
|---|
Задача:
Организовать учет трафика между зонами trusted и untrusted.
...
| Блок кода |
|---|
esr# configure esr(config)# security zone TRUSTED esr(config-zone)# exit esr(config)# security zone UNTRUSTED esr(config-zone)# exit |
| Scroll Pagebreak |
|---|
Настроим сетевые интерфейсы и определим их принадлежность к зонам безопасности:
...
| Блок кода |
|---|
esr(config)# sflow collector 192.168.1.8 |
...
Включим экспорт статистики по протоколу sFlow для любого трафика в правиле «rule1» для направления TRUSTED-UNTRUSTED:
...
| Блок кода |
|---|
esr(config)# snmp-server user admin |
| Scroll Pagebreak |
|---|
Определим режим безопасности:
...
Ping
Блок кода zabbix_get -s {HOST.CONN} -p 10050 -k "system.run[ sudo ping -c 3 192.168.32.101]"Клиент (ESR), получивший данную команду от сервера, выполнит ping до заданного узла (в нашем примере до 192.168.32.101), и вернет результат серверу.
Примечание Использование ключа "-c" с указанием количества пакетов в тесте — обязательно. Без данного ключа команда ping не остановится самостоятельно и тест не будет считаться завершенным.
Ping в VRF
Блок кода zabbix_get -s {HOST.CONN} -p 10050 -k "system.run[sudo netns -exec -n backup sudo ping 192.168.32.101 -c 5 -W 2 ]"Вышеупомянутая команда будет выполнена в заданном VRF с именем backup.
Fping
Блок кода zabbix_get -s {HOST.CONN} -p 10050 -k "system.run[ sudo fping 192.168.32.101]"Клиент (ESR), получивший данную команду от сервера, выполнит fping до заданного узла (в нашем примере до 192.168.32.101), и вернет результат серверу.
Scroll Pagebreak Fping в VRF
Блок кода zabbix_get -s {HOST.CONN} -p 10050 -k "system.run[sudo netns-exec -n backup sudo fping 192.168.32.101 ]"Traceroute
Блок кода zabbix_get -s {HOST.CONN} -p 10050 -k "system.run[ sudo traceroute 192.168.32.101]Клиент (ESR), получивший данную команду от сервера, выполнит traceroute до заданного узла (в нашем примере до 192.168.32.101), и вернет результат серверу.
Traceroute в VRF
Блок кода zabbix_get -s {HOST.CONN} -p 10050 -k "system.run[ sudo netns-exec -n backup sudo traceroute 192.168.32.179]"Iperf
Блок кода zabbix_get -s {HOST.CONN} -p 10050 -k "system.run[ sudo iperf -c 192.168.32.101 -u -b 100K -i 1 -t 600]"Клиент (ESR), получивший данную команду от сервера, выполнит iperf до заданного сервера (в нашем примере до 192.168.32.101), и вернет результат серверу.
...
| Блок кода |
|---|
esr(config)# logging service start-stop |
| Scroll Pagebreak |
|---|
Задаем логирование внесений изменений в профиль пользователей:
...
Алгоритм настройки SLA-теста
Шаг | Описание | Команда | Ключи |
|---|---|---|---|
1 | Создать в системе новый SLA-тест и перейти в режим его конфигурирования. | esr(config)# ip sla test <NUM> | <NUM> – номер SLA-теста, задается в диапазоне [1..10000]. |
| 2 | Задать режим тестирования канала связи и параметры тестирования. Разные режимы подразумевают различный набор параметров, которые необходимо указать. Для одного SLA-теста возможно указать только один набор параметров тестирования. | ||
| 2.1 | Конфигурирование ICMP-режима тестирования канала связи. | esr(config-sla-test)# | |
| icmp-echo |
| { <DST- |
| ADDRESS> | <IPV6-DST-ADDRESS> } { source-ip { <SRC-ADDRESS> <IPV6-SRC-ADDRESS> | object-group <NETWORK_OBJ_GROUP_NAME> } | source-interface { <IF> | <TUN> } } [ interval <INTERVAL> ] [ num-packets <NUM-PACKETS> ] | <DST-ADDRESS> – IPv4-адрес, на который будут направляться тестовые пакеты. Задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-DST-ADDRESS> – IPv6-адрес, на который будут направляться тестовые пакеты. Задаётся в виде X:X:X:X::X, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF]; <SRC-ADDRESS> – IPv4-адрес, с которого будут отправляться тестовые пакеты. Задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-SRC-ADDRESS> – IPv6-адрес, с которого будут отправляться тестовые пакеты. Задаётся в виде X:X:X:X::X, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF]; <NETWORK_OBJ_GROUP_NAME> – список адресов, которые будут использоваться в качестве source address; <IF> – тип и идентификатор интерфейса, IP-адрес которого будет использоваться в качестве адреса источника пакетов. Задаётся в виде, описанном в разделе Типы и порядок именования интерфейсов маршрутизатора; <TUN> – тип и идентификатор туннеля, IP-адрес которого будет использоваться в качестве адреса источника пакетов. Задаётся в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора; <INTERVAL> – интервал между отправкой каждого последующего тестового пакета. Может принимать значение [1..255] миллисекунд; <NUM-PACKETS> – количество тестовых пакетов, отправляемых в рамках одной сессии тестирования. Может принимать значение [1..100000]. |
| esr(config-sla-test)# icmp-jitter <DST-ADDRESS> { source-ip { <SRC-ADDRESS> | object-group <NETWORK_OBJ_GROUP_NAME> } | source-interface { <IF> | <TUN> } } [ interval <INTERVAL> ] [ num-packets <NUM-PACKETS> ] | |
| 2.2 | Конфигурирование UDP-режима тестирования канала связи. Для |
корректной работы UDP-режим предполагает сконфигурированный Eltex SLA-responder на удаленной стороне. | esr(config-sla-test)# udp-jitter { <DST-ADDRESS> | <IPV6-DST-ADDRESS> } <DST-PORT> { source-ip { <SRC- |
| ADDRESS> | <IPV6-SRC-ADDRESS> | object-group <NETWORK_OBJ_GROUP_NAME> } | source-interface { <IF> | <TUN> } } [ source-port <SRC-PORT> ] [ interval <INTERVAL> ] [ num-packets <NUM-PACKETS> ] | <DST-ADDRESS> – IPv4-адрес, на который будут направляться тестовые пакеты. Задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-DST-ADDRESS> – IPv6-адрес, на который будут направляться тестовые пакеты. Задаётся в виде X:X:X:X::X, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF]; <DST-PORT> – номер UDP-порта назначения тестовых пакетов, принимает значения [1..65535]; <SRC-ADDRESS> – IPv4-адрес, с которого будут отправляться тестовые пакеты. Задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-SRC-ADDRESS> – IPv6-адрес, с которого будут отправляться тестовые пакеты. Задаётся в виде X:X:X:X::X, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF]; <NETWORK_OBJ_GROUP_NAME> – список адресов, которые будут использоваться в качестве source address; <IF> – тип и идентификатор интерфейса, с IP-адреса которого будут отправляться тестовые пакеты. Задаётся в виде, описанном в разделе Типы и порядок именования интерфейсов маршрутизатора; <TUN> – тип и идентификатор туннеля, с IP-адреса которого будут отправляться тестовые пакеты. Задаётся в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора; <SRC-PORT> – номер UDP-порта источника тестовых пакетов, принимает значения [1..65535]; <INTERVAL> – интервал между отправкой каждого последующего тестового пакета. Может принимать значение [1..255] миллисекунд; <NUM-PACKETS> – количество тестовых пакетов, отправляемых в рамках одной сессии тестирования. Может принимать значение [1..100000]. |
| 2.3 | Конфигурирование TCP-режима тестирования канала связи |
| . | esr(config-sla-test)# |
| tcp-connect { <DST-ADDRESS> | <IPV6-DST-ADDRESS>} { source-ip { <SRC-ADDRESS> | <IPV6-SRC-ADDRESS> | object-group <NETWORK_OBJ_GROUP_NAME> } | source-interface { <IF> | <TUN> } } [ source-port <SRC-PORT> ] | <DST-ADDRESS> – IPv4-адрес, на который будут направляться тестовые пакеты. Задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0.. |
255] |
; <IPV6-DST-ADDRESS> – IPv6-адрес, на который будут направляться тестовые пакеты. Задаётся в виде X:X:X:X::X, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF]; <DST-PORT> – номер TCP-порта назначения тестовых пакетов, принимает значения [1..65535]; <SRC-ADDRESS> – IPv4-адрес, с которого будут отправляться тестовые пакеты. Задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-SRC-ADDRESS> – IPv6-адрес, с которого будут отправляться тестовые пакеты. Задаётся в виде X:X:X:X::X, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF]; <NETWORK_OBJ_GROUP_NAME> – список адресов, которые будут использоваться в качестве source address; <IF> – тип и идентификатор интерфейса, с IP-адреса которого будут отправляться тестовые пакеты. Задаётся в виде, описанном в разделе Типы и порядок именования интерфейсов маршрутизатора; <TUN> – тип и идентификатор туннеля, с IP-адреса которого будут отправляться тестовые пакеты. Задаётся в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора; <SRC-PORT> – номер TCP-порта источника тестовых пакетов, принимает значения [1..65535]. | |
| 3 | Установить значение dscp, которым будут помечаться тестовые пакеты |
<TYPE> – тип отслеживаемой величины, может принимать значения:
- delay – допустимые значения задержек в канале;
- jitter – допустимые значения джиттера в канале;
- losses – допустимые значения потерь пакетов в канале.
<VALUE_H> – верхнее пороговое значение, при пересечении которого сессия тестирования будет считаться проваленной;
<VALUE_L> – нижнее пороговое значение, при пересечении которого сессия тестирования будет вновь считаться успешной.
| (необязательно). | esr(config-sla-test)# |
| dscp <DSCP> | <DSCP> – значение кода DSCP, может принимать значение [0..63]. | |
| 4 | Установить частоту перезапуска SLA-теста (необязательно). | esr(config-sla-test) |
<SIZE> – число сохраняемых результатов, может принимать значение
| # frequency <TIME> | <TIME> – частота перезапуска SLA-теста, может принимать значение [1.. |
| 604800] секунд. |
| 5 | Установить размер исходящего тестового пакета |
| (необязательно). | esr(config-sla-test)# |
<DESCRIPTION> – описание
| packet-size <SIZE> | <SIZE> – размер тестового пакета SLA-теста, |
| может принимать значение [70..10000] байт. | |
| 6 | Установить максимальное время ожидания ответа от удаленной стороны на тестовый пакет (необязательно). |
| esr(config-sla-test)# |
| timeout <TIME> | <TIME> – время ожидания ответного пакета от удаленной стороны, может принимать значение [1..4294967295] миллисекунд. |
| 7 | Установить значение TTL для исходящих пакетов SLA-теста (необязательно) |
| . | esr(config-sla-test)# |
| ttl <TTL> | <TTL> – значение TTL, может принимать значение [1..255]. |
| 8 | Указать экземпляр VRF,в адресном пространстве которого должен работать SLA-тест (если подразумевается конфигурацией) |
| . | esr( |
<TEST-NUMBER> – номер SLA-теста, может принимать значение [1..10000]. При использовании ключа "all" вместо номера, устанавливается расписание работы для всех активированных SLA-тестов;
<LIFE-TIME> – время жизни теста, может принимать значение [1..2147483647] секунд;
forever – время жизни теста не ограничено;
<TIME> – время начала теста, задаётся в виде HH:MM:SS, где:
HH – часы, может принимать значение [0..23];
MM – минуты, может принимать значение [0..59];
SS – секунды, может принимать значение [0..59];
<MONTH> – месяц начала теста, принимает значения [ January / February / March / April / May / June / July / August / September / October / November / December ];
<DAY> – день месяца начала теста, может принимать значение [1..31];
now – начать тест немедленно.
<TYPE> – название группы информационных сообщений, может принимать значения:
- error – отображение сообщений об ошибках в работе SLA-тестов, причинах их провала, а также ошибок в работе SLA-responder (если таковой сконфигурирован в системе);
- delay – отображение сообщений о превышении/нормализации значений, установленных в thresholds delay;
- jitter – отображение сообщений о превышении/нормализации значений, установленных в thresholds jitter;
- losses – отображение сообщений о превышении/нормализации значений, установленных в thresholds losses;
- status – отображение сообщений о смене статуса SLA-теста.
...
Шаг
...
Описание
...
Команда
...
Ключи
...
<TYPE> – название целевой платформы SLA-agent, может принимать значения:
- eltex – функционал Eltex SLA-responder для Eltex SLA-agent;
- cisco – функционал Cisco SLA-responder для Cisco SLA-agent.
...
| config-sla-test)# vrf <VRF> | <VRF> – имя экземпляра VRF, задаётся строкой до 31 символа. | ||
| 9 | Установить пороговые значения характеристик канала (необязательно). | esr(config-sla-test)# thresholds <TYPE> { high <VALUE_H> | low <VALUE_L> | forward [ { high <VALUE_H> | low <VALUE_L> } ] | reverse [ { high <VALUE_H> | low <VALUE_L> } ] } [ from-last <NUM-CHECK> { all | over <NUM-LIMIT> } ] | <TYPE> – тип отслеживаемой величины, может принимать значения:
<VALUE_H> – верхнее пороговое значение, при пересечении которого сессия тестирования будет считаться проваленной; <VALUE_L> – нижнее пороговое значение, при пересечении которого сессия тестирования будет вновь считаться успешной; <NUM-CHECKS> – количество итераций теста, в течение которых проверяется соблюдение пороговых значений характеристик канала; <NUM-LIMIT> – количество итераций теста с превышением установленного порога, после превышения которого тест считается проваленным. |
| 10 | Запретить фрагментацию тестовых пакетов (необязательно). | esr(config-sla-test)# disallow-fragmentation | |
| 11 | Установить количество записей о результатах тестирования, отображающихся в истории измерений (необязательно). | esr(config-sla-test)# history <SIZE> | <SIZE> – число сохраняемых результатов, может принимать значение [1..1000]. |
| 12 | Задать описание SLA-теста (необязательно). | esr(config-sla-test)# description <DESCRIPTION> | <DESCRIPTION> – описание SLA-теста, задается строкой до 255 символов. |
| 13 | Настроить параметры аутентификации, согласно алгоритму настройки параметров аутентификации (только для UDP-тестов, необязательно). | ||
| 14 | Активировать SLA-тест. | esr(config-sla-test)# enable | |
| 15 | Выйти из параметров конфигурирования SLA-теста. | esr(config-sla-test)# exit | |
| 16 | Задать расписание запуска активированных SLA-тестов. | esr(configt)# ip sla schedule { <TEST-NUMBER> | all } [ life { <LIFE-TIME> | forever } ] [ start-time { <MONTH> <DAY> <TIME> | now } ] | <TEST-NUMBER> – номер SLA-теста, может принимать значение [1..10000]. При использовании ключа "all" вместо номера, устанавливается расписание работы для всех активированных SLA-тестов; <LIFE-TIME> – время жизни теста, может принимать значение [1..2147483647] секунд; forever – время жизни теста не ограничено; <TIME> – время начала теста, задаётся в виде HH:MM:SS, где: HH – часы, может принимать значение [0..23]; MM – минуты, может принимать значение [0..59]; SS – секунды, может принимать значение [0..59]; <MONTH> – месяц начала теста, принимает значения [ January / February / March / April / May / June / July / August / September / October / November / December ]; <DAY> – день месяца начала теста, может принимать значение [1..31]; now – начать тест немедленно. |
| 17 | Активировать вывод информационных сообщений групп событий (необязательно). Каждая из групп активируется отдельно. | esr(config)# ip sla logging <TYPE> | <TYPE> – название группы информационных сообщений, может принимать значения:
|
| 18 | Активировать сервис SLA-agent. | esr(config)# ip sla | |
Настройка SLA-responder
| Якорь | ||||
|---|---|---|---|---|
|
Шаг | Описание | Команда | Ключи |
|---|---|---|---|
| 1 | В режиме конфигурирования интерфейса на маршрутизаторе, который является удаленной стороной SLA-теста, активировать SLA-responder. | esr(config-if-gi)# ip sla responder <TYPE> | <TYPE> – название целевой платформы SLA-agent, может принимать значения:
|
| esr(config-if-gi)# ipv6 sla responder eltex | |||
| 2 | Установить UDP-порт, на котором будет идти прослушивание запросов аутентификации от SLA-agent (если при конфигурировании SLA-теста был указан порт прохождения контрольной фазы, отличный от порта по умолчанию). | ||
| 2.1 | Конфигурирование UDP-порта для прослушивания запросов аутентификации от Eltex SLA-agent (необязательно). | esr(config-if-gi)# ip sla responder eltex port <PORT> | <PORT> – номер UDP-порта, может принимать значение [1..65535]. |
| esr(config-if-gi)# ipv6 sla responder eltex port <PORT> | |||
| 2.2 | Конфигурирование UDP-порта для прослушивания запросов аутентификации от Cisco SLA-agent (необязательно). | esr(config-if-gi)# ip sla responder cisco port <PORT> | <PORT> – номер UDP-порта, может принимать значение [1..65535]. |
Пример настройки ICMP-режима тестирования
Задача:
Настроить постоянную проверку доступности публичного DNS-сервера с IP-адресом 8.8.8.8. Интерфейс, имеющий доступ в сеть Интернет gi1/0/1, имеет адрес 192.168.44.15.
Решение:
Для выяснения сетевой доступности достаточной является проверка с помощью ICMP-запросов. Для этого настроим SLA-тест с типом icmp-echo и всеми параметрами по умолчанию:
| Блок кода |
|---|
esr# configure
esr(config)# ip sla test 1
esr(config-sla-test)# icmp-echo 8.8.8.8 source-ip 192.168.44.15
esr(config-sla-test)# enable
esr(config-sla-test)# exit
esr(config)# ip sla schedule 1 life forever start-time now
|
Также включим логирование событий смены статуса теста и сообщений о причинах неудачи (на случай, если адрес перестанет быть доступен).
| Блок кода |
|---|
esr(config)# ip sla logging status
esr(config)# ip sla logging error
esr(config)# ip sla
esr(config)# exit
esr# commit
|
После применения конфигурации тест стартует, и выводится сообщение о его текущем состоянии:
| Блок кода |
|---|
esr# 2023-12-13T14:01:55+00:00 %IP_SLA-I-STATUS: (test 1) State changed to success
|
| Scroll Pagebreak |
|---|
Сводную информацию о результате и конфигурации теста можно вывести командой:
| Блок кода |
|---|
esr# show ip sla test status
Test Type Source |
Пример настройки ICMP-режима тестирования
Задача:
Настроить постоянную проверку доступности публичного DNS-сервера с IP-адресом 8.8.8.8. Интерфейс, имеющий доступ в сеть Интернет gi1/0/1, имеет адрес 192.168.44.15.
Решение:
Для выяснения сетевой доступности достаточной является проверка с помощью ICMP-запросов. Для этого настроим SLA-тест с типом icmp-echo и всеми параметрами по умолчанию:
| Блок кода |
|---|
esr# configure
esr(config)# ip sla test 1
esr(config-sla-test)# icmp-echo 8.8.8.8 source-ip 192.168.44.15
esr(config-sla-test)# enable
esr(config-sla-test)# exit
esr(config)# ip sla schedule 1 life forever start-time now
|
Также включим логирование событий смены статуса теста и сообщений о причинах неудачи (на случай, если адрес перестанет быть доступен).
| Блок кода |
|---|
esr(config)# ip sla logging status
esr(config)# ip sla logging error
esr(config)# ip sla
esr(config)# exit
esr# commit
|
После применения конфигурации тест стартует, и выводится сообщение о его текущем состоянии:
| Блок кода |
|---|
esr# 2023-12-13T14:01:55+00:00 %IP_SLA-I-STATUS: (test 1) State changed to success
|
| Scroll Pagebreak |
|---|
Сводную информацию о результате и конфигурации теста можно вывести командой:
| Блок кода |
|---|
esr# show ip sla test status
Test Type Source Destination Status Last Run
------- ------------ ---------------- ---------------- ------------ ------------------
1 icmp-echo 192.168.44.15 8.8.8.8 Successful 1 second(s) ago
|
...
Шаг | Описание | Команда | Ключи |
|---|---|---|---|
| 1 | В режиме конфигурирования SLA-теста, установить тип алгоритма, который будет использоваться при хешировании ключей аутентификации. | esr(config-sla-test)# control-phase authentication algorithm <ALGORITHM> | <ALGORITHM> – алгоритм хеширования, принимает значения [sha-256, hmac-sha-256]. |
| 2 | Задать ключ, который будет использоваться в процессе прохождения контрольной фазы для аутентификации. Может быть использован один из двух видов ключей аутентификации: ключ-строка, указываемая непосредственно в режиме конфигурирования SLA-теста, и ключ, содержащийся в предварительно сконфигурированной связке ключей (key-chain). | ||
| 2.1 | При использовании ключ-строки установить ее непосредственно в режиме конфигурирования SLA-теста. | esr(config-sla-test)# control-phase authentication key-string ascii-text { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> } | <CLEAR-TEXT> – строка длиной от 8 до 16 символов; <ENCRYPTED-TEXT> – зашифрованный пароль размером от 8 байт до 16 байт (от 16 до 32 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...). |
| 2.2.1 | При использовании ключа из связки ключей вернуться в общий режим конфигурирования, а затем создать новую связку ключей. | esr(config)# key-chain <KEYCHAIN> | <KEYCHAIN> – идентификатор связки ключей, задается строкой длиной до 16 символов. |
| 2.2.2 | В режиме конфигурирования связки ключей создать новый ключ. | esr(config-key-chain)# key <NUM> | <NUM> – номер-идентификатор ключа в связке ключей, может принимать значение [1..255]. |
| 2.2.3 | Привязать к созданному ключу ключ-строку. | esr(config-key-chain-key)# key-string ascii-text { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> } | <CLEAR-TEXT> – строка длиной от 8 до 16 символов; <ENCRYPTED-TEXT> – зашифрованный пароль размером от 8 байт до 16 байт (от 16 до 32 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...). |
| 2.2.4 | Установить период времени, в течение которого данный ключ может использоваться для аутентификации исходящих пакетов (необязательно). | esr(config-keychain-key)# send-lifetime <TIME_B> <DAY_B> <MONTH_B> <YEAR_B> <TIME_E> <DAY_E> <MONTH_E> <YEAR_E> | <TIME_B> – устанавливаемое время начала действия ключа, задаётся в виде HH:MM:SS, где: HH – часы, принимает значение [0..23]; MM – минуты, принимает значение [0 .. 59]; SS – секунды, принимает значение [0 .. 59]. <DAY_B> – день месяца начала действия ключа, принимает значения [1..31]; <MONTH_B> – месяц начала использования ключа, принимает значения [January/February/March/April/May/June/July/August/September/October/November/December]; <YEAR_B> – год начала использования ключа, принимает значения [2001..2037]; <TIME_E> – устанавливаемое время окончания действия ключа, задаётся в виде HH:MM:SS, где: HH – часы, принимает значение [0..23]; MM – минуты, принимает значение [0 .. 59]; SS – секунды, принимает значение [0 .. 59]. <DAY_E> – день месяца окончания действия ключа, принимает значения [1..31]; <MONTH_E> – месяц окончания действия ключа, принимает значения [January/February/March/April/May/June/July/August/September/October /November/December]; <YEAR_E> – год окончания действия ключа, принимает значения [2001..2037]. |
| 2.2.5 | Установить период времени, в течение которого данный ключ может использоваться для аутентификации входящих пакетов (необязательно). | esr(config-keychain-key)# accept-lifetime <TIME_B> <DAY_B> <MONTH_B> <YEAR_B> <TIME_E> <DAY_E> <MONTH_E> <YEAR_E> | <TIME_B> – устанавливаемое время начала действия ключа, задаётся в виде HH:MM:SS, где: HH – часы, принимает значение [0..23]; MM – минуты, принимает значение [0 .. 59]; SS – секунды, принимает значение [0 .. 59]. <DAY_B> – день месяца начала действия ключа, принимает значения [1..31]; <MONTH_B> – месяц начала использования ключа, принимает значения [January/February/March/April/May/June/July/August/September/October/November/December]; <YEAR_B> – год начала использования ключа, принимает значения [2001..2037]; <TIME_E> – устанавливаемое время окончания действия ключа, задаётся в виде HH:MM:SS, где: HH – часы, принимает значение [0..23]; MM – минуты, принимает значение [0 .. 59]; SS – секунды, принимает значение [0 .. 59]. <DAY_E> – день месяца окончания действия ключа, принимает значения [1..31]; <MONTH_E> – месяц окончания действия ключа, принимает значения [January/February/March/April/May/June/July/August/September/October /November/December]; <YEAR_E> – год окончания действия ключа, принимает значения [2001..2037]. |
| 2.2.6 | Вернуться в общий режим конфигурирования и привязать ранее созданную связку ключей к сервису SLA. | esr(config)# ip sla key-chain <KEYCHAIN> | <KEYCHAIN> – идентификатор связки ключей, задается строкой длиной до 16 символов. |
| 2.2.7 | Перейти в режим конфигурирования ранее созданного SLA-теста и установить необходимый ключ из связки ключей, указав его номер. | esr(config-sla-test)# control-phase authentication key-id <NUM> | <NUM> – номер-идентификатор ключа в связке ключей, может принимать значение [1..255]. |
| 3 | Указать порт, на который будут направляться пакеты для аутентификации в ходе контрольной фазы (необязательно). | esr(config-sla-test)# control-phase destination-port <PORT> | <PORT> – номер UDP-порта, может принимать значение [1..65535]. |
| 4 | Указать порт, с которого будут отправляться пакеты для аутентификации в ходе контрольной фазы (необязательно). | esr(config-sla-test)# control-phase source-port <PORT> | <PORT> – номер UDP-порта, может принимать значение [1..65535]. |
| 5 | Установить периодичность попыток повторного прохождения контрольной фазы в случае её неудачи. | esr(config-sla-test)# control-phase retry <TIME> | <TIME> – интервал между попытками, может принимать значение [1..86400] секунд. |
| 6 | Установить максимальное время ожидания ответного пакета аутентификации от удаленной стороны в ходе контрольной фазы. | esr(config-sla-test)# control-phase timeout <TIME> | <TIME> – время ожидания, может принимать значение [1..86400] секунд. |
| Далее необходимо симметрично настроить параметры аутентификации на удаленном маршрутизаторе (принимающая сторона). | |||
| 7 | Перейти в режим конфигурирования сервиса SLA-responder. | esr(config)# ip sla responder [ vrf <VRF> ] | <VRF> – имя экземпляра VRF, задаётся строкой длиной до 31 символа. При указании данного параметра, SLA-responder включается в указанном VRF. |
| 8 | Установить максимальное время ожидания следующего тестового пакета (необязательно). | esr(config-sla-responder)# timeout <TIME> | <TIME> – время ожидания следующего пакета, может принимать значение [1..4294967295] миллисекунд. |
| 9 | Установить тип алгоритма, который будет использоваться при хешировании ключей аутентификации. | esr(config-sla-responder)# authentication algorithm <ALGORITHM> | <ALGORITHM> – алгоритм хеширования, принимает значения [sha-256, hmac-sha-256]. |
| 10 | Задать ключ, который будет использоваться для аутентификации приходящих запросов от SLA-agent. Может быть использован один из двух видов ключей аутентификации: ключ-строка, указываемая непосредственно в режиме конфигурирования SLA-responder, и предварительно сконфигурированная связка ключей (key-chain). | ||
| 10.1 | При использовании ключ-строки установить ее непосредственно в режиме конфигурирования SLA-responder. | esr(config-sla-responder)# authentication key-string ascii-text { <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> } | <CLEAR-TEXT> – строка длиной от 8 до 16 символов; <ENCRYPTED-TEXT> – зашифрованный пароль размером от 8 байт до 16 байт (от 16 до 32 символов) в шестнадцатеричном формате (0xYYYY...) или (YYYY...). |
| 10.2.1 | При использовании связки ключей необходимо вернуться в общий режим конфигурирования, а затем создать новую связку ключей. Процесс создания повторяет создание связки на тестирующем маршрутизаторе и описан в рамках шагов 2.2.1 - 2.2.5 данного алгоритма. | ||
| 10.2.2 | Привязать ранее созданную связку ключей к SLA-responder. | esr(config-sla-responder)# authentication key-chain <KEYCHAIN> | <KEYCHAIN> – идентификатор связки ключей, задается строкой длиной до 16 символов. |
| Scroll Pagebreak |
|---|
Пример конфигурации UDP-теста с аутентификацией по ключ-строке
...
Настройка пороговых значений
Для настройки реакции SLA-теста на определенные характеристики канала связи предусмотрен механизм активного реагирования на параметры thresholds.
Реагирование на качество канала связи может осуществляться по трём основных параметрам:
- Delay – измерение задержки между эталонным показателем интервала передачи очередного тестового пакета;
- Losses – измерение количества утерянных тестовых пакетов среди общего количества переданных пакетов;
- Jitter – измерение «дрожания» в канале, т. е. разброса во времени прохождения тестовых пакетов.
Для конфигурирования доступна настройка верхнего (high) и нижнего (low) пороговых значений для каждого из представленных параметров. Каждый из параметров может быть установлен как для одностороннего направления (forward/reverse), так и для двухстороннего (two-way).
Механизм активного изменения состояния SLA-теста при установленных пороговых значениях представлен на примере отслеживания показателя Delay с графиком значений величины во времени:
| Событие | Описание |
|---|---|
| 1 | Первичное превышение верхнего порогового значения. Инициируется смена состояния SLA-теста на «Fail», отображается информационное сообщение о превышении установленного порога. |
| 2 | Повторное превышение верхнего порогового значения. Состояние SLA-теста неизменно (Fail), информационных сообщений не отображается. Для восстановления состояния теста ожидается снижение величины до значений меньших, чем установленный порог Low. |
| 3 | Понижение отслеживаемой величины до значений ниже установленного порога Low. Инициируется смена состояния SLA-теста на «Success», отображается информационное сообщение о нормализации показателя. |
| 4 | Очередная смена состояния SLA-теста, вызванная пересечением значения верхнего порога и предварительно нормализованным пересечением нижнего порога. |
Scroll Pagebreak
Пример конфигурации icmp-jitter SLA-теста с thresholds по показателю delay:
| Блок кода |
|---|
R-sender# show running-config sla
ip sla
ip sla logging delay
ip sla logging error
ip sla logging status
ip sla test 1
icmp-jitter 198.18.0.100 source-ip 198.18.0.1 num-packets 150
thresholds delay high 15
thresholds delay low 8
thresholds delay forward high 10
thresholds delay forward low 5
thresholds delay reverse high 10
thresholds delay reverse low 5
enable
exit
ip sla schedule all life forever start-time now
|
конфигурации icmp-jitter SLA-теста с thresholds по показателю delay:
| Блок кода |
|---|
R-sender# show running-config sla
ip sla
ip sla logging delay
ip sla logging error
ip sla logging status
ip sla test 1
icmp-jitter 198.18.0.100 source-ip 198.18.0.1 num-packets 150
thresholds delay high 15
thresholds delay low 8
thresholds delay forward high 10
thresholds delay forward low 5
thresholds delay reverse high 10
thresholds delay reverse low 5
enable
exit
ip sla schedule all life forever start-time now
|
| Примечание |
|---|
Нижний порог (low) допускается не устанавливать. В таком случае он принимается равным верхнему, и нормализация характеристики будет засчитываться при снижении значений до показателей ниже установленного уровня. |
Измерение характеристик канала связи
Механизм IP-SLA позволяет производить замеры как двухсторонних (two-way/round), так и односторонних (forward/reverse) характеристик канала связи.
После первичной настройки IP-SLA-тестов и запроса статистики замеров может возникнуть ситуация, в которой односторонние характеристики в прямом и обратном направлениях равны друг другу, а также являются половиной от двухсторонних характеристик. Причиной такого поведения чаще всего является несоответствие вычисленной односторонней характеристики критериям проверки механизма IP-SLA.
Для корректного измерения односторонних параметров существует несколько обязательных критериев:
- Оба узла (SLA-пробер и ответчик) должны быть синхронизованы по NTP;
- Суммарное отклонение от NTP на обоих узлах не должно превышать значение двухсторонней характеристики;
- Значение односторнней характеристики не дожно быть меньше 0, а также превышать значение двухсторонней характеристики.
Scroll Pagebreak
Только при соблюдении данных критериев можно ожидать корректное вычисление всех характеристик канала передачи данных.
| Блок кода |
|---|
R-sender# show ntp peers
Clock is synchronized, stratum 5, reference is 192.168.32.1
remote vrf refid st t when poll reach delay offset jitter
- ---------------------------------------------- ---------- --------------- -- - ---- ---- ----- -------- -------- --------
* 192.168.32.1 172.16.5.63 4 s 10 16 255 0.183 -2.314 0.711
R-sender# show ip sla test statistics 2
Test number: 2
Description: --
Test status: Successful
Transmitted packets: 100
Lost packets: 1 (1.00%)
Lost packets in forward direction: 1 (1.00%)
Lost packets in reverse direction: 0 (0.00%)
One-way delay forward min/avg/max: 23.19/24.61/30.57 milliseconds
One-way delay reverse min/avg/max: 46.26/47.25/55.28 milliseconds
One-way jitter forward: 2.77 milliseconds
One-way jitter reverse: 0.92 milliseconds
Two-way delay min/avg/max: 70.26/71.85/80.03 milliseconds
Two-way jitter min/avg/max: 2.01/3.02/3.92 milliseconds
Duplicate packets: 0
Out of sequence packets in forward direction: 0
Out of sequence packets in reverse direction: 0
Number of successes: 3 (100.00%)
Number of failures: 0 (0.00%)
|
| Примечание |
| Нижний порог (low) допускается не устанавливать. В таком случае он принимается равным верхнему, и нормализация характеристики будет засчитываться при снижении значений до показателей ниже установленного уровня. |
