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

Ключ

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

...

Предупреждение

Не рекомендуется использовать максимальное количество объектов конфигурации одновременно, это может повлиять на работоспособность системы.

Scroll Pagebreak

Расчет максимального количества контактов зарегистрированных абонентов для vESBC:   

Объем оперативной памяти (RAM) vESBC, GB

Количество контактов

3

4500

≥4

20000*(объем RAM - 3)

...

Примечание

По умолчанию вызовы с абонентского интерфейса без предварительной регистрации запрещены.

Примечание

С целью повышения безопасности, входящие запросы OPTIONS, поступающие в абонентский интерфейс будут игнорироваться. Для изменения поведения см. раздел Игнорирование OPTIONS.


Подробное описание параметров всех настроек можно найти в разделе разделе Настройки абонентского интерфейса справочника команд CLI.

...

...

Примечание

Cоздание транков с одинаковым SIP-транспортом и IP:Port разрешено только в случае, если отличается SIP-домен.

Примечание

С целью повышения безопасности, входящие запросы OPTIONS, поступающие в транк будут игнорироваться. Для изменения поведения см. раздел Игнорирование OPTIONS.

Scroll Pagebreak

Динамический режим транка
Якорь
sip_trunks_dynamic
sip_trunks_dynamic

...

RADIUS

1. Настроить RADIUS-сервер.

Пример конфигурации freeradius:

...

2. Задать параметры RADIUS-сервера на ESBC:

Блок кода
languagec#
vesbc(config)# radius-server host 192.168.16.250
#Пароль, который должен совпадать с secret на сервере:
vesbc(config-radius-server)# key ascii-text password
vesbc(config-radius-server)# usage voip
#Адрес интерфейса, с которого будут отправляться запросы:
vesbc(config-radius-server)# source-address 192.168.16.113 

...

3. Создать RADIUS-профиль, добавить в его конфигурацию RADIUS-серверасервер: 

Блок кода
vesbc(config)# esbc
vesbc(config-esbc)# radius profile RADIUS_PROFILE
vesbc(config-radius-profile)# radius-server host 192.168.16.250

...

SIP-абонент отправляет сообщение REGISTER, в hostname RURI указывает ssw125_2.domain. ESBC для определения адреса назначения отправляет запрос (Access-Request) на RADIUS-сервер (192.168.16.250) c аттрибутом атрибутом User-Name, в котором содержится домен ssw125_2.domain.
RADIUS-сервер присылает Access-Accept с адресом SIP-сервера (192.168.16.125) в аттрибуте атрибуте Framed-IP-Address.  
ESBC отправляет регистрацию на указанный адрес, подставляя в заголовки To и From ssw125_2.domain, последующие запросы с этого абонента при указании того же домена будут отправляться в транк 192.168.16.125 без предварительного обращения к внешнему сервису.

...

SIP-транспорт представляет точку входа/выхода сигнализации, т. е. это IP-адрес и порт, с которого ESBC будет отправлять и на который будет принимать сигнальные сообщения. 

Информация

Возможно использование IP-адреса, полученного по DHCP.

...

Блок кода
vesbc# 
vesbc# configure 
vesbc(config)# esbc 

Scroll Pagebreak

Создать и настроить соответствующим образом SIP-транспорт:  

Блок кода
languagec#
#Создание/переход в настройки SIP-транспорта NEW_TRANSPORT:
vesbc(config-esbc)# sip transport NEW_TRANSPORT

#Назначить IP-адрес 192.168.16.113 для использования SIP-транспортом:
vesbc(config-esbc-sip-transport)# ip address 192.168.16.113

#Назначить порт 5065 для использования SIP-транспортом:
vesbc(config-esbc-sip-transport)# port 5065

#Выбрать протокол транспортного уровня, используемый для приема/передачи сообщений SIP:
vesbc(config-esbc-sip-transport)# mode udp-prefer

...

Создать и настроить соответствующим образом медиаресурс: 

Блок кода
languagec#
#Создание/переход в настройки медиаресурса MEDIA_1:
vesbc(config-esbc)# media resource MEDIA_1

#Назначить IP-адрес 192.168.16.113 для использования в медиаресурсах:
vesbc(config-esbc-media-resource)# ip address 192.168.16.113

#Настроить диапазон UDP-портов с 20000 до 30000 для использовании в медиаресурсах:
vesbc(config-esbc-media-resource)# port-range 20000-30000

...

Для написания условий используются регулярные выражения PCRE. 

Scroll Pagebreak

Смена таблиц маршрутизации

В конфигурации таблицы маршрутизации реализована команда switch-route-table <route-table-name> для продолжения маршрутизации SIP-запроса через другую таблицу маршрутизации.

...

Примечание

Запрещено указывать в правиле action switch-route-table название той таблицы, в которой указывается данное правило.

Пример:

Блок кода
route-table MAIN
  rule 5
     action switch-route-table MAIN
  exit
exit

Scroll Pagebreak

Маршрутизация на разные направления через общую таблицу маршрутизации

