Меню

Ошибка sip 401 unauthorized

Модератор: april22

SIP/2.0 401 Unauthorized

Коллеги, есть пачка аккаунтов, одни работают прекрасно в одной сети с asterisk, другие отказываются регистрироваться, разница, они ходят по ipsec.

Код: выделить все
[2017-02-08 11:00:20] VERBOSE[444] chan_sip.c: Scheduling destruction of SIP dialog '2058791893-5060-2@BA.HH.BI.CA' in 32000 ms (Method: REGISTER)
[2017-02-08 11:00:22] VERBOSE[444] chan_sip.c:
<--- SIP read from UDP:10.77.18.20:5060 --->
REGISTER sip:10.0.15.2:5160 SIP/2.0
Via: SIP/2.0/UDP 10.77.18.20:5060;branch=z9hG4bK1888020423;rport
From: <sip:7157@10.0.15.2:5160>;tag=2063889987
To: <sip:7157@10.0.15.2:5160>
Call-ID: 2058791893-5060-2@BA.HH.BI.CA
CSeq: 3095 REGISTER
Contact: <sip:7157@10.77.18.20:5060>;reg-id=1;+sip.instance="<urn:uuid:00000000-0000-1000-8000-000B8296655C>"
Max-Forwards: 70
User-Agent: Grandstream GXP1610 1.0.2.27
Supported: path
Expires: 3600
Allow: INVITE, ACK, OPTIONS, CANCEL, BYE, SUBSCRIBE, NOTIFY, INFO, REFER, UPDATE, MESSAGE
Content-Length: 0

<------------->
[2017-02-08 11:00:22] VERBOSE[444] chan_sip.c: --- (13 headers 0 lines) ---
[2017-02-08 11:00:22] VERBOSE[444] chan_sip.c: Sending to 10.77.18.20:5060 (no NAT)
[2017-02-08 11:00:22] VERBOSE[444] chan_sip.c:
<--- Transmitting (no NAT) to 10.77.18.20:5060 --->
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 10.77.18.20:5060;branch=z9hG4bK1888020423;received=10.77.18.20;rport=5060
From: <sip:7157@10.0.15.2:5160>;tag=2063889987
To: <sip:7157@10.0.15.2:5160>;tag=as130a1868
Call-ID: 2058791893-5060-2@BA.HH.BI.CA
CSeq: 3095 REGISTER
Server: FPBX-13.0.190.11(13.11.2)
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="3fef4932"
Content-Length: 0

valmon
 
Сообщений: 23
Зарегистрирован: 09 июн 2016, 11:50

Re: SIP/2.0 401 Unauthorized

Сообщение april22 » 08 фев 2017, 12:25

LocalNet — ?

Своими вопросами , вы загоняете меня в ГУГЛЬ.

april22
 
Сообщений: 2187
Зарегистрирован: 09 июл 2012, 09:47

Re: SIP/2.0 401 Unauthorized

Сообщение ded » 08 фев 2017, 12:44

Localnet определяет адресацию RTP — голоса, при установлении соединения, а тут — REGISTER.

Что происходит? Телефон 7157 с адреса 10.77.18.20 запрашивает на Астериск 10.0.15.2 регистрацию, Астериск отвечает — SIP/2.0 401 Unauthorized, регистрируйся, говорит, используя WWW-Authenticate: Digest algorithm=MD5, realm=»asterisk», nonce=»3fef4932″

Вот тут телефон 7157 должен посылать ещё один REGISTER с аутентификацией — дайджестом. Но — не посылает. Подозреваю, потому что до него не добегает пакет SIP/2.0 401 Unauthorized, потому что там стоит у вас no NAT:
Sending to 10.77.18.20:5060 (no NAT)
А скорее всего туннель криво настроен, там может быть и NAT. То есть между 10.0.15.2 и 10.77.18.20 должно быть два скачка, и на телефоне должен быть точно адрес 10.77.18.20, есть такое?

ded
 
Сообщений: 15458
Зарегистрирован: 26 авг 2010, 19:00

Re: SIP/2.0 401 Unauthorized

Сообщение valmon » 08 фев 2017, 12:50

april22 писал(а):LocalNet — ?

LocalNet 10.0.15.0, но это уже другая история, сигналка ходит норм.

valmon
 
Сообщений: 23
Зарегистрирован: 09 июн 2016, 11:50

Re: SIP/2.0 401 Unauthorized

Сообщение valmon » 08 фев 2017, 12:53

Вот и я про это, они без конца шлют REGISTER и SIP/2.0 401 Unauthorized, ната там нет, все маршрутизируется прозрачно, все ip реальные

valmon
 
Сообщений: 23
Зарегистрирован: 09 июн 2016, 11:50

Re: SIP/2.0 401 Unauthorized

Сообщение ded » 08 фев 2017, 13:52

ded
 
Сообщений: 15458
Зарегистрирован: 26 авг 2010, 19:00

Re: SIP/2.0 401 Unauthorized

Сообщение virus_net » 08 фев 2017, 14:21

Надо просто сдампать что получает и получает ли 10.77.18.20. Зеркало порта или тупо ноут с Zoiper и tcpdump/windump.
И многое сразу станет понятным.

мой SIP URI sip:virus_net@asterisk.ru
bitname.ru — Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER — звони бесплатно и напрямую.

virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: SIP/2.0 401 Unauthorized

Сообщение ded » 08 фев 2017, 14:43

Я без дампа скажу: когда Астериск отвечает — SIP/2.0 401 Unauthorized, регистрируйся, говорит, используя WWW-Authenticate: Digest algorithm=MD5, realm=»asterisk», nonce=»3fef4932″
то он отвечает не с source IP addr 10.0.15.2 (или не с порта 5160), поэтому телефон этот пакет игнорирует.

ded
 
Сообщений: 15458
Зарегистрирован: 26 авг 2010, 19:00

Re: SIP/2.0 401 Unauthorized

Сообщение valmon » 08 фев 2017, 15:32

virus_net писал(а):Надо просто сдампать что получает и получает ли 10.77.18.20. Зеркало порта или тупо ноут с Zoiper и tcpdump/windump.
И многое сразу станет понятным.

Из железа, там только домашний роутер и аппарат.
Самое интересное, что до этого был другой asterisk и находился в другой сети и на другом порту, стандартном, все работало, само собой мы поменяли настройки ipsec. Нечего кардинально не менялось, может сам asterisk трафик не отправляет.

valmon
 
Сообщений: 23
Зарегистрирован: 09 июн 2016, 11:50

Re: SIP/2.0 401 Unauthorized

Сообщение valmon » 08 фев 2017, 16:01

ded писал(а):Я без дампа скажу: когда Астериск отвечает — SIP/2.0 401 Unauthorized, регистрируйся, говорит, используя WWW-Authenticate: Digest algorithm=MD5, realm=»asterisk», nonce=»3fef4932″
то он отвечает не с source IP addr 10.0.15.2 (или не с порта 5160), поэтому телефон этот пакет игнорирует.

