FreePBX за NAT
Установите модуль Asterisk SIP Settings
Предполагается что с вашего сервера/роутера проброшены порты:
5060 UDP - для инициации SIP соединения.
10000 - 20000 UDP - для голосовых пакетов. (диапазон можно уменьшить в файле /etc/asterisk/rtp.conf)
Установите следующие значения
NAT - yes
IP configuration - Static IP
Extern IP - 123.123.123.123 -внешний IP адрес
Local Networks - 192.168.0.0/255.255.255.0 -локальная сеть
Reinvite Behavior - No
FreePBX Asterisk SIP Settings
Модуль Asterisk SIP Settings устанавливает параметры SIP, аналогично секции [general] файла sip.conf.
Глобальные настройки могут быть переопределены для конкретных FreePBX 13 Extensions - Внутренние номера или транков в модуле FreePBX SIP Trunk.
В FreePBX 12 включена поддержка драйвера канала SIP - pjsip.
В связи с этим Модуль Asterisk SIP Settings разделен на несколько частей:
Изменить использование драйвера можно в модуле Settings > Asterisk Settings - Dialplan and Operational - SIP Channel Driver
General SIP Settings
В разделе General SIP Settings указывается externip сервера, localnet, диапазон RTP портов и используемые кодеки.
А также разрешаются или запрещаются анонимные вызовы.
Chan SIP
NAT
Настройки NAT в Астериск:
- yes = Всегда игнорировать пакет info и предполагать NAT.
- no = Использовать режим NAT в соостветствии с RFC3581.
- never = Никогда не пытаться использовать NAT или RFC3581.
- route = предполагая NAT не указывать rport.
IP Configuration
- Public IP - У сервера один публичный ethernet интерфейс.
- Static IP - Сервер стоит за NAT, или имеет два ethernet интерфейса - локальный и публичный.
- Dynamic IP - У сервера публичный динамический IP адрес.
External IP
IP адрес через который осуществляются внешние регистрации. (Внешний IP роутера или IP внешнего интерфейса данной машины)
Например:
- 123.123.123.123
Local Networks
Внутренние подсети из которых возможны регистрации.
Например:
- 192.168.0.0/255.255.0.0
- 10.10.10.0/255.255.255.0
Audio Codecs
Список Аудио кодеков используемых в системе.
Non-Standard g726
Нестандартный g726 для некоторых типов оборудования. yes/no
T38 Pass-Through
Поддержка T38 в транзитном режиме. Например если канал или устройство используют Т38,
Asterisk обеспечит транзит без обработки медиа потока(без конвертации кодеков).
yes/no
Video Codecs
Video Support
Enable/Disable -
Если включить появится список поддерживаемых кодеков:
- h264
- h263p
- h263
- h261
Max Bit Rate
Максимальная полоса пропускания для видео:
по умолчанию 384 kb/s
MEDIA & RTP Settings
Reinvite Behavior
Поведение ReInvite - см. подробнее > reinvite
- yes: стандартный reinvite;
- no: никогда не использовать reinvite;
- nonat: дополнительная опция, разрешающая перенаправить медиа поток (reinvite), но только если пир установлен не за NATом (RTP может определить это на основе ИП адресов абонентов)
- update: используется специальный SIP пакет UPDATE для принятия решения о перенаправлении вместо пакета INVITE. (Значение yes соответствует = update + nonat)
RTP Timers
rtptimeout. Завершает звонок если в установленное в секундах значение rtptimeout не обнаруживается активности RTP или RTCP в аудио канале и если абонент не поставлен на Hold (ожидание). Это позволяет завершить звонок в случае внезапного исчезновения телефона из сети, например при потере питания или повреждении кабеля Ethernet.
rtpholdtimeout. Завершает звонок если в установленное в секундах значение rtpholdtimeout не обнаруживается активности RTP или RTCP в аудио канале при состоянии on Hold (в ожидании). Значение должно быть > чем rtptimeout.
rtpkeepalive. Посылает пакеты rtpkeepalive в RTP поток для поддержки открытых динамических трансляций NAT в то время, когда RTP поток может например стоять на удержании.
- 30 (rtptimeout)
- 300 (rtpholdtimeout)
- 0 (rtpkeepalive)
RTP Port Ranges
Диапазон Real Time Protocol портов используемых Asterisk
- 10000 (rtpstart)
- 20000 (rtpend)
Notification & MWI
Уведомления и Индикатор ожидающих сообщений(MWI)
MWI Polling Freq
Частота запросов в секундах для обновления информации о пирах.
Notify Ringing
Контролирует внутренний номер о состоянии абонента INUSE получением пакета RINGING если уже принят один звонок. Удобно при использовании BLF - Busy Lamp Functionality. yes/no
Notify Hold
Контролирует внутренний номер о состоянии абонента INUSE получением пакета ONHOLD если звонок поставлен на ожидание Удобно при использовании BLF - Busy Lamp Functionality. yes/no
Registration Settings
Registrations
registertimeout. Повторяет попытки регистрации каждые N секунд, указанные в registertimeout до успешной регистрации, или при достижении указанного ограничения в registrationattempts.
registrationattempts. Количество попыток регистрации. Значение 0 соответствует бесконечному числу попыток. Обычное значение указывается 0 для того, чтобы Астериск продолжал попытки зарегистрироваться при пропадании локальной сети или маршрута в публичных сетях.
- 20 (registertimeout)
- 0 (registerattempts)
Registration Times
minexpiry. Минимальное значение действия регистрации/подписки.
maxepiry. Максимально возможное время действия для входящих регистраций.
defaultexpiry. Дефолтное значение действия входящих и исходящих регистраций.
- 60 (minexpiry)
- 3600 (maxexpiry)
- 120 (defaultexpiry)
Jitter Buffer Settings
Jitter Buffer
Enabled/Disabled
Force Jitter Buffer
Yes/No
Implementation
Fixed/Adaptive
Jitter Buffer Logging
Enable/Disable
Jitter Buffer Size
- 200(jbmaxsize)
- 1000(jbresyncthreshold)
Advanced General Settings
Language
Язык звуковых сообщений в канале SIP.
Default Context
Контекст по умолчанию для входящих вызовов. Если не указано, то from-sip-external.
Bind Address
IP адрес на котором 'слушаются' входящие вызовы. Если указано 0.0.0.0, то будут «прослушиваться» все доступные IP адреса. Рекомендуется оставить это поле ПУСТЫМ.
Bind Port
Входящий порт на котором Asterisk будет слушать SIP сообщения. Стандартный порт 5060. Например, если вы назначите порт 5666, входящие SIP сообщения на другие порты будут просто игнорироваться. Рекомендуется отставить это поле пустым.
Allow SIP Guests
Разрешить неавторизованные SIP вызовы. Звучит опасно, но на самом деле позволяет вызывать абонента Asterisk незарегистрированному абоненту по SIP URI: user@asterisk_domain. Yes/No
Allow Anonymous Inbound SIP Calls
В данном случае рассматриваются анонимные SIP запросы, не имеющие определенного адресата. Если включить они попадут в контекст from-sip-exteral (если не задано другое в Default Context) Yes/No
SRV Lookup
Enabled/Disabled
Call Events
Генерировать события AMI на основании действий UA во время вызова (например HOLD).
Yes/No
Other SIP Settings
Добавьте кастомные установки, которые вам требуются.
Например:
- alwaysauthreject = yes всегда отвечать на SIP запрос - SIP «401 Unauthorized»
- prematuremedia = no
- progressinband = yes
транслировать КПВ или сообщение из канала (например, по умолчанию, при вызове на занятый или отключенный мобильный телефон, Астериск сообщит что все канала заняты, что вводит пользователей в замешательство. Включенная установка progressinband позволит транслировать в канал сообщение о занятости или недоступности абонента от провайдера.
Chan_PJSIP
General Chan PjSIP Settings
Подробнее о настройке драйвера pjsip
В данном модуле настраивается транспортный уровень драйвера pjsip.