Для всех транков (например, TRUNK_1, TRUNK_2, TRUNK_3) указать одну таблицу маршрутизации (например, MAIN). Все правила и условия для маршрутизации в конкретный транк указаны в отдельной таблице маршрутизации для этого транка (таблицы маршрутизации RT_1, RT_2, RT_3).  При добавлении транков в конфигурации необходимо создать соответствующую таблицу маршрутизации и добавить новое правило в таблицу MAIN.


Scroll Pagebreak

Пример конфигурации:

Блок кода
route-table MAIN
   rule 0
     action switch-route-table RT_1
   exit
   rule 1
     action switch-route-table RT_2
   exit
   rule 2
     action switch-route-table RT_3
   exit
 exit
 route-table RT_1
   rule 0
     action direct-to-trunk TRUNK_1
     condition 0 cdpn '100'
   exit
 exit
 route-table RT_2
   rule 0
     action direct-to-trunk TRUNK_2
     condition 0 cdpn '200'
   exit
 exit
 route-table RT_3
   rule 0
     action direct-to-trunk TRUNK_3
     condition 0 cdpn '300'
   exit
 exit
   trunk sip TRUNK_1
   route-table MAIN
   ...
 exit
   trunk sip TRUNK_2
   route-table MAIN
   ...
 exit
   trunk sip TRUNK_3
   route-table MAIN
   ...
 exit

В таком случае маршрутизация любого вызова из любого направления будет осуществляться по всем правилам всех таблиц маршрутизации до первого совпадения CdPN. Если совпадение не будет найдено, то вызов завершится кодом SIP 404 "Not Found".

Scroll Pagebreak

Маршрутизация на разные направления через последовательный каскад таблиц маршрутизации

Правила для маршрутизации добавляются в одну таблицу маршрутизации, при достижении ограничения количества правил (128) в качестве последнего правила добавляется переход на следующую таблицу маршрутизации.


Scroll Pagebreak

Пример конфигурации:

Блок кода
route-table RT_1
    rule 0
      action direct-to-trunk TRUNK_1
      condition 0 cdpn '100'
    exit
    rule 1
      action direct-to-trunk TRUNK_2
      condition 0 cdpn '200'
    exit
    rule 2
      action direct-to-trunk TRUNK_3
      condition 0 cdpn '300'
    exit
    ...
     rule 127
      action switch-route-table RT_2
    exit   
  exit
  route-table RT_2
    rule 0
      action direct-to-trunk TRUNK_4
      condition 0 cdpn '400'
    exit
    rule 1
      action direct-to-trunk TRUNK_5
      condition 0 cdpn '500'
    exit
    ...
    rule 127
      action switch-route-table RT_3
    exit   
  exit
  route-table RT_3
    ...
  exit
 ...
    trunk sip TRUNK_1
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_2
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_3
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_4
    route-table RT_1
    ...
  exit
    trunk sip TRUNK_5
    route-table RT_1
    ...
  exit

...

Осуществляется последовательный проход по всем направлениям, каждого правила каждой таблицы маршрутизации до тех пор, пока сессия не будет согласована, или не будет рассмотрено последнее правило в каждой таблице маршрутизации.

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

...

Настроена маршрутизация через три таблицы. Осуществляется вызов на номер 200. При осуществлении маршрутизации, в соответствии с правилом rule 0 таблицы RT_1 происходит переход к таблице RT_2. В таблице RT_2 таккже также первым правилом указан переход на таблицу RT_3. В таблице RT_3 нет правил маршрутизации, поэтому осуществляется переход к предыдущей таблице (RT_2) к следующему по порядку правилу (rule1). Т. к. это правило не подходит для направления вызова в транк TRUNK (CdPN 200 !== CdPN 100), то осуществляется переход к предыдущей таблице (RT_1) к следующему по порядку правилу (rule1). Последнее правло правило в этой таблице - reject, вызов будет завершен кодом SIP 403 "Forbidden".

...

Сценарий аналогичный примеру 1, за исключением того, что в таблице RT_3 настроено правило перехода к таблице RT_1. В данном случае логика обработки запроса будет аналогична примеру выше, т. к. при маршрутизации RT_1 уже была пройдена и повторный возврат к правилу rule 0 этой таблицы привел бы к зацикливанию вызова. 

Scroll Pagebreak

Настройка модификаторов
Якорь
mod-table
mod-table

...

Примечание

При применении на транке/абонентском интерфейсе модификаторов обоих типов одновременно, используется следующий порядок их обработки в зависимости от направления модификации:

  • IN — сначала применяется модификатор sip, затем — модификатор common;
  • OUT — сначала применяется модификатор common, затем — sip.

Scroll Pagebreak

Общие модификаторы

Пример использования модификатора common.

...

Модификаторы SIP позволяют гибко осуществлять выбор требуемого метода (Request) или ответного сообщения (Response) по конкретному коду. Для этого используются команды:

  • sip method pattern <PATTERN> <PATTERN> — необходимый метод или несколько методов задается при помощи регулярного выражения PCRE.
  • sip method type <TYPE> — необходимый метод выбирается из списка шести базовых методов стандарта RFC3261 (REGISTER, INVITE, ACK, CANCEL, BYE и OPTIONS). 
  • sip response-pattern <PATTERN> <PATTERN> — необходимый код ответного сообщения задается при помощи регулярного выражения PCRE.