Ну судя по tcpdump он отвечает с 5060, но в этом ли причина, все тоже самое работает внутри.

valmon
 
Сообщений: 23
Зарегистрирован: 09 июн 2016, 11:50


Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

1xx – информационные ответы


SIP/2.0 100 Trying
Запрос обрабатывается.

SIP/2.0 180 Ringing
Местоположение вызываемого пользователя определено. Выдан сигнал о входящем вызове.

SIP/2.0 181 Call is Being Forwarded
Прокси-сервер переадресует вызов к другому пользователю.

SIP/2.0 182 Call is Queued
Вызываемый абонент временно недоступен. Вызов поставлен в очередь.

SIP/2.0 183 Session Progress
Используется для того, чтобы заранее получить описание сеанса информационного обмена от шлюзов на пути к вызываемому пользователю.

2xx – ответы о завершении запроса


SIP/2.0 200 OK
Успешное завершение.

SIP/2.0 202 Accepted
Запрос принят для обработки. Используется для справки о состоянии обработки.

3xx – сообщения о переадресации


SIP/2.0 300 Multiple Choices
Указывает несколько SIP-адресов, по которым можно найти вызываемого пользователя.

SIP/2.0 301 Moved Permanently
Вызываемый пользователь больше не находится по адресу, указанному в запросе.

SIP/2.0 302 Moved Temporarily
Пользователь временно сменил местоположение (настроена переадресация по SIPUA в т.ч. с VOIP-телефона).

SIP/2.0 305 Use Proxy
Вызываемый пользователь недоступен непосредственно. Входящий вызов должен пройти через прокси-сервер.

SIP/2.0 380 Alternative Service
Запрошенная услуга недоступна, но доступны альтернативные услуги.

4xx – невозможность обработать запрос


SIP/2.0 400 Bad Request
Запрос не распознан из-за синтаксических ошибок или ошибок в сигнализации.

SIP/2.0 401 Unauthorized
Нормальный ответ сервера о том, что пользователь еще не авторизовался. Обычно после этого абонентское оборудование отправляет на сервер новый запрос, содержащий логин и пароль.

SIP/2.0 401 AUTH Error: Stall nonce
1.Разные данные в поле NONCE (шифр пароля), проверить дату/время или проблема с протоколом шифрования
2. Проверить на клиентской стороне не заблокирован ли sipnet.ru (212.53.40.40)
3. Проверить в ВАТС статус присутствия. Должен быть «нет».

SIP/2.0 401 Expired Authorization
Время регистрации истекло.

SIP/2.0 402 Payment Required
Требуется оплата (зарезервирован для использования в будущем).

SIP/2.0 403 No Such User
Нет такого пользователя. Ошибка в номере, логине или пароле.

SIP/2.0 403 No license available
Кончились лицензия на SIP

SIP/2.0 403 You
Нет такого пользователя. Ошибка в номере, логине или пароле.

SIP/2.0 403 User Disabled
Пользователь отключен.

SIP/2.0 403 You do not have the required right
Неверный логин в поле «From»

SIP/2.0 403 Wrong Guess
Ошибка в пароле.

SIP/2.0 403 Conflict
Такой SIP-номер уже используется.

SIP/2.0 403 Forbidden
Абонент не зарегистрирован.

SIP/2.0 403 Empty Route Set
Нет ни одного шлюза в роутинге.

SIP/2.0 403 Caller Not Registered
Нет такого пользователя.

SIP/2.0 403 Out of Look-Ahead Retries
Перебор узлов закончен.

SIP/2.0 403 Invalid Phone Number
Нет такого направления.

SIP/2.0 403 No Money Left on RFC Account
На счету недостаточно денежных средств для совершения вызова.

SIP/2.0 404 Not found
Вызываемый абонент не найден, нет такого SIP-номера.

SIP/2.0 404 Undefined Reason
Неопределенное направление.

SIP/2.0 404 Unknown user account
Логин и пароль не найдены.

SIP/2.0 404 Out of Order
В заявке на маршрутизацию по этому направлению нет принимающих шлюзов.

SIP/2.0 405 Method Not Allowed
Метод не поддерживается. Может возникать если пользователь пытается отправлять голосовую почту и т.п.

SIP/2.0 406 No codecs match
Неправильная конфигурация кодеков.

SIP/2.0 406 Not Acceptable
Пользователь недоступен.

SIP/2.0 407 Proxy Authentication Required
Необходима аутентификация на прокси-сервере.

SIP/2.0 407 User not found
Проверить ID на CGP

SIP/2.0 408 Request Timeout
Время обработки запроса истекло. Абонента не удалось найти за отведенное время. (Проблема с firewall, нет ответа на Invite от сервера)

SIP/2.0 408 Login timed out
За отведенное время не получен ответ от сервера на запрос авторизации.

SIP/2.0 410 No Route
Вариант «SIP/2.0 403 Empty Route Set». Нет доступа к ресурсу или ресурс по указанному адресу больше не существует.

SIP/2.0 413 Request Entity Too Large
Размер запроса слишком велик для обработки на сервере.

SIP/2.0 415 No Media
Звонок совершается неподдерживаемым кодеком.

SIP/2.0 416 Unsupported Scheme
Сервер не может обработать запрос из-за того, что схема адреса не распознана.

SIP/2.0 420 Bad extension
Неизвестное расширение. Сервер не распознал расширение протокола SIP.

SIP/2.0 421 Extension Required
В заголовке запроса не указано, какое расширение сервер должен применить для его обработки.

SIP/2.0 423 Interval Too Brief
Сервер отклоняет запрос, так как время действия ресурса короткое.

SIP/2.0 480 Invalid Phone Number
Неправильный номер телефона, не соответствует количеству цифр или неправильный код страны или города.

SIP/2.0 480 Destination Not Found In Client Plan
Нет направления в тарифном плане абонента.

SIP/2.0 480 Wrong DB Response
Проблемы с центральной базой данных.

SIP/2.0 480 DB Timeout
Проблемы с центральной базой данных.

SIP/2.0 480 Database Error
Проблемы с центральной базой данных.

SIP/2.0 480 Codec Mismatch
Несоответствие кодеков.

SIP/2.0 480 No Money Left on RFC Account
Недостаточно денежных средств на счету.

SIP/2.0 480 Empty Route Set
Пустое направление. Нет принимающих шлюзов.

SIP/2.0 480 No money left
Недостаточно денежных средств на счету.

SIP/2.0 480 Temporarily Unavailable
Временно недоступное направление. (Возможно статус DND)

SIP/2.0 481 Call Leg/Transaction Does Not Exist
Действие не выполнено. Нормальный ответ при поступлении дублирующего пакета.

