...
- Таблица модификаций (для входящих и исходящих сообщений);
- SIP-профиль;
- Медиапрофиль;
- Профиль безопасности;
- Режим работы абонентов за NAT;
- Public IP;
- QoS;
- Контроль входящего и исходящего трафика;
- Локальная обработка регистрации;
- AAA профиль;
- STUN-cервер;
- SIP-домен. При настройке домен будет использоваться в host-part URI в заголовках To и From для исходящих сообщений. Во входящих сообщениях будет осуществляться проверка домена в заголовке From;
- Опция "Разрешить вызовы без регистрации". Разрешает принимать входящие сообщения INVITE от незарегистрированных абонентов.
...
- Таблица маршрутизации;
- Таблица модификаций (для входящих и исходящих сообщений);
- SIP-профиль;
- Медиапрофиль;
- Профиль безопасности;
- Режим работы за NAT;
- Режим локальной аутентификации запросов;
- Режим клиентской регистрации транка;
- Public IP;
- STUN-cервер;
- QoS;
- Контроль входящего и исходящего трафика;
- Динамический режим. Используется для подключения к группе вышестоящих SIP-устройств (IP АТС/ SIP-proxy/Удаленный SSW и др.);
- Опция "Доверенная сеть" для переадресаций;
- AAA профиль;
- SIP-домен. При настройке домен будет использоваться в host-part URI в заголовках To и From для исходящих сообщений. Во входящих сообщениях будет осуществляться проверка домена в заголовке From.
...
SIP-транспорт представляет точку входа/выхода сигнализации, т. е. это IP-адрес и порт, с которого ESBC будет отправлять и на который будет принимать сигнальные сообщения.
| Информация |
|---|
Возможно использование IP-адреса, полученного по DHCP. |
...
Вызов с зарегистрированного абонента будет направлен в тот транк, через который осуществлялась его регистрация. В случае неуспешного вызова , перемаршрутизация осуществляться не будет.
При вызове с незарегистрированного абонента сначала идёт проверка, разрешены ли с этого абонентского интерфейса вызовы без регистрации (allow_unreg_call), если проверка успешна, то вызов смаршрутизируется по привязанной таблице маршрутизации и в случае недоступности транка/совпадении ответа с маской из списка произойдёт маршрутизация на следующее направление.
...
Если 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 не зарегистрирован абонент с номером numer_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 в конфигурации транка. |
В прочих случаях — вызов завершается.
...
AAA (Authentication, Authorization, Accounting) – — это базовая архитектура управления доступом, используемая в сетевых устройствах для идентификации клиентов, определения их прав и регистрации выполняемых действий.
В контексте ESBC механизмы AAA применяются для контроля доступа к устройству, управления сессиями и взаимодействия с внешними серверами аутентификации. Реализация AAA включает три ключевых компонента:
Authentication (аутентификация) – — процесс проверки подлинности клиента на основе предоставленных учетных данных.
Authorization (авторизация, проверка полномочий, проверка уровня доступа) – — определение разрешенных действий для прошедшего аутентификацию клиента.
Accounting (учёт) – — регистрация событий доступа, изменений и сессий для последующего аудита и анализа.
...
Принцип работы.
При включении режима nat режима nat comedia-mode on/flexible отправка и получение сообщенийсигнализации сообщений сигнализации SIP осуществляется с/на IP-адрес и порт, указанные в настройках транка.
Оправка RTP будет осуществляться на IP-адрес и порт, с которого был получен первый RTP-пакет от встречной стороны. До плучения получения RTP от встречной стороны, медиатрафик не будет передаваться от ESBC в эту сторону.
...
При включении режима nat comedia-mode on/flexible отправка сообщений сигнализации SIP осуществляется симметрично (на IP-адрес и и порт, с которого был принят запрос) в случае, если клиент в инициирующем запросе не использовал параметр RPORT.
Отправка сообщений сигнализации SIP на зарегистрированного абонента будет осуществляться на на IP-адрес и и порт, с которого был принят запрос REGISTER, а не на данные абонента, указанные в заголовке Contact.
Оправка RTP будет осуществляться на IP-адрес и порт, с которого был получен первый RTP-пакет от встречной стороны. До плучения получения RTP от встречной стороны, медиатрафик не будет передаваться от ESBC в эту сторону.
Команда nat keep-alive-interval в настройках абонентского интерфейса используется для настройки интервала для поддержки соединения за NAT. При включении опции, абоненту , с заданным интервалом будут отправляться пакеты с содержанием "0d0a" для предотвращения разрушения сессии на NAT-маршрутизаторе.
...
При получении STUN Binding Request, ESBC формирует Binding Success Response, содержащий IP-адрес и порт, с которого данный запрос был получен. Этот адрес называется Reflexive Address и может использоваться клиентом для корректного формирования SIP-сообщений, SDP и обеспечения прохождения медиатрафика (RTP) через NAT.
Поддерживаются Поддерживается работа протокола STUN в режимах Classic STUN (RFC 3489) и cовременный STUN (RFC 5389+).
...
| Блок кода | ||
|---|---|---|
| ||
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-запросов будут настроены автоматически. |
...
- 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-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-agent | User-Agent <user-agent> has been banned | не нормализуются |
| voip-block-sip-user | SIP user <aor> has been banned | не нормализуются |
...
- Базовая настройка сети (конфигурация IP-адресов интерфейсов, настройка маршрутизации и т. д.).
- Настройка туннелирования (конфигурация PPTP/L2TP-сервера, и/или настройка PPTP/L2TP-туннелей).
- Настройка firewal для прохождения протоколов туннелирования (разрешить TCP-порт 1723, протокол GRE(47) для PPTP и UDP-порты 500, 1701, 4500 и протоколы ESP (50) и GRE (47) для L2TP).
- Настройка транков и/или абонентских интерфейсов ESBC для работы через VPN.
...
| Блок кода | ||
|---|---|---|
| ||
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
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)# |
| Примечание |
|---|
Для использования подключенных PPTP-клиентов в качестве SIP-транков следует указывать IP-адрес, который будет выдвваться выдаваться сервером PPTP каждому клиенту, в явном виде (команда remote address в конфигурации ppp-user ). Иначе IP-адреса, выдаваемые PPTP-клиентам будут выдаваться в случайном порядке из диапазона указанного в настроках настройках PPTP-сервера. В таком случае невозможно будет настроить SIP-транк до конкретного клиента, т. к. для работы в режиме транка требуется указание адреса встречной стороны. Для использования подключенных PPTP-клиентов в качестве SIP-абонентов, указывать IP-адрес в явном виде не требуется. |
...
Настройка маршрутизации для транка PPTP_USER2 выполняется аналогиноаналогично.
Пример настройки 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)# |
Создать и настроить 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)# |
Выполнить настройку транка ESBC для работы через PPTP-тунельтуннель:
| Блок кода | ||
|---|---|---|
| ||
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 |
...
| Блок кода |
|---|
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 |
...