...

Блок кода
languagec#
mod-table sip SIP_MOD
  mod 1 add
#Т.к. по условию требуется добавлять заголовок только в сообщения INVITE, можно воспользоваться командой "sip method type":
    sip method type Invite
    header name Test_header
    header value test_value 
  exit

...

Блок кода
languagec#
mod-table sip SIP_MOD
  mod 1 add
#Т.к. по условию требуется добавлять заголовок в INVITE и BYE, надо воспользоваться командой "sip method pattern":
    sip method pattern INVITE|BYE
#Для добавления заголовка в ответы 200 OK следует добавить команду "sip response-pattern"
    sip response-pattern 200
    header name Test_header
    header value test_value
  exit

...

Блок кода
languagec#
mod-table sip SIP_MOD
  mod 1 add
#Т.к. по условию требуется добавлять заголовок во все методы, используется отбор любых значений:
    sip method pattern .+
#Т.к. по условию требуется добавлять заголовок во все ответы, используется отбор любых значений:
    sip response-pattern .+
    header name Test_header
    header value test_value
  exit

...

Блок кода
languagec#
INVITE sip:23002@192.168.80.27:5063 SIP/2.0
Via: SIP/2.0/UDP 192.168.80.135:5060;rport;branch=z9hG4bKPj69d21930-f472-4e64-8555-6b68a532deae
Max-Forwards: 70
From: "24001" <sip:24001@192.168.80.135>;tag=f3db1c01-0c06-45cf-8b4d-a233070ae693
To: "23002" <sip:23002@192.168.80.27>
Contact: <sip:24001@192.168.80.135:5060;transport=udp>
Call-ID: 977eea09afecfc44932d4d9c1b2eeb15
CSeq: 6757 INVITE
Allow: INVITE, ACK, BYE, CANCEL
Supported: 100rel, replaces, ice, timer
Call-Info: call to TRUNK_OUT; ESBC version: 1.6.0.0085
Content-Type: application/sdp
Content-Length:   141

[SDP]...

Scroll Pagebreak

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

В ESBC поддержано использование условий во всех типах SIP-модификаторов.

...

Список причин отбоя для перехода на следующее направлениенаправление 

Список причин отбоя для указания статус-кодов ответов SIP, по которым будет осуществляться перемаршрутизация вызовов и регистраций на альтернативное направление (следующий транк в транковой группе/следующее правило в таблице маршрутизации).

...

Описание всех команд для настройки причин отбоя для перехода на следующее направление приведено в разделе Настройки SIP-профиля Справочника команд CLI.

Scroll Pagebreak

Пример использования:

В таблице маршрутизации два правила, первое — направляет вызов в TRUNK_GROUP, второе — направляет вызов в TRUNK_3.

...

Вызов с зарегистрированного абонента будет направлен в тот транк, через который осуществлялась его регистрация. В случае неуспешного вызова , перемаршрутизация осуществляться не будет.
При вызове с незарегистрированного абонента сначала идёт проверка, разрешены ли с этого абонентского интерфейса вызовы без регистрации (allow_unreg_call), если проверка успешна, то вызов смаршрутизируется по привязанной таблице маршрутизации и в случае недоступности транка/совпадении ответа с маской из списка произойдёт маршрутизация на следующее направление.

...

1) IP_C соответствует IP_ESBC_2 и на ESBC зарегистрирован абонент с номером numernumber_c

Если IP-адрес из заголовка Contact пришедшего 302 ответа соответствует IP-адресу транспорта ESBC, с которого был отправлен запрос, и на ESBC существует зарегистрированный абонент с номером, указанным в заголовке Contact, то ESBC отправит INVITE на тот транк, где этот абонент зарегистрирован и 181 в сторону инициатора вызова.

Пример работы:

1. Регистрация SIP-абонента с номером 300 на UAS C:

 2.  С UAC поступает вызов на UAS B, он отвечает 302, в Contact указывает 300@192.168.50.50:

3.  Так как существует зарегистрированный абонент с номером 300, то ESBC отправляет INVITE на тот транк, где этот абонент зарегистрирован, то есть на UAS C, а на UAC отправляет 181 ответ:  


2) IP_C соответствует IP_ESBC_2 и на ESBC не зарегистрирован абонент с номером numernumber_c.

Если IP-адрес из заголовка Contact пришедшего 302 ответа соответствует IP-адресу транспорта ESBC, с которого был отправлен запрос, но на ESBC не существует зарегистрированного абонента с номером, указанным в заголовке Contact, то ESBC перешлёт ответ на другое плечо и заменит адрес в заголовке Contact на IP-адрес UAC.

...

3) IP_C  не соответствует IP_ESBC_2 и UAS доверенный транк.

Если IP-адрес из заголовка Contact пришедшего 302 ответа не соответствует IP-адресу транспорта ESBC, с которого был отправлен запрос, и транк UAS доверенный транк, то ESBC отправит INVITE на указанный адрес и 181 в сторону UAC.