SIP/2.0 482 Loop Detected
Обнаружен замкнутый маршрут передачи запроса.

SIP/2.0 483 Too Many Hops
Запрос на своем пути прошел через большее число прокси-серверов, чем разрешено.

SIP/2.0 484 Address Incomplete
Принят запрос с неполным адресом.

SIP/2.0 485 Ambiguous
Адрес вызываемого пользователя неоднозначен.

SIP/2.0 486 Busy Here
Абонент занят.

SIP/2.0 487 Request Terminated
Запрос отменен. Обычно приходит при отмене вызова.

SIP/2.0 488 Codec Mismatch
Нет шлюзов с поддержкой заказанного кодека.

SIP/2.0 488 Private IP Address
Адрес RTP media из сетей RFC1918.

SIP/2.0 488 Not acceptable here
Не совпадают кодеки

SIP/2.0 491 Request Pending
Запрос поступил в то время, когда сервер еще не закончил обработку другого запроса, относящегося к тому же диалогу.

SIP/2.0 493 Undeciperable
Сервер не в состоянии подобрать ключ дешифрования. Невозможно декодировать тело S/MIME сообщения.

SIP/2.0 499 Codec Mismatch
Отсутствует кодек.

5xx – ошибки сервера


SIP/2.0 500 Internal Server Error
Внутренняя ошибка сервера.

SIP/2.0 500 DB Timeout
Нет ответа от базы данных.

SIP/2.0 500 Database Error
То же самое, но в другой момент.

SIP/2.0 500 Wrong DB Response
Неправильный ответ базы данных.

SIP/2.0 500 Undefined Reason
Неопределенная причина.

SIP/2.0 500 account has been moved to a remote system
Аккаунт перенесен в удаленную систему (дословно).

SIP/2.0 500 Call placing quota exceeded
Превышен CPS.

SIP/2.0 501 Method Not Supported Here
В сервере не реализованы какие-либо функции, необходимые для обслуживания запроса. Метод запроса SIP не поддерживается.

SIP/2.0 502 Bad Gateway
Сервер, функционирующий в качестве шлюза или прокси-сервера, принимает некорректный ответ от сервера, к которому он направил запрос.

SIP/2.0 503 Service Unavailable
Сервер не может в данный момент обслужить вызов вследствие перегрузки или проведения технического обслуживания.

SIP/2.0 504 Server time-out
Сервер не получил ответа в течение установленного промежутка времени от сервера, к которому он обратился для завершения вызова.

SIP/2.0 505 SIP Version not supported
Версия не поддерживается. Сервер не поддерживает эту версию протокола SIP.

SIP/2.0 513 Message too big
Сервер не в состоянии обработать запрос из-за большой длины сообщения.

6xx – глобальная ошибка


SIP/2.0 600 Busy everywhere
Вызываемый пользователь занят и не желает принимать вызов в данный момент.

SIP/2.0 603 Decline
Вызываемый пользователь не желает принимать входящие вызовы, не указывая причину отказа.

SIP/2.0 604 Does Not Exist Anywhere
Вызываемого пользователя не существует.

SIP/2.0 606 Not Acceptable
Соединение с сервером было установлено. Отдельные параметры, такие как тип запрашиваемой информации, полоса пропускания, вид адресации не доступны.

Данная статья посвящена диагностике sip канала. Так же в рамках этой статьи рассмотрим и PJSIP, его настройку и диагностику.

Наладка SIP в Asterisk каналы PJSIP и CHAN_SIP

Хотя сторонние инструменты как sngrep, tcpdump и Wireshark являются прекрасными помощниками в поиске и устранении проблем с VoIP может возникнуть ситуация, что на системе нет возможности установить вышеперечисленные утилиты и единственная возможность разобраться только за счет самого asterisk. К счастью, asterisk так же способен помочь устранить неисправность.

Первичная проверка

Для начала нужно проверить, а запущен ли asterisk. Для этого нужно подключиться к серверу с помощью ssh-клиента (в нашем случае используем Putty).

Подключаемся к серверу 1

Вводим IP-адрес нашей АТС.

Подключаемся к серверу 2

После подключения под пользователем «root» видим следующее окно.

Подключаемся к серверу 3

Для проверки останется ввести лишь команду: asterisk -rv

Результат выполнения команды 1

Судя по сообщению выше выполнены следующие условия:

  •  К asterisk можно подключится
  •  Служба asterisk запущена, работает и не отваливается с ошибкой.

Если служба asterisk не запущена или отваливается с ошибкой то следует попытаться ее перезагрузить. Для этого не обязательно перезагружать весь сервер, достаточно выполнить следующие команды:

1.service asterisk stop (не обязательный пункт, пытаемся остановить работу asterisk если таковая имеется)
2.service asterisk restart

После чего вновь пробуем подключится к asterisk

Результат выполнения команды
Как видно выше – мы успешно перезагрузили asterisk и подключились к нему.

Диагностика SIP и оборудования связанного с ним. Отладка SIP протокола в Asterisk

Предположим, что у нас наблюдаются какие-то неполадки на внутреннем номере 120 и мы хотим посмотреть какие sip сообщения приходят от этого внутреннего номера и какие он sip-сообщения он получает. Для этого нужно выполнить следующие шаги:

1.Проверить, что IP адрес устройства не заблокирован fail2ban. Это можно сделать средствами iptables следующей командой: iptables -L –n

Результат выполнение команды 1Как видим выше, fail2ban пуст, переходим ко второму шагу.

2.Включить отладку sip для внутреннего номера 120 следующей командой: CLI> sip set debug peer 120

Эту же команду (и многие другие) можно выполнять не входя в asterisks и в нашем случае команда примет следующий вид: # asteriskrx «sip set debug peer 120″
Выполнения отладки

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

Зная какой ip адрес у пользователя, можно выполнить отладку немного иначе, а именно указать ip адрес пользователя: # sip set debug ip 192.168.1.1

Результат выполнение команды 2

Если требуется включить отладку всех sip сообщений, а не с какого-то определенного ip/peer, то команда выглядит следующим образом:

Результат выполнение команды 3

Однако учтите, что если через АТС в этот момент совершается много звонков, то и количество сообщений будет огромным.

Результаты можно проверить или в консоли asterisk или же в лог-файле.

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

Лог-файл располагается по следующему маршруту « /var/log/asterisk/full». Здесь можно выполнить поиск по ip-адресу устройства, или, к примеру, по типу сообщения. Давайте проверим файл по ключевому слову «REGISTER»

Применение команды

Если вы все сделали правильно, то вы получите нечто схожее тому, что вы можете видеть выше (если такие сообщения были). А теперь, после всей работы не забывайте выключать отладку т.к высока вероятность того, что на жестком диске попросту закончится место.

# asterisk -rx «sip set debug off»

Результат выполнение команды 4

