Страница 1 из 2

Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 12 мар 2014, 16:22
pp77
Добрый день!

Использую дистрибутив Elastix. Авторизация с провайдером выглядит по такой схеме:
Request: REGISTER (в этом REGISTER нет поля Authorization)
Status: SIP/2.0 401 Unauthorized
Request: REGISTER (в этом REGISTER уже есть поле Authorization)
Status: SIP/2.0 200 OK

Через register expiry секунд нужно сделать то же самое, но Asterisk в повторные REGISTER вставляет поле Authorization. И хоть провайдет тут же отвечает Status: SIP/2.0 200 OK, исходящие после перерегистрации не идут, - после моего INVITE от провайдера прилетает Status: SIP/2.0 407 Proxy Authentication Required

Подскажите пожалуйста, как убрать поле Authorization в повторных регистрациях ? Чтобы повторные регистрации выглядели точно так же как самая первая ?

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 12 мар 2014, 16:32
Vlad1983
уберете Authorization из перерега или нет никакого значения не имеет
407 на INVITE все равно прилетит

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 12 мар 2014, 18:02
pp77
У меня есть родной клиент от провайдера. Смотрю за ним wireshark-ом - он каждый раз перерегистрацию делает точно так же как в первый раз. И ему 407 на INVITE не прилетает.
У меня же получается делать исходящие до тех пор, пока не "протухнет" первая регистрация.

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 12 мар 2014, 22:05
MIKS
А чем астеру мешает 407 ответ?

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 13 мар 2014, 06:52
pp77
MIKS писал(а):А чем астеру мешает 407 ответ?
Мой asterisk пытается сделать исходящий вызов - делает INVITE, на который провайдер шлет 407. При этом исходящий звонок не получается. После этого мой asterisk шлет ACK и успокаивается. Больше никакого обмена сообщениями нет.

Пока решил проблему так - засунул в cron команду, которая выполняется чаще, чем время перерегистрации у провайдера. Время перерегистрации у провайдера - 500сек, моя команда выполняется каждую минуту.
asterisk -rx "sip reload"

Это помогает, но, думаю, это плохое решение.

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 13 мар 2014, 07:45
Vlad1983
на 407 астериск должен ответить INVITE с заголовком Proxy-Authorization

покажите настройки пира на оператора

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 13 мар 2014, 09:53
pp77
PEER Details:
type=peer
insecure=invite
nat=no
host=region1.domain.ru
fromdomain=region1.domain.ru
secret=14983735
transport=udp
dtmfmode=inband

NAT-а нет. К провайдеру подключаемся через VPN.

Register String:
+74951234567:14141414:+74951234567@region1.domain.ru@region1.domain.ru/+74951234567~500

+ в файле extensions_custom.conf, секция [from-internal-custom] добавил
exten => _X.,n,SIPAddHeader(P-Preferred-Identity: <sip:+74951234567@region1.domain.ru>)

иначе вообще не работали исходящие.

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 13 мар 2014, 10:17
Vlad1983
добавить
fromuser=+74951234567

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 13 мар 2014, 12:40
pp77
забыл добавить эта строка у меня была в sip_custom_post.conf:
[mytrunk1](+)
fromuser=+74951234567

Это не помогает. После 407 asterisk кроме ACK больше ничего не передает.

Re: Как убрать поле Authorization в повторных REGISTER ?

Добавлено: 13 мар 2014, 12:49
ded
Надо было просто в
PEER Details:
type=peer
insecure=invite
nat=no
host=region1.domain.ru
fromdomain=region1.domain.ru
fromuser=+74951234567

secret=14983735
transport=udp
dtmfmode=inband