...

Информация

Для того чтобы транк считался доверенным, необходимо включить опцию trusted-network в конфигурации транка.

В прочих случаях — вызов завершается.

Игнорирование OPTIONS
Якорь
ignore_options
ignore_options

Данный режим используется для обработки входящих сообщений OPTIONS. 

...

Описание всех команд для настройки игнорирования OPTIONS приведено в разделе Настройки SIP-профиля Справочника команд CLI.

Предупреждение

Игнорирование входящих запросов OPTIONS по умолчанию включено

Информация

Если к user-interface привязан sip profile с включенным игнорированием OPTIONS, то при получении OPTIONS от зарегистрированных абонентов ESBC будет обрабатывать эти запросы и отвечать 200 OK (только если в запросе указан заголовок Contact).Если OPTIONS приходят не с зарегистрированных абонентов, то такие запросы игнорируются

Прочие входящие запросы OPTIONS  будут игнорироваться.

Таймеры SIP-сессий (RFC 4028)
Якорь
rfc_4028
rfc_4028
 

Использование таймеров SIP-сессий (RFC 4028) предназначено для контроля состояния сеансов связи и предотвращения зависания разговорных сессий, в случае возникновения каких-либо проблем, например с сетью. 

...

Поведение по умолчанию — поддержка таймеров SIP-сессий отключена. Для включения используется команда — session команда session timer enable.

Описание всех команд для настройки таймеров SIP-сессий приведено в разделе Настройки SIP-профиля Справочника команд CLI. 

Scroll Pagebreak


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

Задача:

Включить поддержку таймеров SIP-сессий на транке TRUNK_2 с параметрами Session Expires – 120, Min SE – 120, Refresher – UAS. На транке TRUNK_1 таймеры не используются.

...

Блок кода
languagec#
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 

...

Picture Fast Update (PFU) — это механизм быстрого восстановления видеоизображения , за счет обновления поврежденных кадров, обеспечивая минимальные задержки и стабильное качество видео даже при потере пакетов.

Примечание
Опция работает только для вызовов с транскодированием видео, при проксировании полученные сообщения INFO пересылаются на другое плечо.

Включение/выключение режима осуществляется командами rfc5168 enable и enable и no rfc5168 enable соответственно.

...

Т. к. используется транскодирование, то ESBC самостоятельно обрабатывает INFO, отправляет 200 ОК. 

Управление безопасностью системы
Якорь
security
security

...

AAA (Authentication, Authorization, Accounting) это базовая архитектура управления доступом, используемая в сетевых устройствах для идентификации клиентов, определения их прав и регистрации выполняемых действий. 

В контексте ESBC механизмы AAA применяются для контроля доступа к устройству, управления сессиями и взаимодействия с внешними серверами аутентификации. Реализация AAA включает три ключевых компонента:

  • Authentication (аутентификация) процесс проверки подлинности клиента на основе предоставленных учетных данных.

  • Authorization (авторизация, проверка полномочий, проверка уровня доступа) определение разрешенных действий для прошедшего аутентификацию клиента.

  • Accounting (учёт) регистрация событий доступа, изменений и сессий для последующего аудита и анализа. 

...

Использовать 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

Схема работы:

Image Modified

Алгоритм настройки транка для работы функции:

...

Для решения задачи на 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
nat

NAT (Network Address Translation — «преобразование сетевых адресов») —  это технология, которая позволяет преобразовывать локальные IP-адреса внутренней сети в один или несколько глобальных IP-адресов и обратно. NAT обеспечивает механизм подключения областей с приватными адресами к внешним областям, в которых используются уникальные в глобальном масштабе зарегистрированные адреса. Кроме того, NAT осуществляет преобразование портов — то есть меняет номера портов в пакетах данных, что помогает однозначно сопоставлять исходящие и входящие соединения. 

В данном разделе будут описаны различные функции для работы с NAT, а также настройки ESBC для его обхода, такие как:

  1. Настройка NAT comedia-mode для прохождения медиатрафика через устройства NAT;
  2. Настройка Public-IP;
  3. Настройка внешнего STUN-сервера;
  4. Настройка локального STUN-сервера.

...

Механизм NAT comedia-mode используется в случе том случае, когда встречное устройство находится за NAT.

...

  • flexible — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в . В случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток продолжает транслироваться;
  • on — проверяет источник во входящем RTP-потоке и транслирует исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток, в . В случае прерывания входящего RTP-потока более чем на 1 секунду, исходящий поток перестает транслироваться.

Принцип работы.

При включении режима nat режима 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.

Оправка RTP будет осуществляться на IP-адрес и порт, с которого был получен первый RTP-пакет от встречной стороны. До плучения получения RTP от встречной стороны, медиатрафик не будет передаваться от ESBC в эту сторону.

Команда nat keep-alive-intervalв настройках абонентского интерфейса используется для настройки интервала для поддержки соединения за NAT.   При включении опции, абоненту , с заданным интервалом будут отправляться пакеты с содержанием "0d0a"   для предотвращения разрушения сессии на NAT-маршрутизаторе.