Мы рассмотрели здесь базовую отладку средствами самого asterisk. Возможно, вам будет интересно почитать о утилите sngrep которая благодаря своему удобному интерфейсу и богатому функционалу может стать отличным инструментом для отладки и снятия дампа. Так же стоит ознакомиться с SIP-ответами и их значением которые будут приведены в конце статьи.

Типичные ошибки

Ошибка Wrong password. Одна из самых распространенных ошибок при регистрации нового ip-телефона. В консоли она имеет следующий вид:

error 1

Тем не менее, с ней не все так просто как может показаться на первый взгляд. Вы можете правильно записать пароль в поле «password» на устройстве, но все равно получить эту ошибку если используете пароль, содержащий больше 12 символов. Многие старые модели ip-телефонов и некоторые программные телефоны просто не поддерживают длинные пароли.

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

Впрочем, никто не застрахован от ошибки и вы действительно могли опечататься, когда вводили пароль.

Ошибка Device does not match ACL. Вторая распространенная проблема — deny и permit указанные в настройках устройства. Если телефон попробует зарегистрироваться из сети, которая не включена в список разрешенных сетей, то будет примерно следующая ошибка:

error 2

Учтите, что после 3-4 попыток неудачной регистрации IP-адрес устройства может быть забанен Fail2Banom, что, кстати, и случилось с нашим телефоном, переходим к следующей «ошибке».

Fail2Ban. Это не ошибка, но тем не менее если если от устройства не приходят попытки регистрации следует выполнить следующие шаги:

  •  Проверить, что IP-адрес устройства внесен в список разрешенных
  •  Проверить, что настройки устройства (в том числе и пароль) прописаны правильно.

Эти два нехитрых шага помогут избежать повторной блокировки устройства, теперь можно проверить список забанненых.

Выше уже писалось, что все можно проверить командой #iptables -L –n   (если вы так же хотите посмотреть используются ли нестандартные порты то введите

#iptables -L -nv -t nat ),

Применение команды 1

Нас интересует список банов где и оказался ip-адрес нашего устройства. Для того, чтоб IP удалить адрес нужно выполнить следующую команду
# service fail2ban restart после чего вновь проверяем список забаненых.

Применение команды 2

Если вы все сделал правильно, то устройство подключиться успешно. В этой статье мы не стали рассматривать проблемы которые могут возникнуть с trunk-ами т.к в принципе они схожи с теми которые мы перечислили выше.
NAT. Возможна такая ситуация, что подвиснет nat-сессия, чаще всего это возникает у удаленныхсотрудников. В таком случае нужно или перезагрузить роутер, либо использовать другой протокол (если по каким-то причинам в данный момент нет возможности перезагрузить роутер) к примеру, с udp на tcp. Так же проверьте правильность настроек NAT на телефоне и пире, а так же

протокол передачи, в обоих случаях они должны быть идентичны. Если на пире будет выставлен tcp, а телефон будет пытаться подключиться через

udp, то такую попытку регистрации сервер отобьет.

Отладка PJSIP протокола в Asterisk

PJSIP — мультимедийная коммуникационная библиотека, написанная на Си. Поддерживает такие протоколы как SIP, SDP, RTP, STUN, TURN, и ICE. Эта библиотека работает на различных платформах, начиная с хэндсетов и мобильных устройств и заканчивая высоконагруженными АТС. Начиная с asterisk 12 эта библиотека поддерживается частично и только в с asterisk 13 появилась полноценная поддержка. Для осуществления звонков программной АТС Asterisk

Главное отличие этого нового канального драйвера в том, что он хорошо работает с различными брандмауэрами и NAT, как в составе Asterisk-сервера, так и на клиентских устройствах.

Тем не менее, несмотря на ряд преимуществ перед Chan_SIP, PJSIP все еще не получил широкого применения из-за отличия конфигурации. Новый стек использует подход разделения конфигурации на логические разделы, поэтому создаются разные разделы для различных целей.

В данной статье мы рассмотрим основные способы отладки PJSIP. В Asterisk версии 13.8.0 был добавлен новый модуль — res_pjsip_history, который обеспечивает сбор, фильтрацию и отображение SIP-сообщений в командной строке.


Пример работы модуля

Рассмотрим базовые возможности модуля:

Res_pjsip_history сохраняет в памяти историю всех отправленных и полученных SIP-сообщений, которые проходят через стек PJSIP.

Захват SIP-сообщений

Для того, чтоб начать захват нужно выполнить следующую команду:

CLI> pjsip set history on


Применение команды 3

Для того, чтоб отключить захват выполните следующую команду:

CLI> pjsip set history off

Применение команды 4
Эта команда не очищает историю сообщений, сообщения только перестают записываться. Для очистки истории есть следующая команда:

CLI> pjsip set history clear


Применение команды 5
Не забывайте после отладки выключать захват сообщений, иначе при большом потоке звонков может закончиться место на жестком диске, что в свою очередь приведет к неполадкам.

Просмотр

И так, вы включили запись, прошло какое-то время, пользователи совершали звонки, подключали аппараты и.т.д., и по итогам всего действия мы собрали какие-то данные, но как нам теперь их просмотреть?

Чтоб показать всю историю собранных сообщений нужно выполнить следующую команду: CLI> pjsip show history


Применение команды 6

Эта команда предоставит краткое изложение истории sip-сообщений.

Просмотреть подробнее какое-то конкретное SIP-сообщение, нужно указать в команде его номер. Команда примет следующий вид:

CLI> pjsip show history entry 6 ,где цифра обозначает номер строки


Применение команды 7

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

Манипуляции с результатами

Выше мы получили подробную информацию о sip-сообщении. Тем не менее, в таком виде редко когда удобно просматривать сообщения, в особенности когда на станции зарегистрированы не два пользователя, а 10 и даже больше и все они в этот момент совершают звонки. Модуль res_pjsip_history поддерживает простую фильтрацию запросов по заданным условиям, подобную тому, который есть в SQL.

Обратите внимание, что модуль res_pjsip_history был включен в asterisk, начиная с версии Asterisk 13.8.0

Для теста давайте отфильтруем запрос по SIP Call-ID, используя следующую команду:

CLI>pjsip show history where sip.msg.call-id = “ваш caller-id“

Применение команды 8

Результат выполнения команды вы можете видеть выше. Если вы знакомы или даже работали с программой «sngrep», то можете заметить сходства в отображении информации о входящих и исходящих пакетов.

На момент написания статьи модуль res_pjsip_history поддерживает следующие команды:

  • number: номер записи в истории
  • timestamp: время отправка сообщения SIP
  • addr: Адрес источника/Получателя SIP-сообщения
  • sip.msg.request.method: Метод запроса SIP
  • sip.msg.callid : Значение заголовка

Так же Res_pjsip_history поддерживает все логические операторы, а так же операторы регулярных выражений.

Полезные инструменты

