Курсы по использованию Asterisk

IP-телефония — технология будущего. Обучитесь работе с IP-АТС Asterisk для того чтобы внедрить и профессионально использовать при решении коммуникационных задач.

Работайте с Asterisk профессионально!

Многоуровневая защита IP-АТС Asterisk

Телефонные станции очень часто становятся объектами хакерских атак. Узнайте, каким образом необходимо строить многоуровневую защиту для Вашей IP-АТС.

Не оставьте хакерам шансов. Защитите свой Asterisk от атак.

Используйте Веб-Интерфейс для удобства настройки

Панель управление FreePBX позволяет легко и удобно управлять всей системой. Научитесь эффективно использовать FreePBX для решения своих задач.

Управление станцией и статистика в окне браузера.

Научитесь работать с Asterisk из консоли

Для понимания работы с Asterisk необходимо уметь настраивать его вручную с конфигурационными файлами и командной строкой CLI Asterisk.

Научитесь «тонкой» настройке Asterisk

Цель курсов - максимум практики.

Обучение нацелено на практическую работу с IP-оборудованием: платы потоков E1, VoIP-телефонные аппараты, голосовые шлюзы FXS и прочее.

Обучение на реальном оборудовании — залог успеха.

Wireshark – методика анализа проблем с транком.

База знаний Настройка Asterisk

Нередко приходится сталкиваться с ситуациями, когда невозможно позвонить через транк или принять на него вызов. Перечень проблем может быть самым разнообразным. В данной статье будут рассмотрены некоторые проблемные ситуации, методы диагностики путём анализа SIP-диалогов, а так же возможные пути для их разрешения.

Содержание

1.Проблемы с оплатой услуг связи.

2.Некорректный набор номера.

 

1.Проблемы с оплатой услуг связи.

Ещё вчера всё работало, а сегодня вдруг не звонит? Давайте рассмотрим один интересный случай:

Первым делом скачайте дамп с примером вызова.

Итак, после открытия дампа, увидим следующее:

Дамп в раскрытом виде.

 

Далее переходим в Telephony – VoIP Calls:

Telephony -> VoIP Calls.

 

Перед глазами видим 2 сессии одного вызова, а так же оба они в статусе REJECTED, что значит “Отклонено”. Давайте разбираться, в чём дело. Открываем оба вызова:

Call Rejected.

Займёмся анализом Call-Flow диаграммы:

Анализ Call-Flow диаграмма.

Обычно не имеет никакого смысла сравнивать сессии одного звонка по-отдельности, поэтому будем анализировать сразу две. Для нативности я проведу анализ попунктно.

    1) Первый INVITE идёт от нашего софтфона к серверу, затем наш сервер посылает INVITE на сервер оператора связи. 2) Затем наш сервер получает ответ от оператора 100 Trying, который означает, что сервер оператора обрабатывает наш запрос. 3)Следующий ответ от провайдера 401 Unauthorized. Не стоит пугаться, это совершенно нормальный ответ от любого сервера телефонии о том, что пользователь не авторизовался для совершения звонка. Его стоит трактовать как запрос логина и пароля.

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

    Комментарий потока

      4) Телефон, получив ответ от нашего сервера 401 Unauthorized, отправляет ответ ACK. В нашем случае данный ответ означает, что мы отправляем на сервер оператора поля вызываемого абонента, т.к. в первом сообщении INVITE включено тело с описанием параметров вызова в SDP.

    SDP в INVITE.

    С ответом ACK возможен иной вариант развития событий. Например, когда в первом сообщении INVITE не было включено тело, содержащее SDP сообщение. В таком случае первое сообщение ACK будет содержать SDP сообщение вызываемого абонента. Иная же сторона отправит ACK для завершения процесса установления соединения, которое будет содержать нужные для этого поля в SDP. SDP, в свою очередь - это протокол, служащий для описания сессии передачи потоковых данных (аудио, видео).

      5) После отправки ACK, отправляется повторный INVITE, содержащий данные для авторизации. 6) После того, как сервер оператора получает INVITE, он снова отвечает 100 Giving a try, что значит, что данные приняты в обработку. Телефон так же получает от нашего сервера ответ 100 Trying. 7) Следом наш телефон получает ответ от нашего сервера 183 Session Progress. Используется для получения описания сессии обмена информации по направлению к вызываемому пользователю.

    До этого момента со стороны нашего сервера и сервера оператора всё было хорошо, далее кроется вся суть.

      8) Внезапно мы получаем ответ от сервера оператора 402 Payment Required, что означает потребность в оплате вызова. 9) Затем наш сервер отправляет на софтфон 503 Service Unavaliable. Это значит, что сервер не может обслужить вызов. 10) Далее софтфон отправляет на сервер оператора связи последний ACK, в котором содержится подтверждение на окончания сессии.

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

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

    2.Некорректный набор номера.

    Рассмотрим другой пример:

    Открываем дамп, далее рассмотрим потоковые секвенции:

    Потоковые секвенции двух звонков.

    Скриншот: потоковые секвенции двух звонков.

    Первым проанализируем этот:

      1) Наш сервер посылает INVITE на сервер оператора связи. 2) Обратно получаем 407 Proxy Authentication Required, что говорит о необходимости авторизации на прокси-сервере, это нормально. 3) Следующим уходит АСК с полями вызываемого абонента. 4) Затем мы посылаем второй INVITE с данными для авторизации на прокси. 5) Получаем 100 Giving a try – данные в обработке на сервере оператора связи. 6) Затем дважды запрашивается описание сессии обмена информации – 183 Session Progress. 7) 404 – Not Found, получаем ответ от оператора. Данный ответ означает, что данного номера не существует или вызываемый абонент не существует. 8) Завершаем звонок ответом ACK о согласии завершить сессию.

    В данной статье приведены лишь два случая из возможного множества, но их более, чем достаточно для того, чтобы наглядно продемонстрировать методику чтения и анализа дампов, особенно, если Вы грешите на оператора связи, а проблема фактически находится на Вашей стороне. Очень часто встречаются случаи, когда попросту заканчиваются деньги на счёте или оператор Call-центра совершает вызов в запрещённом направлении, направлении, которое не предоставляется фирме в качестве доступного, либо же оператор попросту производит набор номера не по шаблону оператора связи. У каждого ОС свой диалплан и это необходимо учитывать, при этом диалплан станции, дабы не возникало подобных каверзных ситуаций, можно скорректировать под конкретного оператора.

    sip