...

Данный механизм используется для предотвращения ситуации, в которой абонент за 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 из настроек транка.

...

По умолчанию ESBC взаимодействует с внешними STUN-серверами в режиме согласно RFC 3489 (Simple Traversal of UDP through NATs или "classic STUN") – использует в качестве публичного адреса и порта значения, полученные в аттрибуте атрибуте MAPPED-ADDRESS в Binding Response от STUN-сервера.
Доступна поддержка RFC 5389 (Session Traversal Utilities for NAT) – в этом случае ESBC в Binding Request на STUN-сервер будет отправлять Cookie, с помощью которого сервер зашифрует адрес и порт и передаст их в Binding Response в аттрибуте атрибуте XOR-MAPPED-ADDRESS, ESBC дешифрует полученные данные и использует в качестве публичного адреса и порта. 

Доступна настройка интервала отправки запросов на внешний STUN-сервер.

Внешний STUN-сервер можно можно использовать в настройках абонентского интерфейса, транка и транковой группы.

...

ESBC находится в частной сети за NAT устройством, настроены 2 транка TRUNK_A (в той же сети, что и ESBC) и TRUNK_B (в публичной сети), настроена маршрутизация между ними, адрес WAN-интерфейса NAT-устройства неизвестен. В публичной сети находится STUN-сервер. Необходимо настроить получение публичного адреса через STUN-сервер для вызовов, направленных в TRUNK_B. 

Блок кода
languagec#
#Настройка внешнего 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-порта для согласования обмена медиатрафиком.

...

При входящем вызове из транка TRUNK_B ESBC также отправит запросы на STUN-сервер с RTP и RTCP-порта для согласования обмена медиатрафиком перед отправкой SDP-Answer инициатору. 

Scroll Pagebreak


Настройка локального STUN-сервера
Якорь
local stun
local stun

...

При получении STUN Binding Request, ESBC формирует Binding Success Response, содержащий IP-адрес и порт, с которого данный запрос был получен. Этот адрес называется Reflexive Address и может использоваться клиентом для корректного формирования SIP-сообщений, SDP и обеспечения прохождения медиатрафика (RTP) через NAT. 

Поддерживаются Поддерживается работа протокола STUN в режимах Classic STUN (RFC 3489) и cовременный STUN (RFC 5389+).

...

Блок кода
languagec#
vesbc# configure 
vesbc(config)# esbc 
vesbc(config-esbc)# stun server local LOCAL_STUN
vesbc(config-esbc-stun-server-loc)# ip address 30.30.30.1 
vesbc(config-esbc-stun-server-loc)# port 13478
vesbc(config-esbc-stun-server-loc)#

#Применение и подтверждение изменений:
vesbc(config-esbc-stun-server-loc)# 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-server-loc)# do confirm
Configuration has been confirmed. Commit timer canceled

После настроки описанной выше , настройки ESBC будет принимать сообщения STUN на IP-адрес 30.30.30.1 и порт UDP 13478. 

Примечание

При использовании в конфигурации ESBC локального STUN-сервера не требуется дополнительной настройки firewall, необходиме необходимые правила , для пропуска входящих 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

...

  • аудиопакетов;
  • видеопакетов;
  • пакетов сигнализации-SIPсигнализации SIP.

Параметры QoS настраиваются в конфигурации абонентского интерфейса, транка и транковой группы.

...

  1. general;

  2. trunk;
  3. trunk-group;
  4. user-interface.

Реализация ограничения входящего трафика поддерживается для следующих объектов:

...

  1. Ограничения для всей системы. Настройки ограничений general переопределяют настройки ограничений остальных объектов (trunk, trunk-group, user-interface) ESBC. 
  2. Ограничения для транк-группы. Настройки ограничений trunk-group переопределяют настройки ограничений транков, входящих в данную транк-группу, но переопределяются настройками general.
  3. Ограничения для транков и абонентских интерфейсов. Настройки ограничений trunk переопределяются настройками ограниченийтранк-группы (если транк входит в состав какой-либо транк-группы) или настройками general. Настройки ограничений user-interface переопределются настройками переопределяются настройками general. 
Примечание

Приоритет использования ограничений распространяется только для максимальных значений, т. е. например, при использовании max in cps 100 для всей системы (general), и использовании max in cps 10 для какого-либо транка, ограничение обработки CPS для этого транка будет 10, а не 100.

При одновременном использовании max in cps и max in rps в настройках транка, транковой группы или абонентского интерфейса, максимальным порогом для всех входящих запросов будет являться значение, настроенное в max in rps. При этом ограничение для входящих запросов INVITE можно уменьшить отдельно настройкой max in cps.

...

  1. В конфигурации настроено max in cps 10 и max in rps 5. В таком случаее случае максимальное ограничение на входящие вызовы (INVITE) будет 5.
  2. В конфигурации настроено max in cps 5 и max in rps 10. В таком случаее случае максимальное ограничение на входящие вызовы будет 5, а на остальные запросы - 10.


Пример работы приоритета системных ограничений над абонентским интерфейсом:

Блок кода
languagec#
vesbc#
vesbc# config 
vesbc(config)# esbc 

#Переход в общие настройки:
vesbc(config-esbc)# general 
vesbc(config-esbc-general)# 

#Установка ограничения входящего максимального количества CPS для всей системы - 5:
vesbc(config-esbc-general)# max in cps 5
vesbc(config-esbc-general)# exit

#Установка ограничения максимального входящего количества CPS для отдельного абонентского интерфейса (USER_IFACE) - 10:
vesbc(config-esbc)# user-interface sip USER_IFACE 
vesbc(config-esbc-user-interface-sip)# max in cps 10

#Применение и подтверждение изменений:
vesbc(config-esbc-user-interface-sip)# do commit 
vesbc(config-esbc-user-interface-sip)# do confirm 

...

Блок кода
languagec#
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 

...

Блок кода
languagec#
vesbc#
vesbc# config 
vesbc(config)# esbc 

#Переход в настройки абонентского интерфейса:
vesbc(config-esbc)# user-interface sip USER_IFACE
vesbc(config-esbc-user-interface)# 

#Установка ограничения максимального количества одновременных вызовов для абонентского-интерфейса - 10:
vesbc(config-esbc-user-interface-sip)# max in calls 10

#Применение и подтверждение изменений:
vesbc(config-esbc-user-interface)# do commit 
vesbc(config-esbc-user-interface)# do confirm 

...

Блок кода
languagec#
vesbc#
vesbc# config 
vesbc(config)# esbc 

#Переход в настройки абонентского интерфейса:
vesbc(config-esbc)# user-interface sip USER_IFACE
vesbc(config-esbc-user-interface)# 

#Установка ограничения входящего максимального количества CPS для абонентского-интерфейса - 10:
vesbc(config-esbc-user-interface-sip)# max in cps 10

#Применение и подтверждение изменений:
vesbc(config-esbc-user-interface)# do commit 
vesbc(config-esbc-user-interface)# do confirm 

...

Пример работы ограничения количества SIP-сообщений в секунду в рамках одной сессии  сессии на абонентском интерфейсе: 

Блок кода
languagec#
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

Пример работы ограничения количества общего количества активных подписок на абонентском интерфейсе: 

...

Блок кода
languagec#
vesbc#
vesbc# config 
vesbc(config)# esbc 

#Переход в настройки абонентского интерфейса:
vesbc(config-esbc)# user-interface sip USER_IFACE
vesbc(config-esbc-user-interface)# 

#Ограничение максимального количества запросов 50:
vesbc(config-esbc-user-interface-sip)# max in user rpp 50 
  
#В интервал времени 240 секунд:
vesbc(config-esbc-user-interface-sip)# max in user rpp 50 240 
 
#С блокировкой при достижении лимитов:
vesbc(config-esbc-user-interface-sip)# max in user rpp 50 240 block

#Применение и подтверждение изменений:
vesbc(config-esbc-user-interface)# do commit 
vesbc(config-esbc-user-interface)# do confirm 

...

Блок кода
languagec#
vesbc#
vesbc# config 
vesbc(config)# esbc 

#Переход в настройки абонентского интерфейса:
vesbc(config-esbc)# user-interface sip USER_IFACE
vesbc(config-esbc-user-interface)# 

#Ограничение максимального количества контактов для одного AOR:
vesbc(config-esbc-user-interface-sip)# max in user contacts 2


#Применение и подтверждение изменений:
vesbc(config-esbc-user-interface)# do commit 
vesbc(config-esbc-user-interface)# do confirm 

...

Описание всех команд для контроля исходящего трафика приведено в разделах для каждого объекта в CLI:

  1. trunk;
  2. trunk-group;
  3. user-interface.

Реализация ограничения исходящего трафика поддержана на следующих объектах:

...

  1. В конфигурации настроено max out cps 10 и max out rps 5. В таком случаее случае максимальное ограничение на вызовы (INVITE) будет 5.
  2. В конфигурации настроено max out cps 5 и max out rps 10. В таком случаее случае максимальное ограничение на вызовы будет 5, а на остальные запросы - 10.
Примечание

При применении ограничений приоритет определяется уровнем: приоритет ограничений транк-групп выше, чем приоритет ограничений отдельных транков, входящих в эту транк-группу.

...

При вводе show esbc call-flow sip info <SESSION_ID> будет доступна диаграмма отдельной сессии. 

Пример вывода статистики:, см. ниже. 

Блок кода
languagec#
#Просмотр диаграммы отфильтрованной 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#

...

  1. IP black-list:
    • IP address — заблокированный IP-адрес;
    • Ban reason — причина блокировки;
    • AOR;
    • AOR error count — количество ошибок AOR;
    • Blocking timeout in minutes — оставшееся время блокировки в минутах;
    • Time of blocking — время блокировки. 
      Scroll Pagebreak
  2. AOR:
    • AOR;
    • Ban reason — причина блокировки;
    • AOR error count — количество ошибок AOR;
    • Forgive time in minutes — оставшееся время блокировки в минутах;
    • Time of blocking — время блокировки.
  3. SIP user
    • AOR;
    • Ban reason — причина блокировки;
    • UA error count — количество ошибок UA;
    • Forgive time in minutes — оставшееся время блокировки в минутах;
    • Time of blocking — время блокировки.
  4. 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 секунд.