И все же советуем ознакомиться с удобными инструментами для отладки телефонии и по возможности использовать их.

Установка и настройка Sngrep

Sngrep

Wireshark. Сохраняем дамп нужного разговора.

Перехват и прослушивание разговора в кодеках G722 и G729. Использование Wireshark.

SIP ответы и их значения

1XX – Информационные ответы

SIP/2.0 100 Trying — запрос обрабатывается

SIP/2.0 180 Ringing — местоположение вызываемого пользователя определено. Выдан сигнал о входящем вызове

SIP/2.0 181 Call is Being Forwarded — прокси,сервер переадресует вызов к другому пользователю

SIP/2.0 182 Call is Queued — вызываемый абонент временно не доступен, вызов поставлен в очередь

SIP/2.0 183 Session Progress — используется для того, чтобы заранее получить описание сеанса информационного обмена от шлюзов на пути к вызываемому пользователю

2XX — ответы о завершении запроса

SIP/2.0 200 OK — успешное завершение

SIP/2.0 202 Accepted — запрос принят для обработки Используется для справки о состоянии обработки

3XX — сообщения о переадресации

SIP/2.0 300 Multiple Choices — указывает несколько SIP-адресов, по которым можно найти вызываемого пользователя

SIP/2.0 301 Moved Permanently — вызываемый пользователь больше не находится по адресу, указанному в запросе

SIP/2.0 302 Moved Temporarily — пользователь временно сменил местоположение

SIP/2.0 305 Use Proxy — вызываемый пользователь не доступен непосредственно, входящий вызов должен пройти через прокси-сервер

SIP/2.0 380 Alternative Service — запрошенная услуга недоступна, но доступны альтернативные услуги

4XX — невозможность обработать запрос

SIP/2.0 400 Bad Request — запрос не понят из-за синтаксических ошибок в нем, ошибка в сигнализации, скорее всего что-то с настройками оборудования

SIP/2.0 401 Unauthorized — нормальный ответ сервера о том, что пользователь еще не авторизировался; обычно после этого абонентское оборудование отправляет на сервер новый запрос, содержащий логин и пароль

SIP/2.0 401 Expired Authorization — время регистрации истекло

SIP/2.0 402 Payment Required — требуется оплата (зарезервирован для использования в будущем)

SIP/2.0 403 No Such User — нет такого пользователя, ошибка в номере, логине или пароле

SIP/2.0 403 User Disabled — пользователь отключен

SIP/2.0 403 Wrong Guess — ошибка в пароле

SIP/2.0 403 Conflict — такой SIP-номер уже используется

SIP/2.0 403 Forbidden — абонент не зарегистрирован

SIP/2.0 403 Empty Route Set — нет ни одного шлюза в роутинге

SIP/2.0 403 Caller Not Registered — нет такого пользователя

SIP/2.0 403 Out of Look-Ahead Retries — перебор узлов закончен

SIP/2.0 403 Invalid Phone Number — нет такого направления

SIP/2.0 403 No Money Left on RFC Account — на счету нет денег для совершения звонка

SIP/2.0 404 Not found — вызываемый абонент не найден, нет такого SIP-номера

SIP/2.0 404 Undefined Reason — неопределенное направление

SIP/2.0 404 Unknown user account — логин и пароль не найдены

SIP/2.0 404 Out of Order — в заявке на маршрутизацию по этому направлению нет ни одного шлюза, проверьте настройку маршрутизации по этому направлению.

SIP/2.0 405 Method Not Allowed — метод не поддерживается, может возникать если пользователь пытается отправлять голосовую почту и т.п.

SIP/2.0 406 No codecs match — неправильная конфигурация кодеков

SIP/2.0 406 Not Acceptable — пользователь не доступен

SIP/2.0 407 Proxy Authentication Required — необходима аутентификация на прокси-сервере

SIP/2.0 408 Request Timeout — время обработки запроса истекло: Абонента не удалось найти за отведенное время

SIP/2.0 408 Login timed out — за отведенное время не получен ответ от сервера на запрос авторизации

SIP/2.0 410 No Route — вариант SIP/2.0 403 Empty Route Set; нет доступа к ресурсу: Ресурс по указанному адресу больше не существует

SIP/2.0 413 Request Entity Too Large — размер запроса слишком велик для обработки на сервере

SIP/2.0 415 No Media — звонок совершается неподдерживаемым кодеком

SIP/2.0 416 Unsupported Scheme — сервер не может обработать запрос из-за того, что схема адреса получателя ему непонятна

SIP/2.0 420 Bad extension — неизвестное расширение: Сервер не понял расширение протокола SIP

SIP/2.0 421 Extension Required — в заголовке запроса не указано, какое расширение сервер должен применить для его обработки

SIP/2.0 423 Interval Too Brief — сервер отклоняет запрос, так как время действия ресурса короткое

SIP/2.0 480 Invalid Phone Number — неправильный номер телефона, не соответствует к-во цифр или неправильный код страны или города

SIP/2.0 480 Destination Not Found In Client Plan — направления нет в тарифном плане абонента

SIP/2.0 480 Wrong DB Response — проблемы с центральной базой сети

SIP/2.0 480 DB Timeout — проблемы с центральной базой сети

SIP/2.0 480 Database Error — проблемы с центральной базой сети

SIP/2.0 480 Codec Mismatch — несоответствие кодеков

SIP/2.0 480 No Money Left on RFC Account — нет денег на счету, обратитесь к администратору сети!!!

SIP/2.0 480 Empty Route Set — пустое направление, нет принимающих шлюзов

SIP/2.0 480 No money left — недостаточно денег на счете

SIP/2.0 480 Temporarily Unavailable — временно недоступное направление попробуйте позвонить позже

SIP/2.0 481 Call Leg/Transaction Does Not Exist — действие не выполнено, нормальный ответ при поступлении дублирующего пакета

SIP/2.0 482 Loop Detected — обнаружен замкнутый маршрут передачи запроса

SIP/2.0 483 Too Many Hops — запрос на своем пути прошел через большее число прокси-серверов, чем разрешено

SIP/2.0 484 Address Incomplete — принят запрос с неполным адресом

SIP/2.0 485 Ambiguous — адрес вызываемого пользователя не однозначен

SIP/2.0 486 Busy Here — абонент занят

SIP/2.0 487 Request Terminated — запрос отменен, обычно приходит при отмене вызова

SIP/2.0 488 Codec Mismatch — нет шлюзов с поддержкой заказанного кодека

SIP/2.0 488 Private IP Address — адрес RTP media из сетей RFC1918

SIP/2.0 491 Request Pending — запрос поступил в то время, когда сервер еще не закончил обработку другого запроса, относящегося к тому же диалогу

SIP/2.0 493 Undeciperable — сервер не в состоянии подобрать ключ дешифрования: невозможно декодировать тело S/MIME сообщения

