asterisk меня не слышат
ИТ База знаний
Полезно
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Проблемы со слышимостью в Asterisk
Одной из распространенных проблем, с которыми сталкивается администратор IP – АТС Asterisk является проблема с аудио. Вы можете столкнуться как с односторонней слышимостью, так и с полным отсутствием аудио – потока. Как решить проблему с аудио в Asterisk с помощью FreePBX расскажем с статье.
Базовый курс по Asterisk
Мы собрали концентрат всех must have знаний в одном месте, которые позволят тебе сделать шаг вперед на пути к экспертному владению Asterisk
Проблемы с NAT
В подавляющем большинстве случаев проблемы с односторонней слышимостью вызваны настройками NAT (Network Address Translation). Ниже указаны шаги, выполнение которых поможет вам избавиться от проблем с аудио
Динамический DNS
Если ваша компания не оплачивает провайдеру услугу статического IP – адреса, то ваш внешний IP будет периодически меняться. Причиной может быть перезагрузка маршрутизатора или, например, истечение срока аренды адреса по протоколу DHCP (DHCP Lease Time). Отличной альтернативной будет динамическая DNS запись. Данная запись позволяет серверу DNS периодически обновлять соответствующий доменному имени IP – адрес. Вне зависимости от смены IP вашим провайдером, маршрутизатор будет всегда доступен по его доменному имени. Такие услуги предоставляет такие сервисы как dyndns, no-ip, hldns и другие.
Настройка NAT в FreePBX 13
На указанном выше примере, выбрана опция Static IP. Здесь, в выделенном красным поле необходимо указать ваш внешний IP – адрес. На примере ниже, указана опция настройки динамического DNS – выбрана кнопка Dynamic IP:
Локальные сети
Перейдя во вкладку General SIP Settings того же раздела, необходимо настроить внутренние сети. Например, 192.168.13.0/255.255.255.0. Это может быть отдельная сеть, в которой находятся IP – телефоны, или сеть, в которую вынесено все активное сетевое оборудование.
Не забывайте по окончанию настроек нажимать Submit и Apply Config
Настройка RTP портов
Проверьте чтобы на вашем маршрутизаторе не были заблокированы UDP порты 5060 (SIP) и диапазон портов 10000-20000 (RTP). Помимо этого, вы можете сделать проброс этих портов прямо на ваш сервер IP – АТС Asterisk. Перепроверьте, что транспортным протоколом является именно UDP.
Проблемы с настройкой кодеков
Каждый раз, когда вы совершаете вызов, обе стороны, инициирующая и принимающая вызов согласует телефонный кодек. Например, одна из сторон может инициировать согласование кодека g.711u, который может не поддерживаться другой стороной. Это может являться причиной отсутствия аудио в разговоре. Мы рекомендуем всегда включать поддержку кодеков G.711 u – закона и a – закона. Настроить телефонные кодеки можно следующими способами:
Мы рекомендуем не настраивать кодеки индивидуально на телефонном аппарате. В случае возникновения каких – либо проблем, на этапе «траблшутинга» вы можете потратить лишнее время просто забыв о данной настройке
Проблема с воспроизведением аудио файлов
Если при звонке на голосовое меню (IVR) вы не слышите ожидаемую аудио – запись, проверьте, корректно ли был импортирован этот файл через модуль System Recordings. Помимо этого проверьте права этого файла. Владельцем этого файла (owner) должен быть пользователь asterisk. В рамках решения проблемы дайте команду amportal chown :
Продвинутый курс по Asterisk
Концентрат редких знаний, для внедрения Asterisk в крупных предприятиях. Все это мы собрали в одном курсе для тебя.
Проблема NAT при использовании ASTERISK и отсутствие звука
Далее будем исходить из того, что соединение устанавливается (т.е. проблем на уровне SIP нет). Признаком потери RTP пакетов будет отсутствие звука в одном направлении или в обоих. Фактически это означает, что при работе с Asterisk нет звука.
На диаграммах, которые строит Wireshark можно увидеть, что RTP трафик ходит только в одном направлении или не ходит — причина в большинстве случаев в неверной настройке сервера телефонии на работу с NAT.
NAT, как известно, ставится на границе локальной и глобальной сетей и преобразует локальные адреса в публичные — делать это он может для исходящего трафика и для входящего.
Применительно к NAT существует несколько способов настройки Asterisk в зависимости от существующей конфигурации сети.
ASTERISK на выделенном IP адресе, клиенты за NAT
Распространенным случаем (особенно при использовании виртуального сервера телефонии) являются клиенты за NAT, сервер же находится на публичном выделенном IP адресе.
При отсутствии настройки пакеты, посредством которых передается голос, направляются клиентами на серый локальный адрес и до сервера, естественно, не доходят — результатом будет потеря звука.
Чтобы избежать потери звука потребуется отредактировать sip.conf:
[general]
localnet=192.168.1.1/24
externip=185.12.48.1
[user1]
nat=yes
qualify=300
localnet здесь — параметр в котором нужно задать диапазон из локальной сети, из которого получают IP адреса клиенты.
В качестве externip задается белый адрес сервера с Asterisk.
Также делаем указание на то, что на стороне клиентов используется NAT и задаем проверку соединения каждые 300 мс.
ASTERISK — за NAT, клиенты находятся в публичной сети
Другой случай: Asterisk находится за NAT, клиенты снаружи. На практике такое может быть при подключении удаленных сотрудников к серверу телефонии, находящемуся в локальной сети. RTP пакеты при некорректной настройке будут передаваться от звонящего, в обратную сторону голосовой трафик не пойдет.
Настройка в sip.conf похожа на использованную в предыдущем случае, но для клиентов запрещается reinvite, т.е. трафик может ходить только через сервер. клиенты между собой напрямую общаться не могут.
[general]
localnet=192.168.1.1/24
externip=192.168.1.2
[user1]
nat=yes
canreinvite=no
Также стоит убедиться, что в rtp.conf задан диапазон портов (начальный и конечный порт) и что движение трафика через них не ограниченно в iptables.
rtpstart=10000
rtpend=20000
Asterisk и SIP-клиенты находятся за NAT
Последний типичный случай: и сервер Asterisk и SIP-клиенты находятся за NAT.
Настройка в этом случае полностью аналогична предыдущему случаю, однако дополнительно требуется настроить проброс портов:
Здесь eth0 — интерфейс, смотрящий в Интернет, 192.168.1.2 — IP адрес Asterisk; первой директивой пробрасывается DTP трафик с диапазоном портов 10000-20000, второй — SIP трафик на порт 5060.
При подключении к провайдеру SIP телефонии всегда следует изучить имеющуюся справочную информация по настройке сервера для работы с NAT или запросить таковую.
Также в сети можно найти схемы поиска причин отсутствия звука при работе с Asterisk. Авторскими данные схемы не являются, однако они очень хорошо составлены и могут оказаться полезны при траблшутинге, поэтому ссылки на них приводятся в рамках данного материала.
Схема: Asterisk — нет звука при входящих
Схема: Asterisk — нет звука при исходящих
Схемы доступны по ссылкам в максимальном разрешении.
Asterisk 11 за NAT, нет звука в одну сторону, нет слышимости. Что делать?
Опубликовано в Asterisk
Преодоления NAT для Asterisk бывает очень сложной задачей (нет звука), потому как RTP трафик и SIP сигнализация идут отдельно. В интернете практически все описания настроек опции NAT, сводятся к более старым версия Asterisk 1.8. Попытаемся рассмотреть опции настроек, для актуального Asterisk 11. Если у вас нет звука, нет звука в одну сторону, нет слышимости, прочтите внимательно эту инструкцию.
Когда клиент пытается инициировать сеанс связи, оно отправляет SIP сообщение, содержащее его IP-адрес и некоторую дополнительную информацию. Получив это сообщение, Asterisk использует его, чтобы определить, куда отправить ответ на это сообщение. Поскольку устройство находится за NAT, SIP-сообщение будет иметь серый адрес, например, 192.168.1.104. Тем не менее, мы можем сообщить Asterisk, игнорировать SIP-адрес этого сообщения, а вместо этого использовать то, что поставляется сетевым стеком. Рассмотрим какие опции мы можем использовать в sip.conf для преодоления NAT:
Стоит заметить что начиная с версии Asterisk 11: nat=yes устарело, и необходимо использовать nat=force_rport,comedia.
RFC 3581 позволяет одному клиенту использовать параметр rport, для того чтобы передать другому клиенту, что оно должно реагировать на адрес источника IP и порт запрос, а не на IP адрес прописанный в SIP заголовке. Установка параметра rport может произойти, когда устройство знает, что он находиться за NAT и не может записать информацию, которая была бы необходима, для связи в обоих направлениях, в заголовке SIP. Asterisk всегда читает параметр rport, если он передается, но так как это происходит не так часто, как хотелось бы, мы можем заставить Asterisk предположить, что устройство будет передавать параметр rport. Выполняя это, мы заставляем Asterisk всегда отвечать на адрес IP и порт источника сообщения, от которого он получил запрос. Если настройки NAT явно не определены, Asterisk будет выполнять auto_force_rport, в качестве параметра по умолчанию. Вы можете принудительно изменить такое поведение, установив nat=force_rport.
Во многих реализациях NAT, при не получении пакетов поддержки диалога, может происходить закрытие соединения. В Asterisk для предотвращения этого используется опция qualify=yes, выполняющая отправку OPTIONS серверу каждые 2000 миллисекунд (2 секунды), не давая закрыть сессию NAT устройством. Также можно указать свое время в миллисекундах:
SIP клиенты и Asterisk за NAT
Есть два основных варианта, когда Asterisk находится за NAT: externaddr и extern хост.
Внешний адрес шлюза (маршрутизатора) во внешнюю сеть. «externaddr = hostname[:port]» указывает статический адрес[:port] который будет использован в SIP и SDP сообщениях. Имя хоста (hostname) поднимается каждый раз, когда [пере]загружается sip.conf. Если порт не назначен, используется значение указанное в параметре «udpbindaddr».
«externhost = hostname[:port]» то же что и «externaddr» только это ‘hostname’ обновляемое через «externrefresh» секунд (по умолчанию 10сек.).
Параметр ‘localnet’ указывает список сетевых (серых) адресов, согласно RFC1918, которые считаются «внутренними».
Обработка RTP медиа потоков.
В том случае когда вы используете внешнего VoIP провайдера, а ваш Asterisk находиться за NAT устройством, необходимо использовать опцию directmedia=no:
Стоит упомянуть, если ваш провайдер VoIP использует RTP медиа сервер с IP адресом отличным от SIP сервера, а сам Asterisk находиться за NAT, опция directmedia=no может не подойти для вас.
Asterisk будет всегда использовать симметричный режим RTP, как определено в RFC 4961, это означает то, что Asterisk всегда будет отправлять пакеты из того же порта, и то которого их получил. Значение по умолчанию directmedia=yes, так что если у вас есть конечные точки за NAT, вы должны установить опцию directmedia=no.
IP адрес используемый для RTP (аудио, видео и текста) в SDP может быть переназначен параметром media_address. Данный параметр может быть использован только в секции [general].
ICE/STUN/TURN использование может быть включено глобально или для конкретного пира, с помощью icesupport опции, по умолчанию эта опция выключена.
Asterisk + клиент за натом = нет голоса при входящем
Зарегистрирован: 22.07.2005
Пользователь #: 27,694
Сообщения: 8462
Житель sysadmins
Зарегистрирован: 22.07.2005
Пользователь #: 27,694
Сообщения: 8462
Зарегистрирован: 22.07.2005
Пользователь #: 27,694
Сообщения: 8462
Зарегистрирован: 28.02.2008
Пользователь #: 67,382
Сообщения: 821
Зарегистрирован: 22.07.2005
Пользователь #: 27,694
Сообщения: 8462
Зарегистрирован: 28.02.2008
Пользователь #: 67,382
Сообщения: 821
Зарегистрирован: 22.07.2005
Пользователь #: 27,694
Сообщения: 8462
Зарегистрирован: 28.02.2008
Пользователь #: 67,382
Сообщения: 821
Зарегистрирован: 22.07.2005
Пользователь #: 27,694
Сообщения: 8462
Зарегистрирован: 28.02.2008
Пользователь #: 67,382
Сообщения: 821
forum.lissyara.su
Asterisk слышимость в одну сторону
Модераторы: GRooVE, alexco
Asterisk слышимость в одну сторону
Asterisk настроен на внешний sip sipnet.ru, все сделано по доке
Когда звоню, меня слышат отлично, но я ничего не слышу.
Сервер:
OS: Freebsd 7.0, Asterisk 1.4.21.2
Клиент:
winxp
X-Lite
Сервер находится за NAT, на котором для него все открыто. Если настраиваю XLite на Sipnet.ru, то слышимость в обе стороны нормальная.
В каком направлении копать?
Услуги хостинговой компании Host-Food.ru
Re: Asterisk слышимость в одну сторону
Re: Asterisk слышимость в одну сторону
Re: Asterisk слышимость в одну сторону
Re: Asterisk слышимость в одну сторону
Все нормально уже слышно в обе стороны, пришлось порты пробрасывать udp 10000-20000 и все заработало,работает пока нормально,
ну вот еще проблема
на АТС и на шлюзе вот такие вот, где и как его можно настроить на Астериске или может я не прав?
- assunta madre ресторан меню
- asterisk настройка голосового меню