Блок кода
languagec#
#Просмотр истории максимальной статистики активных вызовов:
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

Пример:

Блок кода
languagec#
#Просмотр истории аварийных событий:
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-трапов

Текст аварий и причины их нормализации представлены в таблице ниже.

Image Added

Для удаления истории аварийных событий используется команда clear alarms в CLI.

Примечание

Аварии сохраняются локально. Для отправки уведомлений об авариях на удаленный хост необходимо настроить отправку аварийных 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

Авария

Текст аварии

Причины нормализации

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% 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% от лимита

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-agentUser-Agent <user-agent> has been bannedне нормализуются
voip-block-sip-userSIP user <aor> has been bannedне нормализуются

...

Примечание

В отличие от аварий, SNMP-трапы передают уведомления о заблокированных объектах:

  • voip-block-aor;
  • voip-block-ip;
  • voip-block-user-agent;
  • voip-block-sip-user.

Для просмотра заблокированных объектов в CLI используется команда show esbc black-list.

Конфигурирование удаленного хоста для отправки SNMP-уведомлений выполняется с помощью команды snmp-server host в CLI.

...

Информация

Запись "Номер вызываемого абонента при переадресации" создается только, при включенной локальной обработке 3xx обработке 3xx ответа в настройках sip profile.

Хранение записей CDR осуществляется в локальном хранилище ESBC или на внешнем USB-накопителе.

...

Предупреждение

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

Для получения наиболее подробной информации, при диагностики неисправностей, рекомендуется использовать уровень логирования debug. 

Scroll Pagebreak

Пример настройки логирования на внешний syslog-сервер с уровнем debug:

Блок кода
vesbc# configure 
vesbc(config)# syslog host SYSLOG_SERVER
vesbc(config-syslog-host)# remote-address 192.168.1.1
vesbc(config-syslog-host)# severity debug 
vesbc(config-syslog-host)# do commit 
Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds.
vesbc(config-syslog-host)# do confirm 
Configuration has been confirmed. Commit timer canceled.


Модули, входящие в состав ESBC

Название

Описание

Назначение

esbc_core

модуль основной логики

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

esbc_sip_balancer

модуль управления подсистемой SIP

получение сообщений SIP (на открытый сокет) и передача их в модуль esbc_sip_worker

esbc_sip_worker

модуль расширения подсистемы SIP

адаптер протокола SIP, обрабатывает сообщения и передает данные модулю esbc_core

esbc_media_balancer

модуль управления подсистемой media

управление ресурсами в подсистеме media, выделяет RTP-порты и передает их в модуль esbc_media_worker

esbc_media_worker

модуль расширения подсистемы media

обработка медиапотоков (RTP)

esbc_config_manager

адаптер базы данных конфигурации

хранение конфигурации системы

esbc_access_mediator

модуль внешнего доступа

обработка внешних взаимодействий с системой CLI

esbc_ipc

брокер сообщений

обеспечение связи всех модулей в системе

esbc_dispatcher

модуль контроля состояния модулей

контроль модулей, индикация об изменении состояний модулей

esbc_sm

модуль управления абонентскими записями

добавление/удаление записей о регистрации абонентов, добавление/удаление/изменение контактов регистрации, хранение и восстановление записей из базы, предоставление информации о записях и контактах абонентов другим модулям системы

esbc_voip_guard

модуль fail2ban

отслеживает попытки обращения к сервису телефонии, при обнаружении постоянно повторяющихся неудачных попыток обращения с одного и того же IP-адреса или хоста, модуль блокирует попытки с этого IP-адреса/хоста

esbc_sysio

модуль взаимодействия с ОС

служит прослойкой между ESBC и ОС, на которой он разворачивается, предоставляет единый интерфейс взаимодействия с системой и реализует мониторинг различных системных событий

esbc_mon

модуль мониторинга

обеспечение функции мониторинга и сбора статистики

esbc_aaa

модуль aaa

аутентификация, хранение информации о вызовах

stun_server

модуль stun-server

обработка запросов STUN в режиме сервера

Scroll Pagebreak

Включение логирования модулей ESBC производится в разделе debug:

Блок кода
languagec#
vesbc#

#Переход в раздел debug:
vesbc# debug
vesbc(debug)#
 
#Включение логирования модуля esbc_dispatcher:
vesbc(debug)# debug esbc disp
 
#Включение логирования модуля esbc_config_manager:
vesbc(debug)# debug esbc cfgmgr
 
#Включение логирования модуля esbc_access_mediator:
vesbc(debug)# debug esbc accmed
 
#Включение логирования модуля esbc_mon:
vesbc(debug)# debug esbc mon

#Включение логирования модуля esbc_aaa:
vesbc(debug)# debug esbc aaa

#Включение логирования модуля esbc_core:
vesbc(debug)# debug esbc core
 