SIP/2.0 499 Codec Mismatch — отсутствует кодек

5XX — ошибки сервера

SIP/2.0 500 Internal Server Error — внутренняя ошибка сервера

SIP/2.0 500 DB Timeout — нет ответа от базы данных

SIP/2.0 500 Database Error — то же самое, но в другой момент

SIP/2.0 500 Wrong DB Response — неправильный ответ базы данных, редкая ошибка

SIP/2.0 500 Undefined Reason — неопределенная причина

SIP/2.0 500 account has been moved to a remote system — аккаунт перенесен в удаленную систему (дословно)

SIP/2.0 501 Method Not Supported Here — в сервере не реализованы какие-либо функции, необходимые для обслуживания запроса: Метод запроса SIP не поддерживается

SIP/2.0 502 Bad Gateway — сервер, функционирующий в качестве шлюза или прокси-сервера, принимает некорректный ответ от сервера, к которому он направил запрос

SIP/2.0 503 Service Unavailable — сервер не может в данный момент обслужить вызов вследствие перегрузки или проведения технического обслуживания

SIP/2.0 504 Server time-out — сервер не получил ответа в течение установленного промежутка времени от сервера, к которому он обратился для завершения вызова

SIP/2.0 505 SIP Version not supported — версия не поддерживается: Сервер не поддерживает эту версию протокола SIP

SIP/2.0 513 Message too big — сервер не в состоянии обработать запрос из-за большой длины сообщения

6XX — глобальная ошибка

SIP/2.0 600 Busy everywhere — вызываемый пользователь занят и не желает принимать вызов в данный момент

SIP/2.0 603 Decline — вызываемый пользователь не желает принимать входящие вызовы, не указывая причину отказа

SIP/2.0 604 Does Not Exist Anywhere — вызываемого пользователя не существует

SIP/2.0 606 Not Acceptable — соединение с сервером было установлено, но отдельные параметры, такие как тип запрашиваемой информации, полоса пропускания, вид адресации не доступны

После приема и интерпретации запроса, адресат (прокси-сервер) передает ответ на этот запрос. Содержание ответов бывает разным: подтверждение установления соединения, передача запрошенной информации, сведения о неисправностях и т.д. Структуру ответов и их виды протокол SIP унаследовал от протокола HTTP.

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

Все ответы делятся на две группы: информационные и финальные. Информационные ответы показывают, что запрос находится в стадии обработки. Они кодируются трехзначным числом, начинающимся с единицы, — 1хх. Некоторые информационные ответы, например, 100 Trying, предназначены для установки на нуль таймеров, которые запускаются в оборудовании, передавшем запрос. Если к моменту срабатывания таймера ответ на запрос не получен, то считается, что этот запрос потерян и может (по усмотрению производителя) быть передан повторно. Один из распространенных ответов — 180 Ringing; по назначению он идентичен сигналу <Контроль посылки вызова> в ТфОП и означает, что вызываемый пользователь получает сигнал о входящем вызове.

Финальные ответы кодируются трехзначными числами, начинающимися с цифр 2, 3, 4, 5 и 6. Они означают завершение обработки запроса и содержат, когда это нужно, результат обработки запроса. Назначение финальных ответов каждого типа рассматривается ниже.

Ответы 2хх означают, что запрос был успешно обработан. В настоящее время из всех ответов типа 2хх определен лишь один -200 ОК. Его значение зависит от того, на какой запрос он отвечает:
ответ 200 OK на запрос INVITE означает, что вызываемое оборудование согласно на участие в сеансе связи; в теле ответа указываются функциональные возможности этого оборудования;
ответ 200 OK на запрос BYE означает завершение сеанса связи, в теле ответа никакой информации не содержится;
ответ 200 OK на запрос CANCEL означает отмену поиска, в теле ответа никакой информации не содержится;
ответ 200 OK на запрос REGISTER означает, что регистрация прошла успешно;
ответ 200 OK на запрос OPTION служит для передачи сведений о функциональных возможностях оборудования, эти сведения содержатся в теле ответа.

Ответы Зхх информируют оборудование вызывающего пользователя о новом местоположении вызываемого пользователя или переносят другую информацию, которая может быть использована для нового вызова:
в ответе 300 Multiple Choices указывается несколько SIP-адресов, по которым можно найти вызываемого пользователя, и вызывающему пользователю предлагается выбрать один из них;
ответ 301 Moved Permanently означает, что вызываемый пользователь больше не находится по адресу, указанному в запросе, и направлять запросы нужно на адрес, указанный в поле Contact;
ответ 302 Moved Temporary означает, что пользователь временно (промежуток времени может быть указан в поле Expires) находится по другому адресу, который указывается в поле Contact.

Ответы 4хх информируют о том, что в запросе обнаружена ошибка. После получения такого ответа пользователь не должен передавать тот же самый запрос без его модификации:
ответ 400 Bad Request означает, что запрос не понят из-за наличия в нем синтаксических ошибок;
ответ 401 Unauthorized означает, что запрос требует проведения процедуры аутентификации пользователя. Существуют разные варианты аутентификации, и в ответе может быть указано, какой из них использовать в данном случае;
ответ 403 Forbidden означает, что сервер понял запрос, но отказался его обслуживать. Повторный запрос посылать не следует. Причины могут быть разными, например, запросы с этого адреса не обслуживаются и т.д.;
ответ 485 Ambiguous означает, что адрес в запросе не определяет вызываемого пользователя однозначно;
ответ 486 Busy Here означает, что вызываемый пользователь в настоящий момент не может принять входящий вызов по данному адресу. Ответ не исключает возможности связаться с пользователем по другому адресу или, к примеру, оставить сообщение в речевом почтовом ящике.

Ответы 5хх информируют о том, что запрос не может быть обработан из-за отказа сервера:
ответ 500 Server Internal Error означает, что сервер не имеет возможности обслужить запрос из-за внутренней ошибки. Клиент может попытаться повторно послать запрос через некоторое время;
ответ 501 Not Implemented означает, что в сервере не реализованы функции, необходимые для обслуживания этого запроса. Ответ передается, например в том случае, когда сервер не может распознать тип запроса;
ответ 502 Bad Gateway информирует о том, что сервер, функционирующий в качестве шлюза или прокси-сервера, принял некорректный ответ от сервера, к которому он направил запрос;
ответ 503 Service Unavailable говорит от том, что сервер не может в данный момент обслужить вызов вследствие перегрузки или проведения технического обслуживания.

Ответы 6хх информируют о том, что соединение с вызываемым пользователем установить невозможно:
ответ 600 Busy Everywhere сообщает, что вызываемый пользователь занят и не может принять вызов в данный момент ни по одному из имеющихся у него адресов. Ответ может указывать время, подходящее для вызова пользователя;
ответ 603 Decline означает, что вызываемый пользователь не может или не желает принять входящий вызов. В ответе может быть указано подходящее для вызова время;
ответ 604 Does Not Exist Anywhere означает, что вызываемого пользователя не существует.

