Продолжаем говорить про модули FreePBX. Сегодня спешим рассказать про очень важный модуль — Asterisk Sip Settings. Корректная настройка этого модуля имеет сильно влияет на параметры прохождения голосового трафика и проблем односторонней слышимости. От слов к делу.
ВКЛАДКА GENERAL SIP SETTINGS
Перейдем к настройке. Для этого, открываем Settings → Asterisk Sip Settings. Пробежимся по опциям, которые доступны для настройки:
- Allow Anonymous inbound SIP Calls — если данная опция переключена в позицию Yes, ваша IP – АТС Asterisk будет обрабатывать звонки, поступающие с неизвестных IP –адресов в контексте from – pstn. Обычно, выбор данной опции в положение Yes связан с включением набора по SIP URI. Учтите, что включенная опция значительно увеличивает риски связанные с безопасностью системы;
- External Address — в данном поле необходимо указать ваш внешний IP – адрес. Помимо прочего, нажав на Detect Network Settings АТС автоматически определит параметры внешнего IP – адреса и внутренних локальных подсетей;
- Local Networks — локальные подсети, из которых будут подключаться ваши SIP – устройства. Синтаксис прост: сетевой IP – адрес/маска. Например, 192.168.1.0/255.255.255.0. Есть возможность добавить несколько подсетей нажав на кнопку Add Local Network;
- RTP Settings
- RTP Ranges -начальный и конечный UDP порты для RTP трафика. В целом, данный диапазон можно посчитать. Знайте, что для каждого звонка нужно иметь по крайне мере 4 порта;
- RTP Checksums — подсчитывать ли контрольную сумму для UDP, который переносит RTP трафик (голос);
- Strict RTP — данная опция будет отбрасывать RTP пакеты, который приходят не от источника RTP – потока в рамках сессии;
- Codecs — выберите нужные кодеки. Важно учесть порядок кодеков – он влияет на приоритет установления кодека в рамках SDP сообщений;
- STUN Servers — указать IP – адрес STUN сервера. Если кратко, STUN помогает преодолеть проблемы с NAT – он помогает SIP – клиентам внутри локальной сети определять свой публичный адрес;
ВКЛАДКА CHAN SIP SETTINGS
Переходим к настройке chan_sip.
-
- NAT Settings (дополнительно здесь и здесь)
- NAT — настройка NAT (Network Address Translation) для Asterisk.
- yes — использовать NAT;
- no — использовать трансляцию согласно RFC3581. Если кратко, то данный RFC позволяет отправлять ответа на порт, с которого запрос был получен, вместо порта, взятого из заголовка Via в SIP пакете;
- never — не использовать NAT согласно RFC3581;
- route — данная опция подойдет для клиентов, которые не отрабатывают поле rport в заголовках SIP сообщений (согласно RFC3581 );
- IP Configuration — в данном поле вы можете указать параметры внешнего IP. Вы можете указать вручную ваш внешний IP – адрес, а также использовать DDNS (Dynamic DNS);
- NAT — настройка NAT (Network Address Translation) для Asterisk.
- Audio Codecs
- Non-Standard g726 — порой пир устанавливает порядок инициации параметров аудио потока (характерно для некоторых моделей Sipura и Grandstream) для кодека G726 с полосой пропускания 6, 24, 32, и 40 килобит/сек. Если требуется, установите эту опцию в положение Yes;
- T38 Pass-Through — позволяет сквозное пропускание факсов через Asterisk без дополнительной обработки и внесения изменений по протоколу T38;
- No — выключить сквозной режим;
- Yes — включает T38 в режиме коррекции ошибок FEC (Forward Error Correction), а так же переписывает значение, предоставленное оконечным устройством, согласно которому мы можем отправить факс – пакеты размером 400 байт по протоколу T38;
- Yes with FEC — включает T38 в режиме коррекции ошибок FEC;
- Yes with Redundancy — включает T38 в режиме отказоустойчивой коррекции ошибок FEC;
- Yes with no error correction — включает T38 без коррекции ошибок;
- Video Codecs
- Video Support — включив эту опцию в переключатель Enabled, вам будет предложено настроить кодеки для видео – звонков.;
- TLS/SSL/SRTP Settings
- Enable TLS -включить поддержку защищенных подключений по TLS;
- Certificate Manager — включить сертификат для поддержки TLS. Его можно легко настроить в модуле Certificate Manager;
- SSL Method — метод передачи SSL транспорта (только для TLS). По умолчанию используется sslv2;
- Don’t Verify Server — не запрашивать проверку сертификата сервере (настройка влияет только на TLS).;
- MEDIA & RTP Settings
- Reinvite Behavior — опция, которая позволяет перенаправить поток данных RTP в случае, если пир находится не за NAT (средствами RTP это можно детектировать по IP – адресам);
- RTP Timeout — сброс канала, на котором отсутствует голосовые потоки (пакеты) RTP/RTCP в течение указанного времени. Важно отметить, что постановка вызова на hold не является триггером для данного поля настройки.;
- RTP Hold Timeout -сбросить звонок, поставленный на удержание после истечения таймера (в секундах) этого поля;
- RTP Keep Alive — отправлять Keep Alive сообщения (проверки жизнеспособности сервиса) для поддержки NAT – сессии (в случае постановки вызова на удержание особенно актуально);
- Notification & MWI
- MWI Polling Freq — частота в секундах, в рамках которой будет производиться проверка смены статуса MWI (световая индикация, Message Waiting Indication) и отправка статуса пирам;
- Notify Ringing — опция позволяет контролировать состояние абонента, понимая, что его телефон используется (INUSE) получением пакета SIP 180 RINGING. Удобно при использовании BLF функционала;
- Notify Hold — контроль абонента и перевод в состояние INUSE, если звонок поставлен на удержание (событие ONHOLD).;
- Registration Settings
- Registration Timeout — таймаут регистрации. По умолчанию, равен 20 секунд. Иными словами, каждые 20 секунд будет отправляться запрос на регистрацию, пока не будет превышено максимальное количество попыток;
- Registration Attempts — количество попыток регистрации, после которого сервер примет решение перестать отправлять запросы. Если выставлено как 0, то количество запросов ограничено не будет. В нормальной ситуации, значение 0 является вполне рабочим – Asterisk будет продолжать посылать запросы на регистрацию до тех пор, пока очередная попытка не увенчается успехом;
- Registration Minimum Expiry — минимальное время, в течение которого сессия регистрации будет считаться просроченной;
- Registration Maximum Expiry — максимальное время, в течение которого сессия регистрации будет считаться просроченной (для входящих регистраций);
- Registration Default Expiry — длительность входящих и исходящих регистраций по умолчанию;
- Jitter Buffer Settings
- Enable Jitter Buffer — данная опция активирует использование джиттер буффера на принимающей стороне в рамках одного SIP – канала;
- Advanced General Settings
- Default Context — контекст обработки вызова по умолчанию, если не указан иной контекст. Сам по себе FreePBX назначает данную опцию как from-sip-external. Вносите изменения только в том случае, если полностью понимаете, что делаете;
- Bind Address — в данном поле указывается IP – адрес, на котором Asterisk будет ожидать запросы на телефонный процессинг, на порту, указанном в опции Bind Port. Если указано как 0.0.0.0, Asterisk будет принимать запросы на всех адресах, указанных в настройках ОС. Рекомендуем оставить эту опцию без изменений. Кстати, chan_sip не поддерживает IPv6 для транспорта UDP. Если укажите
[::], Asterisk будет слушать все IPv4 и все IPv6 адреса. Если вы настолько круты, что используйте PJSip, то смело используйте IPv6 🙂 - Bind Port — локальный UDP (и TCP, если включено в опции Enable TCP) порт, на котором Asterisk слушает обращения к chan_SIP. Если оставить поле пустым, то по умолчанию будет использован порт 5060 (5160);
- NAT Settings (дополнительно здесь и здесь)
В более старых версиях FreePBX, использовался порт 5060 (когда только 1 SIP драйвер был в наличии). В более новых, используется 5160);
-
-
-
- TLS Bind Address — TCP порт на котором Asterisk слушает TLS (защищенные) обращения. Конфигурация вида
[::], слушает IPv4 и IPv6 на всех интерфейсах;
- TLS Bind Address — TCP порт на котором Asterisk слушает TLS (защищенные) обращения. Конфигурация вида
-
-
Важно: мы рекомендуем использовать PJSip для всех коммункаци на базе протокола IPv6;
-
-
- TLS Bind Port — локальной порт для входящих TCP обращений в рамках TLS SIP пакетов;
- Allow SIP Guests — если установлено в положение Yes, то Asterisk разрешит гостевые SIP звонки и обработает их в контексте from-sip-exernal (или значение дефолтного контекста, если меняли). Переключение в положение No позволит запретить так же и анонимные звонки;
- Enable SRV Lookup — данная опция сильно зависит от используемой версии Asterisk. В корреляции с версией, SRV функционал имеет свои ограничения;
- Enable TCP — включить TCP;
- Call Events — важная опция если вы работаете с AMI (Asterisk Manager Interface). При включенной опции, вы сможете мониторить различных события в AMI, которые генерирует SIP UA (user agent). Данный функционал полезен при разработке собственных приложений. ;
- Other SIP Settings — прочие SIP – настройки, которые вы можете указать вручную (добавить соответствующее поле и его значение);
-