#Включение логирования модуля esbc_sip_balancer:
vesbc(debug)# debug esbc sipbl
 
#Включение логирования модуля esbc_sip_worker:
vesbc(debug)# debug esbc sipwrk
 
#Включение логирования модуля esbc_media_balancer:
vesbc(debug)# debug esbc mediabl
 
#Включение логирования модуля esbc_media_worker:
vesbc(debug)# debug esbc mediawrk
 
#Включение логирования модуля esbc_sysio:
vesbc(debug)# debug esbc sysio
 
#Включение логирования модуля esbc_sm:
vesbc(debug)# debug esbc submngr
 
#Включение логирования модуля esbc_voip_guard:
vesbc(debug)# debug esbc voip-guard



#Включение логирования модуля stun_server:
vesbc(debug)# debug esbc stun-server

Для отключения логирования модулей ESBC используется команда, аналогичная включению, с приставкой no:

...

Для установки параметров логирования по умолчанию используется команда no debug all. Данная команда отключает логирование всех модулей ESBC.

...

Примечание

С целью исключения повышенной нагрузки на устройство, рекомендуется отключать логирование модулей ESBC (no debug all) сразу после получения логов, необходимых для анализа неисправности. 

Изменение количества модулей
Якорь
count
count

...

При высокой нагрузке сигнальным SIP-трафиком наибольшую нагрузку на ядро CPU производит модуль sip worker, а при большом количестве одновременных вызовов (особенно в режиме транскодирования медиимедиа) — media worker.

Поэтому для установления баланса производительности, для многоядерных систем следует использовать оптимальное количество каждого из модулей, т. к. каждый дополнительный экземпляр модуля будет использовать ресурс дополнительного ядра CPU системы.

...

  • core
  • sip worker
  • sip balancer
  • media worker
  • media balancer
  • stun server

Максимальное количество модулей определяется динамически в зависимости от количества ядер CPU.

...

Для организации абонентских и транковых подключений, с целю передачи сигнального (SIP) и медиа (RTP) трафика через VPN-соединение, ESBC поддеживает поддерживает работу в следующих режимах:

  • PPTP-сервер
  • PPTP-клиент
  • L2TP-сервер
  • L2TP-клиент

Подробное описанние описание настройки каждго каждого из режимов приведено в разделе разделе Управление удаленным доступом документации ESR.

...

  1. Базовая настройка сети (конфигурация IP-адресов интерфейсов, настройка маршрутизации и т. д.).
  2. Настройка тунелирования туннелирования (конфигурация PPTP/L2TPсервераL2TP-сервера, и/или настройка PPTP/L2TP тунелей-туннелей).
  3. Настройка firewal firewall для прохождения протоколов тунелирования туннелирования (разрешить TCP-порт 1723, протокол GRE(47) для PPTP и UDP-порты 500, 1701, 4500 и протоколы ESP (50) и GRE (47) для L2TP). 
  4. Настройка транков и/или абонентских интерфейсов ESBC для работы через VPN.
Примечание

Ниже приведены примеры настройки ESBC в качестве PPTP-сервера и в качестве PPTP-клиента. Настройки для L2TP-сервера и L2TP-клиента осуществляются аналогично.

...

Пример настройки PPTP-сервера для подключения SIP-транков

...

Задача 

Организовать подключение двух PPTP-клиентов к ESBC и использовать эти подключения в качестве SIP-транков.

IP-адрес сервера PPTP - 20.20.20.1. 

Учетная запись для подключения клиента 1 – логин: pptp_user, пароль: simplepass, IP-адрес: 20.20.20.5

...

Блок кода
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)#

...

Блок кода
languagec#
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-адрес в явном виде не требуется.

...

Блок кода
languagec#
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

Учетная запись для подключения клиента  – клиента — логин: pptp_user, пароль: simplepass.

...

Создать зону безопасности для PPTP-тунелятуннеля:

Блок кода
vesbc(config)# security zone PPTP_TENNEL
vesbc(config-security-zone)# exit
vesbc(config)# 

Scroll Pagebreak

Создать и настроить PPTP-тунельтуннель:

Блок кода
languagec#
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)# 

Выполнить настройку транка ESBC для работы через PPTP-тунельтуннель:

Блок кода
languagec#
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)# 
Примечание

IP-адреса

(Local

и

Remote)

PPTP-

тунеля

туннеля можно

узнать

командой

show

tunnels

status

.

Блок кода
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
 

...

9. Создать таблицу маршрутизации и добавить туда в нее правила, по которым вызовы, приходящие с абонентов будут маршрутизироваться на SSW:

...

Блок кода
vesbc#
vesbc# configure
vesbc(config)# esbc
vesbc(config-esbc)# media resource MEDIA_SSW
vesbc(config-esbc-media-resource)# ip address 192.168.16.113

# Указать#Указать диапазон портов, который будет выделяться на ESBC для передачи голоса. Данная команда необязательная. Если ее не указывать, будет использоваться диапазон портов 8000–65535.
vesbc(config-esbc-media-resource)# port-range 1024-65535

...

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

...