1xx = информационные ответы

SIP/2.0 100 Trying — запрос обрабатывается

SIP/2.0 180 Ringing — местоположение вызываемого пользователя определено. Выдан сигнал о входящем вызове

SIP/2.0 181 Call is Being Forwarded — прокси,сервер переадресует вызов к другому пользователю

SIP/2.0 182 Call is Queued — вызываемый абонент временно не доступен, вызов поставлен в очередь

SIP/2.0 183 Session Progress — используется для того, чтобы заранее получить описание сеанса информационного обмена от шлюзов на пути к вызываемому пользователю

2xx = ответы о завершении запроса

SIP/2.0 200 OK — успешное завершение

SIP/2.0 202 Accepted — запрос принят для обработки Используется для справки о состоянии обработки

3xx = сообщения о переадресации

SIP/2.0 300 Multiple Choices — указывает несколько SIP-адресов, по которым можно найти вызываемого пользователя

SIP/2.0 301 Moved Permanently — вызываемый пользователь больше не находится по адресу, указанному в запросе

SIP/2.0 302 Moved Temporarily — пользователь временно сменил местоположение

SIP/2.0 305 Use Proxy — вызываемый пользователь не доступен непосредственно, входящий вызов должен пройти через прокси-сервер

SIP/2.0 380 Alternative Service — запрошенная услуга недоступна, но доступны альтернативные услуги

4xx = невозможность обработать запрос

SIP/2.0 400 Bad Request — запрос не понят из-за синтаксических ошибок в нем, ошибка в сигнализации, скорее всего что-то с настройками оборудования

SIP/2.0 401 Unauthorized — нормальный ответ сервера о том, что пользователь еще не авторизировался; обычно после этого абонентское оборудование отправляет на сервер новый запрос, содержащий логин и пароль

SIP/2.0 401 Expired Authorization — время регистрации истекло

SIP/2.0 402 Payment Required — требуется оплата (зарезервирован для использования в будущем)

SIP/2.0 403 No Such User — нет такого пользователя, ошибка в номере, логине или пароле

SIP/2.0 403 User Disabled — пользователь отключен

SIP/2.0 403 Wrong Guess — ошибка в пароле

SIP/2.0 403 Conflict — такой SIP-номер уже используется

SIP/2.0 403 Forbidden — абонент не зарегистрирован

SIP/2.0 403 Empty Route Set — нет ни одного шлюза в роутинге

SIP/2.0 403 Caller Not Registered — нет такого пользователя

SIP/2.0 403 Out of Look-Ahead Retries — перебор узлов закончен

SIP/2.0 403 Invalid Phone Number — нет такого направления

SIP/2.0 403 No Money Left on RFC Account — на счету нет денег для совершения звонка

SIP/2.0 404 Not found — вызываемый абонент не найден, нет такого SIP-номера

SIP/2.0 404 Undefined Reason — неопределенное направление

SIP/2.0 404 Unknown user account — логин и пароль не найдены

SIP/2.0 404 Out of Order — в заявке на маршрутизацию по этому направлению нет ни одного шлюза, проверьте настройку маршрутизации по этому направлению.

SIP/2.0 405 Method Not Allowed — метод не поддерживается, может возникать если пользователь пытается отправлять голосовую почту и т.п.

SIP/2.0 406 No codecs match — неправильная конфигурация кодеков

SIP/2.0 406 Not Acceptable — пользователь не доступен

SIP/2.0 407 Proxy Authentication Required — необходима аутентификация на прокси-сервере

SIP/2.0 408 Request Timeout — время обработки запроса истекло: Абонента не удалось найти за отведенное время

SIP/2.0 408 Login timed out — за отведенное время не получен ответ от сервера на запрос авторизации

SIP/2.0 410 No Route — вариант SIP/2.0 403 Empty Route Set; нет доступа к ресурсу: Ресурс по указанному адресу больше не существует

SIP/2.0 413 Request Entity Too Large — размер запроса слишком велик для обработки на сервере

SIP/2.0 415 No Media — звонок совершается неподдерживаемым кодеком

SIP/2.0 416 Unsupported Scheme — сервер не может обработать запрос из-за того, что схема адреса получателя ему непонятна

SIP/2.0 420 Bad extension — неизвестное расширение: Сервер не понял расширение протокола SIP

SIP/2.0 421 Extension Required — в заголовке запроса не указано, какое расширение сервер должен применить для его обработки

SIP/2.0 423 Interval Too Brief — сервер отклоняет запрос, так как время действия ресурса короткое

SIP/2.0 480 Invalid Phone Number — неправильный номер телефона, не соответствует к-во цифр или неправильный код страны или города

SIP/2.0 480 Destination Not Found In Client Plan — направления нет в тарифном плане абонента

SIP/2.0 480 Wrong DB Response — проблемы с центральной базой сети

SIP/2.0 480 DB Timeout — проблемы с центральной базой сети

SIP/2.0 480 Database Error — проблемы с центральной базой сети

SIP/2.0 480 Codec Mismatch — несоответствие кодеков

SIP/2.0 480 No Money Left on RFC Account — нет денег на счету, обратитесь к администратору сети!!!

SIP/2.0 480 Empty Route Set — пустое направление, нет принемающих шлюзов

SIP/2.0 480 No money left — недостаточно денег на счете

SIP/2.0 480 Temporarily Unavailable — временно недоступное направление попробуйте позвонить позже

SIP/2.0 481 Call Leg/Transaction Does Not Exist — действие не выполнено, нормальный ответ при поступлении дублирующего пакета

SIP/2.0 482 Loop Detected — обнаружен замкнутый маршрут передачи запроса

SIP/2.0 483 Too Many Hops — запрос на своем пути прошел через большее число прокси-серверов, чем разрешено

SIP/2.0 484 Address Incomplete — принят запрос с неполным адресом

SIP/2.0 485 Ambiguous — адрес вызываемого пользователя не однозначен

SIP/2.0 486 Busy Here — абонент занят

SIP/2.0 487 Request Terminated — запрос отменен, обычно приходит при отмене вызова

SIP/2.0 488 Codec Mismatch — нет шлюзов с поддержкой заказанного кодека

SIP/2.0 488 Private IP Address — адрес RTP media из сетей RFC1918

SIP/2.0 491 Request Pending — запрос поступил в то время, когда сервер еще не закончил обработку другого запроса, относящегося к тому же диалогу

SIP/2.0 493 Undeciperable — сервер не в состоянии подобрать ключ дешифрования: невозможно декодировать тело S/MIME сообщения

SIP/2.0 499 Codec Mismatch — отсутствует кодек

5xx = ошибки сервера

SIP/2.0 500 Internal Server Error — внутренняя ошибка сервера

