...
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc |
| Scroll Pagebreak |
|---|
Создать и настроить соответствующим образом медиаресурс:
...
Таймеры SIP-сессий (RFC 4028)Якорь rfc_4028 rfc_4028
| rfc_4028 | |
| rfc_4028 |
Использование таймеров SIP-сессий (RFC 4028) предназначено для контроля состояния сеансов связи и предотвращения зависания разговорных сессий, в случае возникновения каких-либо проблем, например с сетью.
...
Описание всех команд для настройки таймеров SIP-сессий приведено в разделе Настройки SIP-профиля Справочника команд CLI.
| Scroll Pagebreak |
|---|
Пример настройки
Задача:
Включить поддержку таймеров SIP-сессий на транке TRUNK_2 с параметрами Session Expires – 120, Min SE – 120, Refresher – UAS. На транке TRUNK_1 таймеры не используются.
...
| Блок кода | ||
|---|---|---|
| ||
vesbc# vesbc# configure vesbc(config)# esbc #Создать SIP-профиль NEW_SIP_PROFILE: vesbc(config-esbc)# sip profile NEW_SIP_PROFILE #Включить поддержку таймеров SIP-сессий (RFC4028): vesbc(config-esbc-sip-profile)# session timer enable vesbc(config-esbc-sip-profile)# #Настроить минимальный период контроля сессии 120 секунд: vesbc(config-esbc-sip-profile)# session timer min-se 120 vesbc(config-esbc-sip-profile)# #Настроить запрашиваемый период контроля сессии 150 секунд: vesbc(config-esbc-sip-profile)# session timer session-expires 150 vesbc(config-esbc-sip-profile)# #Настроить сторону обновления сессии: vesbc(config-esbc-sip-profile)# session timer refresher uas vesbc(config-esbc-sip-profile)# vesbc(config-esbc-sip-profile)# exit vesbc(config-esbc)# #Привязать SIP-профиль к транку TRUNK_2: vesbc(config-esbc)# trunk sip TRUNK_2 vesbc(config-esbc-trunk-sip)# sip profile NEW_SIP_PROFILE vesbc(config-esbc-trunk-sip)# #Применить и подтвердить изменения: vesbc(config-esbc-trunk-sip)# do commit Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds. vesbc(config-esbc-trunk-sip)# do confirm Configuration has been confirmed. Commit timer canceled. |
| Scroll Pagebreak |
|---|
При исходящем вызове в транк TRUNK_2, в сообщение INVITE будут добавлены заголовки в соответствии с настройкой. Если сторона Б также поддерживает RFC 4028, то будет включен контроль сессии:
...
Т. к. refresher=uas, то в данном примере , сторона Б будет отправлять сообщения UPDATE каждые 60 сек. Если по истечении 90 сек. от стороны Б не будет получено сообщение UPDATE, вызов будет разрушен (ESBC отправит BYE в обе стороны).
| Примечание |
|---|
При использовании таймеров SIP-сессий на одном из плеч вызова, запросы re-INVITE или UPDATE, полученные от удаленной стороны, в рамках контроля сессии будут передаваться на второе плечо, независимо от настроек таймеров на этом плече. |
| Scroll Pagebreak |
|---|
Транзит сообщений ISUP для работы в режиме SIP-T/SIP-I
...
Т. к. используется транскодирование, то ESBC самостоятельно обрабатывает INFO, отправляет 200 ОК.
Управление безопасностью системыЯкорь security security
| security | |
| security |
...
Использовать RADIUS-серверы 192.168.113.200 (основной) и 192.168.113.201 (резервный) для аутентификации регистраций абонентов, поступающих на абонентский интерфейс USERS_VIA_RADIUS в режиме RFC5090-no-challenge.
...
| Блок кода |
|---|
vesbc(config)# radius-server host 192.168.113.201
vesbc(config-radius-server)# key ascii-text password
vesbc(config-radius-server)# source-address 192.168.113.207
vesbc(config-radius-server)# usage voip
#Указываем более низкий приоритет, чем у основного сервера. По умолчанию приоритет 1. Чем меньше значение, тем приоритетнее сервер.
vesbc(config-radius-server)# priority 100
vesbc(config-radius-server)# exit |
...
При недоступности RADIUS-сервера 192.168.113.200, после таймаута , будет отправлено сообщение Access-Request будет отправлено на резервный RADIUS-сервер 192.168.113.201:
...
Локальная аутентификация на ESBC используется для аутентификации клиентов, используя учётные данные, привязанные к транку ESBC.
...
1. Настроить IP-адрес на интерфейсе в сторону SSW:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# interface gigabitethernet 1/0/1 vesbc(config-if-gi)# description "SSW" vesbc(config-if-gi)# ip address 192.168.16.113/24 vesbc(config-if-gi)# ip firewall disable |
...
При отсутствии регистраций направление будет считаться недоступным.
| Scroll Pagebreak |
|---|
Схема работы:
Алгоритм настройки транка для работы функции:
...
Для решения задачи на ESBC нужно настроить транк для Softswitch и транк с клиентской регистрацией для IP-ATC провайдера.
| Scroll Pagebreak |
|---|
Решение:
Порядок конфигурирования ESBC:
...
Подробное описание команд настройки профиля учётных данных на ESBC представлено в настройках профиля учетных данных в CLI.
| Информация |
|---|
В один профиль можно добавить до 24 номеров. |
8. Создать ААА профиль с созданным профилем учётных данных:
| Блок кода |
|---|
vesbc# vesbc# config vesbc(config)# esbc vesbc(config-esbc)# aaa profile AAA_PROFILE vesbc(config-aaa-profile)# credential local profile CREDENTIAL_PROFILE |
9. Создать SIP-транк в сторону IP-ATC и привязать к нему настроенный ААА профиль, а так же также выданный провайдером домен:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# trunk sip TRUNK_IP vesbc(config-esbc-trunk-sip)# sip transport TRANSPORT_IP vesbc(config-esbc-trunk-sip)# aaa profile AAA_PROFILE vesbc(config-esbc-trunk-sip)# remote address 192.168.16.65 vesbc(config-esbc-trunk-sip)# remote port 5060 vesbc(config-esbc-trunk-sip)# media resource 0 MEDIA_IP vesbc(config-esbc-trunk-sip)# domain DOMAIN.loc |
...
11. Создать таблицу маршрутизации и добавить в него нее правила, по которым вызовы, приходящие с SSW, будут маршрутизироваться на IP-ATC:
...
13. Создать таблицу маршрутизации и добавить в него нее правила, по которым вызовы, приходящие с IP-ATC, будут маршрутизироваться на SSW:
...
14. Привязать созданную таблицу маршрутизации к транку, смотрящему в сторону IP-ATC:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# trunk sip TRUNK_IP vesbc(config-esbc-trunk-sip)# route-table TO_SSW |
15. На транке, смотрящем на IP-ATC, задать параметры регистрации и включить клиентскую регистрацию:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# trunk sip TRUNK_IP #Выбираем время, на которое будет регистрироваться транк (по умолчанию 3600 секунд): vesbc(config-esbc-trunk-sip)# registration expires 900 #Выбираем время, через которое начнётся повторная отправка регистрации после неудачной попытки (по умолчанию 60 секунд): vesbc(config-esbc-trunk-sip)# registration retry-after 40 #Включаем режим клиентской регистрации на транке: vesbc(config-esbc-trunk-sip)# registration mode client |
...
| Блок кода |
|---|
vesbc# show esbc trunks sip TRUNK_IP registration Registration type: Client Total registrations: 1 Active registrations: 1 AOR Contact Status Expires Expires in -------------------- ------------------------------ -------------- ---------- ---------- 100@DOMAIN.loc sip:100@192.168.16.113:5061 Registered 900 867 |
После применения конфигрурации с транка отправится запрос регистрации (REGISTER) на IP-ATC провайдера. Если придёт ответ, требующий аутентификацию (401,407), то ESBC использует использует локальную аутентификацию запросов и ответит на него, используя данные из профиля учётных данных. После успешной регистрации через транк смогут проходить транка, исходящие вызовы только с с него возможны на любые номера только с зарегистрированного номера. А входящие Входящие вызовы будут обработаны с любого номера только на зарегистрированный номер.
| Scroll Pagebreak |
|---|
Пример работы:
| Scroll Pagebreak |
|---|
Настройка NAT
| Якорь | ||||
|---|---|---|---|---|
|
NAT (Network Address Translation — «преобразование сетевых адресов») — это технология, которая позволяет преобразовывать локальные IP-адреса внутренней сети в один или несколько глобальных IP-адресов и обратно. NAT обеспечивает механизм подключения областей с приватными адресами к внешним областям, в которых используются уникальные в глобальном масштабе зарегистрированные адреса. Кроме того, NAT осуществляет преобразование портов — то есть меняет номера портов в пакетах данных, что помогает однозначно сопоставлять исходящие и входящие соединения.
В данном разделе будут описаны различные функции для работы с NAT, а также настройки ESBC для его обхода, такие как:
- Настройка NAT comedia-mode для прохождения медиатрафика через устройства NAT;
- Настройка Public-IP;
- Настройка внешнего STUN-сервера;
- Настройка локального STUN-сервера.
...
Механизм NAT comedia-mode используется в случе том случае, когда встречное устройство находится за NAT.
...
- flexible — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в . В случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток продолжает транслироваться;
- on — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в . В случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток перестает транслироваться.
Принцип работы.
При включении режима nat comedia-mode on/flexible отправка и получение сообщений сигнализации SIP осуществляется с/на IP-адрес и порт, указанные в настройках транка.
Оправка RTP будет осуществляться на IP-адрес и порт, с которого был получен первый RTP-пакет от встречной стороны. До получения RTP от встречной стороны, медиатрафик не будет передаваться от ESBC в эту сторону.
| Scroll Pagebreak |
|---|
Настройка и принцип работы nat comedia-mode для абонентов (user-interface)
...
При включении режима nat comedia-mode on/flexible отправка сообщений сигнализации сигнализации SIP осуществляется симметрично (на IP-адрес и порт, с которого был принят запрос) в случае, если клиент в инициирующем запросе не использовал параметр RPORT.
Отправка сообщений сигнализации SIP на зарегистрированного абонента будет осуществляться на IP-адрес и порт, с которого был принят запрос REGISTER, а не на данные абонента, указанные в заголовке Contact.
...
Данный механизм используется для предотвращения ситуации, в которой абонент за NAT не начнет первым отправку RTP-пакетов в сторону ESBC, и соответственно ESBC не не начнет отправку встречного потока RTP к абоненту.
| Scroll Pagebreak |
|---|
Примеры:
1. Замена атрибутов direction в offer sdp:
...
Настройка используется в случае, когда ESBC не имеет публичного IP-адреса и выход в публичную сеть осуществляется через NAT. В таком случае в качестве Public IP указывается адрес WAN-интерфейса NAT для подстановки в сигнальные сообщения протокола SIP.
Public IP можно можно настроить для настроить для абонентского интерфейса, транка и транковой группы.
| Информация |
|---|
Если Public IP настроен в транке и в транковой группе, в которую входит этот транк, то будет использоваться Public IP из настроек транка. |
...
Внешний STUN-сервер можно можно использовать в настройках абонентского интерфейса, транка и транковой группы.
...
| Блок кода | ||
|---|---|---|
| ||
#Настройка внешнего STUN-сервера:
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# stun server external EXTERNAL_STUN
vesbc(config-esbc-stun-server-ext)# remote address 203.0.113.10
#Интервал отправки запросов на STUN-сервер = 60 секунд:
vesbc(config-esbc-stun-server-ext)# keepalive interval 60
vesbc(config-esbc-stun-server-ext)# exit
#Добавление STUN-сервера в настройки транка:
vesbc(config-esbc)# trunk sip TRUNK_B
vesbc(config-esbc-trunk-sip)# stun server EXTERNAL_STUN
#Применение и подтверждение изменений:
vesbc(config-esbc-stun-trunk-sip)# do commit
Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds.
vesbc(config-esbc-stun-trunk-sip)# do confirm
Configuration has been confirmed. Commit timer canceled |
...
При входящем вызове из транка TRUNK_B ESBC также отправит запросы на STUN-сервер с RTP и RTCP-порта для согласования обмена медиатрафиком перед отправкой SDP-Answer инициатору.
| Scroll Pagebreak |
|---|
Настройка локального STUN-сервера
| Якорь | ||||
|---|---|---|---|---|
|
...
Когда абонент, находящийся за NAT, отправит STUN-запрос, который будет получен ESBC с адреса 20.20.20.1:15060 на адрес ESBC и порт локального STUN-сервера (30.30.30.1:13478), в ответе ESBC укажет 20.20.20.1:15060 в качестве Reflexive Address.
| Scroll Pagebreak |
|---|
Настройка QoSЯкорь qos qos
| qos | |
| qos |
...
Реализация ограничения входящего трафика поддерживается для следующих объектов:
...
При одновременном использовании max in cps и max in rps в настройках транка, транковой группы или абонентского интерфейса, максимальным порогом для всех входящих запросов будет являться значение, настроенное в max in rps. При этом ограничение для входящих запросов INVITE можно уменьшить отдельно настройкой max in cps.
...
| Блок кода | ||
|---|---|---|
| ||
vesbc#
vesbc# config
vesbc(config)# esbc
#Переход в настройки транка:
vesbc(config-esbc)# trunk sip TRUNK
vesbc(config-esbc-trunk-sip)#
#Установка ограничения входящего максимального количества CPS для транка — 50:
vesbc(config-esbc-trunk-sip)# max in cps 50
vesbc(config-esbc-trunk-sip)# exit
#Переход в настройки транк-группы:
vesbc(config-esbc)# trunk-group TRUNKGROUP
# Добавление транка TRUNK в состав транк-группы:
vesbc(config-esbc-trunk-group)# trunk 0 TRUNK
#Установка ограничения входящего максимального количества CPS для транк-группы — 10:
vesbc(config-esbc-trunk-group)# max in cps 10
#Применение и подтверждение изменений:
vesbc(config-esbc-trunk-group)# do commit
vesbc(config-esbc-trunk-group)# do confirm
|
...
Пример работы ограничения количества SIP-сообщений в секунду в рамках одной сессии сессии на абонентском интерфейсе:
| Блок кода | ||
|---|---|---|
| ||
vesbc# vesbc# config vesbc(config)# esbc #Переход в настройки абонентского интерфейса: vesbc(config-esbc)# user-interface sip USER_IFACE vesbc(config-esbc-user-interface)# #Ограничение максимального количества SIP-сообщений в секунду в рамках одной сессии в секунду: vesbc(config-esbc-user-interface-sip)# max in session pps 30 #Применение и подтверждение изменений: vesbc(config-esbc-user-interface)# do commit vesbc(config-esbc-user-interface)# do confirm |
После применения изменений , количество SIP-сообщений, проходящих через абонентский интерфейс USER_IFACE в секунду, в рамках одной сессии, не может быть больше 30. При достижении лимита сессия будет завершена.
| Scroll Pagebreak |
|---|
...
После применения изменений количество запросов SUBSCRIBE, проходящих через абонентский интерфейс USER_IFACE, не может быть больше 50. Все запросы SUBSCRIBE, поступающие после превышения лимита, будут проигнорированы.
| Scroll Pagebreak |
|---|
Пример работы ограничения количества общего количества активных подписок на абонентском интерфейсе:
...
Описание всех команд для контроля исходящего трафика приведено в разделах для каждого объекта в CLI:
Реализация ограничения исходящего трафика поддержана на следующих объектах:
...
При вводе show esbc call-flow sip info <SESSION_ID> будет доступна диаграмма отдельной сессии.
Пример вывода статистики:, см. ниже.
| Блок кода | ||
|---|---|---|
| ||
#Просмотр диаграммы отфильтрованной call-flow сессий:
vesbc# show esbc call-flow sip info 50300000000000c
ESBC call flow 50300000000000c
Time Leg A Direction Leg B
--------------- -------------------------------------- --------- ---------------------------------------
2025-10-08 (UDP SDP) INVITE --->
09:50:25.976 sip:1142@192.168.113.177:5090 SIP/2.0
(+00:00:00.000)
2025-10-08 (UDP) SIP/2.0 100 Trying <---
09:50:25.976
(+00:00:00.000)
2025-10-08 ---> (UDP SDP) INVITE
09:50:25.992 sip:1142@192.168.113.172:5070 SIP/2.0
(+00:00:00.016)
2025-10-08 <--- (UDP) SIP/2.0 100 Trying
09:50:26.003
(+00:00:00.027)
2025-10-08 <--- (UDP) SIP/2.0 180 Ringing
09:50:26.046
(+00:00:00.070)
2025-10-08 (UDP) SIP/2.0 180 Ringing <---
09:50:26.048
(+00:00:00.072)
2025-10-08 <--- (UDP SDP) SIP/2.0 200 OK
09:50:27.544
(+00:00:01.568)
2025-10-08 (UDP SDP) SIP/2.0 200 OK <---
09:50:27.557
(+00:00:01.581)
2025-10-08 (UDP) ACK --->
09:50:27.600 sip:1142@192.168.113.177:5090;transport=
(+00:00:01.624) udp SIP/2.0
2025-10-08 ---> (UDP) ACK sip:1142@192.168.113.172:5070
09:50:27.603 SIP/2.0
(+00:00:01.627)
2025-10-08 <--- (UDP) BYE
09:50:44.673 sip:1140@192.168.113.177:5071;transport=
(+00:00:18.697) udp;line=83b0f9ea4622375be3232f3c892b024
0 SIP/2.0
2025-10-08 (UDP) BYE <---
09:50:44.675 sip:1140@192.168.113.170;transport=udp
(+00:00:18.699) SIP/2.0
2025-10-08 (UDP) SIP/2.0 200 Ok --->
09:50:44.700
(+00:00:18.724)
2025-10-08 ---> (UDP) SIP/2.0 200 OK
09:50:44.703
(+00:00:18.727)
vesbc# |
...
- IP black-list:
- IP address — заблокированный IP-адрес;
- Ban reason — причина блокировки;
- AOR;
- AOR error count — количество ошибок AOR;
- Blocking timeout in minutes — оставшееся время блокировки в минутах;
- Time of blocking — время блокировки.
Scroll Pagebreak
- AOR:
- AOR;
- Ban reason — причина блокировки;
- AOR error count — количество ошибок AOR;
- Forgive time in minutes — оставшееся время блокировки в минутах;
- Time of blocking — время блокировки.
- SIP user
- AOR;
- Ban reason — причина блокировки;
- UA error count — количество ошибок UA;
- Forgive time in minutes — оставшееся время блокировки в минутах;
- Time of blocking — время блокировки.
- User-agent black-list:
- UA;
- Ban reason — причина блокировки;
- UA error count — количество ошибок UA;
- Forgive time in minutes — оставшееся время блокировки в минутах;
- Time of blocking — время блокировки.
...
Поддержана возможность просматривать белый список IPсписок IP-адресов, AOR и User-Agent командой show esbc white-list в CLI и, для IP-адресов, на странице Мониторинг → Списки доступа → Белый список в WEB.
...
- Trunk — имя транка;
- Trunk type — тип транка;
- Status — статус транка (принимает значения Uncontrolled, Available или Not available, в зависимости от настройки SIP профиля и реального состояния транка);
- Last change time — время изменения статуса транка.
- Registration type — режим регистрации транка(принимает значения None или Client)
- Registration count (active/all) — краткое отображение активных регистраций (active) и всех номеров (all), которые присутствуют в привязанном к транку профилю учётных данных. Отображается только при включении клиентской регистрации транка.
Scroll Pagebreak
Список зарегистрированных абонентов
...
Данные выводятся в виде гистограммы. При вызове команды отображается 3 графика – – за последнюю минуту, час и 3 дня. Опция interval позволяет отобразить график для конкретного интервала времени.
| Примечание |
|---|
График отображает значения метрики от 10 и выше. Вертикальная ось графика автоматически подстраивается под диапазон отображаемых данных. |
| Scroll Pagebreak |
|---|
Пример 1.
Схема:
Из транка UAC в транк UAS через ESBC поступает 10 вызовов каждую секунду длительностью 25 секунд.
| Блок кода | ||
|---|---|---|
| ||
#Просмотр истории максимальной статистики активных вызовов:
vesbc# show esbc history active-calls max
CALLS ACTIVE
Active calls, quantity
300 |
270 |
240 |###########################
210 |##############################
180 |#################################
150 |####################################
120 |#######################################
90 |##########################################
60 |#############################################
30 |################################################
0 |....|....|....|....|....|....|....|....|....|....|....|....|
0 5 10 15 20 25 30 35 40 45 50 55 60
Time, seconds
CALLS ACTIVE
Active calls, quantity
100 |
90 |
80 |
70 |
60 |
50 |
40 |
30 |
20 |
10 |
0 |....|....|....|....|....|....|....|....|....|....|....|....|
0 5 10 15 20 25 30 35 40 45 50 55 60
Time, minutes
CALLS ACTIVE
Active calls, quantity
100 |
90 |
80 |
70 |
60 |
50 |
40 |
30 |
20 |
10 |
0 |....|....|....|....|....|....|....|....|....|....|....|....|....|....|..
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70
Time, hours
#Просмотр истории максимальной статистики входящих попыток вызова за последнюю минуту на транке UAC:
vesbc# show esbc history call-attempts-incoming max interval seconds trunk sip
UAC
INCOMING CALL ATTEMPS
Call attemps, quantity
100 |
90 |
80 |
70 |
60 |
50 |
40 |
30 |
20 |
10 |################################################
0 |....|....|....|....|....|....|....|....|....|....|....|....|
0 5 10 15 20 25 30 35 40 45 50 55 60
Time, seconds
#Просмотр истории максимальной статистики исходящих попыток вызова за последнюю минуту на транке UAS:
vesbc# show esbc history call-attempts-outgoing max interval seconds trunk sip
UAS
OUTGOING CALL ATTEMPS
Call attemps, quantity
100 |
90 |
80 |
70 |
60 |
50 |
40 |
30 |
20 |
10 |################################################
0 |....|....|....|....|....|....|....|....|....|....|....|....|
0 5 10 15 20 25 30 35 40 45 50 55 60
Time, seconds
#Просмотр истории максимальной статистики средней длительности вызова (ACD) за последний час:
vesbc# show esbc history average-call-duration max interval minutes
AVERAGE CALLS AVERAGE DURATION
Avg duration, sec
100 |
90 |
80 |
70 |
60 |
50 |
40 |
30 |
20 |#####
10 |######
0 |....|....|....|....|....|....|....|....|....|....|....|....|
0 5 10 15 20 25 30 35 40 45 50 55 60
Time, minutes |
| Scroll Pagebreak |
|---|
Пример 2.
Через абонентский интерфейс USERS_1 каждую секунду регистрируются 10 абонентов. Всего зарегистрировалось 500 абонентов.
...
Включение журналирования аварий происходит c помощью команды alarm enable journal esbc в CLI.
Данная команда без указания параметров включает весь набор аварий:
...
Для отображения только активных аварий используется команда команда show alarms brief active.
| Scroll Pagebreak |
|---|
Пример:
| Блок кода | ||
|---|---|---|
| ||
#Просмотр истории аварийных событий:
vesbc# show alarms brief
History Alarms
--------------
Severity Group Set time Clear time Description
-------- --------------- -------------------- -------------------- -----------------------------------
major esbc 2026-03-20 09:55:32 2026-03-20 10:01:32 Trunk(TRUNK_SSW_1) is unavailable
major esbc 2026-03-20 15:51:17 - Trunk(TRUNK_SSW_2) is unavailable
#Просмотр активных аварийных событий:
vesbc# show alarms brief active
History Alarms
--------------
Severity Group Set time Clear time Description
-------- --------------- -------------------- -------------------- -----------------------------------
major esbc 2026-03-20 15:51:17 - Trunk(TRUNK_SSW_2) is unavailable
|
Для удаления истории аварийных событий используется команда clear alarms в CLI.
| Примечание |
|---|
Аварии сохраняются локально. Для отправки уведомлений об авариях на удаленный хост необходимо настроить отправку аварийных SNMP-трапов |
Текст аварий и причины их нормализации представлены в таблице ниже.
Для удаления истории аварийных событий используется команда clear alarms в CLI.
| Примечание |
|---|
Аварии сохраняются локально. Для отправки уведомлений об авариях на удаленный хост необходимо настроить отправку аварийных SNMP-трапов. |
Текст аварий и причины их нормализации представлены в таблице ниже.
Авария | Текст аварии | Причины нормализации |
|---|---|---|
cdr-send-error | CDR alarm: | |
Авария | Текст аварии | Причины нормализации |
cdr-send-error | CDR alarm: failed to send to <main | reserve> ftp server | успешная отправка CDR на FTP-сервер |
cdr-write-error | CDR alarm: failed to write | успешная запись CDR |
general-max-calls-limit | Host <host_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80% 80 % от лимита |
general-max-cps-limit | Host <host_name> max cps limit reached | через 10 секунд после последней аварии |
general-max-rps-limit | Host <host_name> max rps limit reached | через 10 секунд после последней аварии |
media-resources | Session<session_id>: <Trunk/User interface><trunk_name/ui_name> media resources out | через 15 секунд после последней аварии ИЛИ при освобождении портов для RTP |
module-connection | Module <module_type> host <host_id> is down | при успешном добавлении модуля в диспетчер ESBC |
trunk-group-max-calls-limit | Trunk-Group <trunk_group_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80% 80 % от лимита |
trunk-group-max-cps-limit | Trunk-Group <trunk_group_name> max cps limit reached | через 10 секунд после последней аварии |
trunk-group-max-rps-limit | Trunk-Group <trunk_group_name> max rps limit reached | через 10 секунд после последней аварии |
trunk-max-calls-limit | Trunk <trunk_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80% 80 % от лимита |
trunk-max-cps-limit | Trunk <trunk_name> max cps limit reached | через 10 секунд после последней аварии |
trunk-max-rps-limit | Trunk <trunk_name> max rps limit reached | через 10 секунд после последней аварии |
trunk-unavailable | Trunk <trunk_name> is unavailable | при обновлении статуса транка на "Available" |
user-interface-max-calls-limit | User interface <ui_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80% 80 % от лимита |
user-interface-max-cps-limit | User interface <ui_name> max rps limit reached | через 10 секунд после последней аварии |
user-interface-max-rps-limit | User interface <ui_name> max cps limit reached | через 10 секунд после последней аварии |
...
- cdr-send-error — ошибки отправки CDR;
- cdr-write-error — ошибки записи CDR;
- general-max-calls-limit — превышение общего лимита вызовов;
- general-max-cps-limit — превышение общего лимита cps;
- general-max-rps-limit — превышение общего лимита rps;
- media-resources — отсутствие свободных медиаресурсов (портов для RTP);
- module-connection — перезапуск модулей ESBC;
- trunk-group-max-calls-limit — превышение лимита вызовов на транк-группе;
- trunk-group-max-cps-limit — превышение лимита cps на транк-группе;
- trunk-group-max-rps-limit — превышение общего лимита rps на транк-группе;
- trunk-max-calls-limit — превышение лимита вызовов на транке;
- trunk-max-cps-limit — превышение лимита cps на транке;
- trunk-max-rps-limit — превышение общего лимита rps на транке;
- trunk-unavailable — недоступность транка;
- user-interface-max-calls-limit — превышение лимита вызовов на user-interface;
- user-interface-max-cps-limit — превышение лимита cps на user-interface;
- user-interface-max-rps-limit — превышение общего лимита rps на user-interface;
- voip-block-aor — блокировки по AOR;
- voip-block-ip — блокировки по IP-адресу;
- voip-block-user-agent — блокировки по User-Agent;
- voip-block-sip-user — блокировки по SIP-User.
| Примечание |
|---|
При включении отправки SNMP-трапов командой snmpкомандой snmp-server enable traps esbc, трапы будут отправляться вне зависимости от включения журналирования аварий локально. |
Текст SNMP-трапов и причины их нормализации представлены в таблице ниже.
SNMP-трап | Текст SNMP-трапа | Причины нормализации |
|---|---|---|
cdr-send-error | CDR alarm: failed to send to <main | reserve> ftp server | успешная отправка CDR на FTP-сервер |
cdr-write-error | CDR alarm: failed to write | успешная запись CDR |
general-max-calls-limit | Host <host_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80% от лимита |
general-max-cps-limit | Host <host_name> max cps limit reached | через 10 секунд после последней аварии |
general-max-rps-limit | Host <host_name> max rps limit reached | через 10 секунд после последней аварии |
media-resources | Session<session_id>: <Trunk/User interface><trunk_name/ui_name> media resources out | через 15 секунд после последней аварии ИЛИ при освобождении портов для RTP |
module-connection | Module <module_type> host <host_id> is down | при успешном добавлении модуля в диспетчер ESBC |
trunk-group-max-calls-limit | Trunk-Group <trunk_group_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80 % от лимита |
trunk-group-max-cps-limit | Trunk-Group <trunk_group_name> max cps limit reached | через 10 секунд после последней аварии |
trunk-group-max-rps-limit | Trunk-Group <trunk_group_name> max rps limit reached | через 10 секунд после последней аварии |
trunk-max-calls-limit | Trunk <trunk_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80 % от лимита |
trunk-max-cps-limit | Trunk <trunk_name> max cps limit reached | через 10 секунд после последней аварии |
trunk-max-rps-limit | Trunk <trunk_name> max rps limit reached | через 10 секунд после последней аварии |
trunk-unavailable | Trunk <trunk_name> is unavailable | при обновлении статуса транка на "Available" |
user-interface-max-calls-limit | User interface <ui_name> max calls limit reached | через 10 секунд после последней аварии ИЛИ при снижении счетчика на 80% от лимита |
user-interface-max-cps-limit | User interface <ui_name> max rps limit reached | через 10 секунд после последней аварии |
user-interface-max-rps-limit | User interface <ui_name> max cps limit reached | через 10 секунд после последней аварии |
voip-block-aor | AOR <aor> has been banned | не нормализуются |
voip-block-ip | IP address <ip> has been banned | не нормализуются |
| voip-block-user-agent | User-Agent <user-agent> has been banned | не нормализуются |
| voip-block-sip-user | SIP user <aor> has been banned | не нормализуются |
...
| Примечание |
|---|
В отличие от аварий, SNMP-трапы передают уведомления о заблокированных объектах:
Для просмотра заблокированных объектов в CLI используется команда show esbc black-list. |
Конфигурирование удаленного хоста для отправки SNMP-уведомлений выполняется с помощью команды snmp-server host в CLI.
...
| Информация |
|---|
Запись "Номер вызываемого абонента при переадресации" создается только, при включенной локальной обработке 3xx обработке 3xx ответа в настройках sip profile. |
Хранение записей CDR осуществляется в локальном хранилище ESBC или на внешнем USB-накопителе.
...
Для получения наиболее подробной информации, при диагностики неисправностей, рекомендуется использовать уровень логирования debug.
| Scroll Pagebreak |
|---|
Пример настройки логирования на внешний syslog-сервер с уровнем debug:
...
| Примечание |
|---|
С целью исключения повышенной нагрузки на устройство, рекомендуется отключать логирование модулей ESBC (no debug all) сразу после получения логов, необходимых для анализа неисправности. |
...
Изменение количества модулейЯкорь count count
| count | |
| count |
...
При высокой нагрузке сигнальным SIP-трафиком наибольшую нагрузку на ядро CPU производит модуль sip worker, а при большом количестве одновременных вызовов (особенно в режиме транскодирования медиимедиа) — media worker.
Поэтому для установления баланса производительности, для многоядерных систем следует использовать оптимальное количество каждого из модулей, т. к. каждый дополнительный экземпляр модуля будет использовать ресурс дополнительного ядра CPU системы.
...
- Базовая настройка сети (конфигурация IP-адресов интерфейсов, настройка маршрутизации и т. д.).
- Настройка туннелирования (конфигурация PPTP/L2TP-сервера, и/или настройка PPTP/L2TP-туннелей).
- Настройка firewal firewall для прохождения протоколов туннелирования (разрешить TCP-порт 1723, протокол GRE(47) для PPTP и UDP-порты 500, 1701, 4500 и протоколы ESP (50) и GRE (47) для L2TP).
- Настройка транков и/или абонентских интерфейсов ESBC для работы через VPN.
...
| Блок кода |
|---|
vesbc# configure vesbc(config)# interface gigabitethernet 1/0/1 vesbc(config-if-gi)# description LAN vesbc(config-if-gi)# ip address 192.168.113.207/20 vesbc(config-if-gi)# exit vesbc(config)# interface gigabitethernet 1/0/2 vesbc(config-if-gi)# description WAN vesbc(config-if-gi)# ip address 10.30.101.150/24 vesbc(config-if-gi)# exit |
Выполнить настройку firewal firewall для разрешения прохождения протокола PPTP на интерфейс gigabitethernet 1/0/2:
| Блок кода |
|---|
vesbc(config)# security zone WAN vesbc(config-security-zone)# exit vesbc(config)# security zone-pair WAN self vesbc(config-security-zone-pair)# rule 10 vesbc(config-security-zone-pair-rule)# action permit vesbc(config-security-zone-pair-rule)# match protocol gre vesbc(config-security-zone-pair-rule)# enable vesbc(config-security-zone-pair-rule)# exit vesbc(config-security-zone-pair)# rule 20 vesbc(config-security-zone-pair-rule)# action permit vesbc(config-security-zone-pair-rule)# match protocol tcp vesbc(config-security-zone-pair-rule)# match destination-port port-range 1723 vesbc(config-security-zone-pair-rule)# enable vesbc(config-security-zone-pair-rule)# exit vesbc(config-security-zone-pair)# exit vesbc(config)# |
| Scroll Pagebreak |
|---|
Поместить интерфейс gigabitethernet 1/0/2 в зону безопасности WAN:
| Блок кода |
|---|
vesbc(config)# vesbc(config)# interface gigabitethernet 1/0/2 vesbc(config-if-gi)# security-zone WAN vesbc(config-if-gi)# exit vesbc(config)# |
...
| Блок кода | ||
|---|---|---|
| ||
vesbc(config)# remote-access pptp PPTP_SERVER vesbc(config-pptp-server)# authentication mode local #IP-адрес PPTP-сервера: vesbc(config-pptp-server)# local-address ip-address 20.20.20.1 #Диапазон IP-адресов, которые будут выдаваться PPTP-клиентам: vesbc(config-pptp-server)# remote-address address-range 20.20.20.5-20.20.20.6 #IP-адрес ESBC для организации подключения по протоколу PPTP: vesbc(config-pptp-server)# outside-address ip-address 10.30.101.150 vesbc(config-pptp-server)# security-zone VPN_USERS #Создание и настройка учетной записи клиента pptp_user: vesbc(config-pptp-server)# username pptp_user vesbc(config-ppp-user)# password ascii-text simplepass # Указать #Указать, какой именно IP-адрес из диапазона будет выдан клиенту pptp_user user: vesbc(config-ppp-user)# remote address 20.20.20.5 vesbc(config-ppp-user)# enable vesbc(config-ppp-user)# exit #Создание и настройка учетной записи клиента pptp_user2: vesbc(config-pptp-server)# username pptp_user2 vesbc(config-ppp-user)# password ascii-text simplepass2 # #Указать, Указать какой именно IP-адрес из диапазона будет выдан клиенту pptp_user2: vesbc(config-ppp-user)# remote address 20.20.20.6 vesbc(config-ppp-user)# enable vesbc(config-ppp-user)# exit vesbc(config-pptp-server)# enable vesbc(config-pptp-server)# exit vesbc(config)# |
| Scroll Pagebreak |
|---|
| Примечание |
|---|
Для использования подключенных PPTP-клиентов в качестве SIP-транков следует указывать IP-адрес, который будет выдаваться сервером PPTP каждому клиенту , в явном виде (команда команда remote address в конфигурации ppp-user). Иначе IP-адреса, выдаваемые PPTP-клиентам, будут выдаваться в случайном порядке из диапазона, указанного в настройках PPTP-сервера. В таком случае невозможно будет настроить SIP-транк до конкретного клиента, т. к. для работы в режиме транка требуется указание адреса встречной стороны. Для использования подключенных PPTP-клиентов в качестве SIP-абонентов, указывать IP-адрес в явном виде не требуется. |
...
| Блок кода | ||
|---|---|---|
| ||
esbc(config)# esbc vesbc(config-esbc)# media resource MEDIA_PPTP #Указать IP-адрес сервера PPTP: vesbc(config-esbc-media-resource)# ip address 20.20.20.1 vesbc(config-esbc-media-resource)# exit vesbc(config-esbc)# sip transport PPTP_1 #Указать IP-адрес сервера PPTP: vesbc(config-esbc-sip-transport)# ip address 20.20.20.1 vesbc(config-esbc-sip-transport)# port 5070 vesbc(config-esbc-sip-transport)# exit vesbc(config-esbc)# sip transport PPTP_2 #Указать IP-адрес сервера PPTP: vesbc(config-esbc-sip-transport)# ip address 20.20.20.1 vesbc(config-esbc-sip-transport)# port 5071 vesbc(config-esbc-sip-transport)# exit vesbc(config-esbc)# trunk sip PPTP_USER vesbc(config-esbc-trunk-sip)# sip transport PPTP_1 vesbc(config-esbc-trunk-sip)# media resource 1 MEDIA_PPTP #Указать IP-адрес PPTP-клиента pptp_user: vesbc(config-esbc-trunk-sip)# remote address 20.20.20.5 vesbc(config-esbc-trunk-sip)# remote port 5080 vesbc(config-esbc-trunk-sip)# exit vesbc(config-esbc)# trunk sip PPTP_USER2 vesbc(config-esbc-trunk-sip)# sip transport PPTP_2 vesbc(config-esbc-trunk-sip)# media resource 1 MEDIA_PPTP #Указать IP-адрес PPTP-клиента pptp_user2: vesbc(config-esbc-trunk-sip)# remote address 20.20.20.6 vesbc(config-esbc-trunk-sip)# remote port 5081 vesbc(config-esbc-trunk-sip)# exit |
| Scroll Pagebreak |
|---|
Выполнить настройку ESBC для транка TRUNK_1:
...
Настройка маршрутизации для транка PPTP_USER2 выполняется аналогично.
| Scroll Pagebreak |
|---|
Пример настройки PPTP-клиента для подключения SIP-транков
...
Организовать подключение в режиме PPTP-клиента к вышестоящему серверу и использовать это подключения в подключение в качестве SIP-транка.
IP-адрес сервера PPTP — 10.30.101.150
...
| Блок кода |
|---|
vesbc(config)# security zone PPTP_TENNEL vesbc(config-security-zone)# exit vesbc(config)# |
| Scroll Pagebreak |
|---|
Создать и настроить PPTP-туннель:
| Блок кода | ||
|---|---|---|
| ||
vesbc(config)# vesbc(config)# tunnel pptp 1 vesbc(config-pptp)# security-zone PPTP_TENNEL #Указать учетные данные пользователя pptp_user: vesbc(config-pptp)# username pptp_user password ascii-text simplepass #Указать IP-адрес PPTP-сервера: vesbc(config-pptp)# remote address 10.30.101.150 vesbc(config-pptp)# ignore default-route vesbc(config-pptp)# enable vesbc(config-pptp)# exit vesbc(config)# |
...
| Блок кода | ||
|---|---|---|
| ||
vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# media resource MEDIA_PPTP #Указать туннель pptp 1: vesbc(config-esbc-media-resource)# ip address interface pptp 1 vesbc(config-esbc-media-resource)# exit vesbc(config-esbc)# sip transport PPTP #Указать туннель pptp 1: vesbc(config-esbc-sip-transport)# ip address interface pptp 1 vesbc(config-esbc-sip-transport)# port 5080 vesbc(config-esbc-sip-transport)# exit vesbc(config-esbc)# trunk sip PPTP vesbc(config-esbc-trunk-sip)# sip transport PPTP vesbc(config-esbc-trunk-sip)# media resource 0 MEDIA_PPTP #Указать Remote IP PPTP-туннеля : vesbc(config-esbc-trunk-sip)# remote address 20.20.20.1 vesbc(config-esbc-trunk-sip)# remote port 5070 vesbc(config-esbc-trunk-sip)# exit vesbc(config-esbc)# |
...
| Блок кода |
|---|
vesbc# show tunnels status Tunnel Admin Link MTU Local IP Remote IP Last change State State (d,h:m:s) ---------------- ---------- ----- ------ ---------------- ---------------- ------------- pptp 1 Up Up 1500 20.20.20.5 20.20.20.1 00,00:13:35 |
| Scroll Pagebreak |
|---|
Выполнить настройку ESBC для транка TRUNK_1:
...
| Блок кода |
|---|
vesbc(config)# esbc vesbc(config-esbc)# route-table TO_TRUNK_1 vesbc(config-esbc-route-table)# rule 1 vesbc(config-esbc-route-table-rule)# action direct-to-trunk TRUNK_1 vesbc(config-esbc-route-table-rule)# exit vesbc(config-esbc-route-table)# exit vesbc(config-esbc)# trunk sip PPTP vesbc(config-esbc-trunk-sip)# route-table TO_TRUNK_1 vesbc(config-esbc-trunk-sip)# exit vesbc(config-esbc)# exit |
Scroll Pagebreak
Примеры настройки ESBC ESBC Якорь ESBC_set_examples ESBC_set_examples
| ESBC_set_examples | |
| ESBC_set_examples |
...
9. Создать таблицу маршрутизации и добавить туда в нее правила, по которым вызовы, приходящие с абонентов будут маршрутизироваться на SSW:
...
9. Создать таблицу маршрутизации и добавить туда в нее правила, по которым вызовы, приходящие с транкового шлюза, будут маршрутизироваться на SSW:
...
10. Создать таблицу маршрутизации и добавить туда в нее правила, по которым вызовы, приходящие с SSW, будут маршрутизироваться на транковый шлюз:
...
10. Создать таблицу маршрутизации и добавить туда в нее правила, по которым вызовы, приходящие с абонентов, будут маршрутизироваться на SSW:
| Блок кода |
|---|
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# route-table TO_SSW vesbc(config-esbc-route-table)# rule 0 vesbc(config-esbc-route-table-rule)# action direct-to-trunk TRUNK_SSW |
...