SIP/2.0 500 DB Timeout — нет ответа от базы данных

SIP/2.0 500 Database Error — то же самое, но в другой момент

SIP/2.0 500 Wrong DB Response — неправильный ответ базы данных, редкая ошибка

SIP/2.0 500 Undefined Reason — неопределенная причина

SIP/2.0 500 account has been moved to a remote system — аккаунт перенесен в удаленную систему (дословно)

SIP/2.0 501 Method Not Supported Here — в сервере не реализованы какие-либо функции, необходимые для обслуживания запроса: Метод запроса SIP не поддерживается

SIP/2.0 502 Bad Gateway — сервер, функционирующий в качестве шлюза или прокси-сервера, принимает некорректный ответ от сервера, к которому он направил запрос

SIP/2.0 503 Service Unavailable — сервер не может в данный момент обслужить вызов вследствие перегрузки или проведения технического обслуживания

SIP/2.0 504 Server time-out — сервер не получил ответа в течение установленного промежутка времени от сервера, к которому он обратился для завершения вызова

SIP/2.0 505 SIP Version not supported — версия не поддерживается: Сервер не поддерживает эту версию протокола SIP

SIP/2.0 513 Message too big — сервер не в состоянии обработать запрос из-за большой длины сообщения

6xx = глобальная ошибка

SIP/2.0 600 Busy everywhere — вызываемый пользователь занят и не желает принимать вызов в данный момент

SIP/2.0 603 Decline — вызываемый пользователь не желает принимать входящие вызовы, не указывая причину отказа

SIP/2.0 604 Does Not Exist Anywhere — вызываемого пользователя не существует

SIP/2.0 606 Not Acceptable — соединение с сервером было установлено, но отдельные параметры, такие как тип запрашиваемой информации, полоса пропускания, вид адресации не доступны

I am working on a sip client. I’m monitoring with wireshark the sip packets.

Register with the sip server works fine

When making a call I have this:

Client — INVITE message
Server — 401 UNAUTHORIZED
Client — INVITE message
Server — 403 Forbidden

I do not have access to the server. What could go wrong? Why can’t I make a call?

What is with that 401 and than 403 if registered worked ok?

asked Sep 23, 2013 at 9:02

just ME's user avatar

0

That is noramal. Server ask for authorization(401). After that it say authorization incorrect.

That is normal behavour for any of this:

1) You use incorrect secret for this username

2) You use domain name/realm which is incorrect and domain name/realm is set on server.

If registration work ok, can be

1) Server work with registration different way — contact server support

2) You dialling in incorrect format or this number not allowed to call with your extension.

answered Sep 23, 2013 at 11:05

arheops's user avatar

arheopsarheops

15.2k1 gold badge19 silver badges28 bronze badges

2

Another reason for that error: device trying to register is not sending authentication.

while the server may request authentication

answered Feb 17, 2016 at 14:10

steve's user avatar

It is an old thread but maybe it helps someone: sip server can be in a night/holiday mode which may require different access levels for clients.

answered Nov 19, 2020 at 6:11

erman's user avatar

you need to send to telco your sip credentials…need to changed your sip credentials parameter..to make you authorized for outgoing call

answered Jul 24, 2021 at 23:23

Alfredo Perolina's user avatar

SIP ошибки и их значение

SIP/2.0 400 Bad Request — ошибка в сигнализации, скорее всего что-то с настройками оборудования

SIP/2.0 401 Unauthorized — нормальный ответ сервера о том, что пользователь еще неавторизировался, обычно после этого на абонентское оборудование отправляет на сервер логин и пароль

SIP/2.0 401 Expired Authorization — время регистрации истекло

SIP/2.0 403 No Such User — нет такого пользователя, ошибка в номере, логине или пароле

SIP/2.0 403 User Disabled — пользователь отключен

SIP/2.0 403 Wrong Guess — ошибка в пароле

SIP/2.0 403 Forbidden — абонент не зарегистрирован

SIP/2.0 403 Empty Route Set — нет ни одного шлюза в роутинге

SIP/2.0 403 Caller Not Registered — нет такого пользователя

SIP/2.0 403 Out of Look-Ahead Retries — перебор узлов закончен

SIP/2.0 403 Invalid Phone Number — нет такого направления

SIP/2.0 404 Not found — вызываемый абонент не найден, нет такого SIP-номера

SIP/2.0 404 Undefined Reason — неопределенное направление

SIP/2.0 404 Unknown user account — логин и пароль не найдены

SIP/2.0 405 Method Not Allowed — метод не поддерживается, может возникать если пользователь пытается отправлять голосовую почту и т.п.

SIP/2.0 406 No codecs match — неправильная конфигурация кодеков

SIP/2.0 406 Not Acceptable

SIP/2.0 407 Proxy Authentication Required — что-то с регистрацией

SIP/2.0 408 Request Timeout — превышение ожижание ответа на запрос

SIP/2.0 408 Login timed out — за отведенное время не получен ответ от сервера на запрос авторизации

SIP/2.0 410 No Route — вариант SIP/2.0 403 Empty Route Set

SIP/2.0 415 No Media — несоответствие кодеков

SIP/2.0 480 Invalid Phone Number — неправильный номер телефона

SIP/2.0 480 Destination Not Found In Client Plan — направления не существует

SIP/2.0 480 Codec Mismatch — несоответствие кодеков

SIP/2.0 480 Empty Route Set — что-то с маршрутизацией

SIP/2.0 480 No money left — недостаточно денег на счете

SIP/2.0 480 Temporarily Unavailable — временно недоступное направление — попробуйте позвонить позже

SIP/2.0 481 Call Leg/Transaction Does Not Exist — действие не выполнено, нормальный ответ при поступлении дублирующего пакета

SIP/2.0 487 Request Terminated — запрос отменен, обычно приходит при отмене вызова

SIP/2.0 486 Busy Here — абонент занят

SIP/2.0 488 Codec Mismatch — нет шлюзов с поддержкой заказанного кодека

SIP/2.0 488 Private IP Address — адрес RTP media из сетей RFC1918

SIP/2.0 499 Codec Mismatch — отсутствует кодек

SIP/2.0 500 Internal Server Error — внутренняя ошибка сервера

SIP/2.0 500 DB Timeout — нет ответа от базы данных

SIP/2.0 500 Database Error — то же самое, но в другой момент

SIP/2.0 500 Wrong DB Response — неправильный ответ базы данных

SIP/2.0 500 Undefined Reason — неопределенная причина

SIP/2.0 500 account has been moved to a remote system — аккаунт перенесен в удаленную систему (дословно)

SIP/2.0 5хх — проблемы с SoftSwitch-ом

SIP/2.0 603 Decline — отказ в обслуживании звонка

Читайте другие страницы сайта.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка sim карты мтс что делать
  • Ошибка segmentation fault core dumped