AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Failed to authenticate on INVITE

Newbies/FAQ Forum 21 сообщений 20.11.2009 17:53 - 25.10.2010 13:52
#1 20.11.2009 17:53

Failed to authenticate on INVITE


Есть два сервера в разных городах, у обоих статические ip. Добавил в sip.conf у каждого севера строки

Quote:
[s1]
type=friend
host=serv1ip
context=default

у второго

Quote:
[s2]
type=friend
host=serv2ip
contexnt=default


Соответственно в диалплане у каждого прописал Dial(SIP/s1/${EXTEN}) и Dial(SIP/s2/${EXTEN})

Сервера подцепились, при sip show peers оба высвечиваются и status стоит Ok.

При попытке позвонить от юзера с сервера 1 на сервер 2 вылетает мессага

Quote:
[Nov 21 03:49:21] NOTICE[85399]: chan_sip.c:15256 handle_response_invite: Failed to authenticate on INVITE to '"D-Link Test" ;tag=as7657fd2a'


С чем связана данная ошибка?

Конфиг sip.conf укаждого одинаковый, только externip соотв. указаны разные
Quote:
[general]
context=default
;allowoverlap=no
bindport=5060
bindaddr=0.0.0.0
rtcachefriends=yes
rtupdate=yes
rtautoclear=yes
rtsavesysname=yes
;ignoreregexpire=yes
externip=servip
srvlookup=yes
;canreinvite=no
dtmfmode=rfc2833
qualify=yes
nat=rfc3581
;alwaysauthreject=yes
registerattempts=3
disallow=all
allow=alaw
allow=g729
Allow=gsm
allow=ulaw
insecure=port,invite
#2 21.11.2009 12:56

Asterisk видит строчку "D-Link" и честно предупреждает, что с ним будут проблемы

asterisk -rx 'sip show peer s1' | grep Insecure
и то же самое с s2

Ну и sip set debug ip на 2м и наоборот, после чего логи сюда
#3 21.11.2009 14:25

Зачэм дэбаг? Дастатачна пэрвава савэта, да!
#4 21.11.2009 16:29

D-link Smile
Quote:
asterisk -rx 'sip show peer s1' | grep Insecure

Выдаёт соотв. Insecure: port, invite (пробовал убрать данный параметр, ошибка та же; конфига на двух серверах одинаковая)

Выставил core debug 5 и core verbose 5, соотв. при звонке с сервера s2 на s1 выдаёт (обратно - аналогично)
Quote:
-- Executing [9000@default:1] Dial("SIP/9999-28630000", "SIP/s1/9000") in new stack
-- Called s1/9000
[Nov 22 02:12:41] NOTICE[89564]: chan_sip.c:15256 handle_response_invite: Failed to authenticate on INVITE to '"D-Link Test" ;tag=as7c36049a'
-- SIP/s1-29805000 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Auto fallthrough, channel 'SIP/9999-28630000' status is 'CONGESTION'
#5 21.11.2009 19:07

Мда... Centast, такое сообщение * выдает, когда на транк не стоит параметр insecure=invite. Предлагаю выложить CLI> sip show peer s1 и лог (для начала) входящего вызова на этот пир.
#6 21.11.2009 22:02

Evil or Very Mad

sip show peer s1 (на s2)

Quote:

s2*CLI>

* Name : s1
Realtime peer: No
Secret :
MD5Secret :
Context : default
Subscr.Cont. :
Language :
AMA flags : Unknown
Transfer mode: open
CallingPres : Presentation Allowed, Not Screened
Callgroup :
Pickupgroup :
Mailbox :
VM Extension : asterisk
LastMsgsSent : 32767/65535
Call limit : 0
Dynamic : No
Callerid : ""
MaxCallBR : 384 kbps
Expire : -1
Insecure : invite
Nat : RFC3581
ACL : No
T38 pt UDPTL : No
CanReinvite : Yes
PromiscRedir : No
User=Phone : No
Video Support: No
Text Support : No
Trust RPID : No
Send RPID : No
Subscriptions: Yes
Overlap dial : Yes
DTMFmode : rfc2833
Timer T1 : 500
Timer B : 32000
ToHost : serv1ip
Addr->IP : serv1ip Port 5060
Defaddr->IP : 0.0.0.0 Port 0
Transport : UDP
Def. Username:
SIP Options : (none)
Codecs : 0x27f9fff (g723|gsm|ulaw|alaw|g726|adpcm|slin|lpc10|g729|speex|ilbc|g726aal2|g722|slin16|jpeg|png|h261|h263|h263p|h264|mpeg4|t140)
Codec Order : (alaw:20,g729:20,gsm:20,ulaw:20)
Auto-Framing : No
100 on REG : No
Status : OK (1 ms)
Useragent :
Reg. Contact :
Qualify Freq : 60000 ms
Sess-Timers : Accept
Sess-Refresh : uas
Sess-Expires : 1800 secs
Min-Sess : 90 secs


Лог звонка юера 9999 (s2) на юзера 9000 (s1)

Quote:
SIP Debugging Enabled for IP: serv1ip
-- Executing [9000@default:1] Dial("SIP/9999-2862d000", "SIP/s1/9000") in new stack
Audio is at serv2ip port 16844
Adding codec 0x8 (alaw) to SDP
Adding codec 0x4 (ulaw) to SDP
Adding codec 0x10 (g726aal2) to SDP
Adding codec 0x20 (adpcm) to SDP
Adding codec 0x40 (slin) to SDP
Adding codec 0x80 (lpc10) to SDP
Adding codec 0x200 (speex) to SDP
Adding codec 0x800 (g726) to SDP
Adding codec 0x1000 (g722) to SDP
Adding codec 0x8000 (slin16) to SDP
Adding non-codec 0x1 (telephone-event) to SDP
Reliably Transmitting (no NAT) to serv1ip:5060:
INVITE sip:9000@serv1ip SIP/2.0
Via: SIP/2.0/UDP serv2ip:5060;branch=z9hG4bK4932a648;rport
Max-Forwards: 70
From: "D-Link Test" ;tag=as2ab9f60b
To:
Contact:
Call-ID: 787667473f5dc46d7c18bb823dcdcaf1@serv2ip
CSeq: 102 INVITE
User-Agent: Asterisk PBX 1.6.0.9
Date: Sun, 22 Nov 2009 04:47:55 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces, timer
Content-Type: application/sdp
Content-Length: 483

v=0
o=root 1050278646 1050278646 IN IP4 serv2ip
s=Asterisk PBX 1.6.0.9
c=IN IP4 serv2ip
t=0 0
m=audio 16844 RTP/AVP 8 0 112 5 10 7 110 111 9 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:112 AAL2-G726-32/8000
a=rtpmap:5 DVI4/8000
a=rtpmap:10 L16/8000
a=rtpmap:7 LPC/8000
a=rtpmap:110 speex/8000
a=rtpmap:111 G726-32/8000
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:20
a=sendrecv

---
-- Called s1/9000
s2*CLI>

SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP serv2ip:5060;branch=z9hG4bK4932a648;received=serv2ip;rport=5060
From: "D-Link Test" ;tag=as2ab9f60b
To: ;tag=as03711894
Call-ID: 787667473f5dc46d7c18bb823dcdcaf1@serv2ip
CSeq: 102 INVITE
User-Agent: Asterisk PBX 1.6.0.9
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="3147a01d"
Content-Length: 0



--- (11 headers 0 lines) ---
Transmitting (no NAT) to serv1ip:5060:
ACK sip:9000@serv1ip SIP/2.0
Via: SIP/2.0/UDP serv2ip:5060;branch=z9hG4bK4932a648;rport
Max-Forwards: 70
From: "D-Link Test" ;tag=as2ab9f60b
To: ;tag=as03711894
Contact:
Call-ID: 787667473f5dc46d7c18bb823dcdcaf1@serv2ip
CSeq: 102 ACK
User-Agent: Asterisk PBX 1.6.0.9
Content-Length: 0


---
[Nov 22 07:47:55] NOTICE[89613]: chan_sip.c:15256 handle_response_invite: Failed to authenticate on INVITE to '"D-Link Test" ;tag=as2ab9f60b'
-- SIP/s1-29811000 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Auto fallthrough, channel 'SIP/9999-2862d000' status is 'CONGESTION'
Really destroying SIP dialog '787667473f5dc46d7c18bb823dcdcaf1@serv2ip' Method: INVITE
#7 22.11.2009 11:18

На s1 настроена авторизация сервера s2, но при этом на сервере s2 в настройках пира нет ни слова, ни строчки об авторизации исходящих вызовов. Я так думаю Smile
#8 22.11.2009 11:45

Вот настройки пира, параметр выставлен.
Есть идеи?
Quote:
s2*CLI> sip show peer 9999
s2*CLI>

* Name : 9999
Realtime peer: Yes, cached
Secret :
MD5Secret :
Context : default
Subscr.Cont. :
Language :
AMA flags : Unknown
Transfer mode: open
CallingPres : Presentation Allowed, Not Screened
Callgroup :
Pickupgroup :
Mailbox :
VM Extension : asterisk
LastMsgsSent : 32767/65535
Call limit : 0
Dynamic : Yes
Callerid : "D-Link Test"
MaxCallBR : 384 kbps
Expire : 3466
Insecure : port,invite
Nat : Always
ACL : No
T38 pt UDPTL : No
CanReinvite : No
PromiscRedir : No
User=Phone : No
Video Support: No
Text Support : No
Trust RPID : No
Send RPID : No
Subscriptions: Yes
Overlap dial : Yes
DTMFmode : rfc2833
Timer T1 : 500
Timer B : 32000
ToHost :
Addr->IP : 10.10.10.10 Port 57812
Defaddr->IP : 0.0.0.0 Port 5060
Transport : UDP
Def. Username: 9999
SIP Options : (none)
Codecs : 0x8 (alaw)
Codec Order : (alaw:20)
Auto-Framing : No
100 on REG : No
Status : OK (6 ms)
Useragent : Zoiper rev.4829
Reg. Contact : sip:9999@10.51.17.194:5060;rinstance=d17ffaa2cdad4b9f;transport=UDP
Qualify Freq : 60000 ms
Sess-Timers : Accept
Sess-Refresh : uas
Sess-Expires : 1800 secs
Min-Sess : 90 secs
#9 22.11.2009 11:56

Так, видимо непонятно объясняю. На сервере s2 в настройках пира S1 нет ни слова, ни строчки об авторизации исходящих вызовов
#10 22.11.2009 14:35

Прошу прощения за тупизм. Но можно уточнить, что значит "авторизация исходящих вызовов"? Т.е. если я всё верно понимаю, то в настройках пира s1 на сервере s2 мне нужно указывать insecure=invite, верно?
#11 22.11.2009 18:08

Не извиняться надо, а думать и искать! Читайте. Раздел Asterisk as a SIP client
#12 22.11.2009 21:00

Два раза попросили выложить логи, сначала с обеих серверов при звонке, потом логи со входящей стороны.
Так нет же, первую надо было проигнорировать а в ответ на втору выложить логи исходящего звонка. Круто.
#13 22.11.2009 22:45

bird_of_Luck, Confused сорри, буду более внимателен.

Как оказалось, проблема решалась добавлением параметра fromuser=, тогда звонки проходили.
Теперь получается, что при звонке у того, кому звонят, высвечивается callerid , как сделать, чтобы высвечивался callerid и номер звонящего?
#14 23.11.2009 01:53

Да проблема то пока не решилась.

И логов снова нет

Предлагаю таки запростить лог звонка с сервера, для которого звонок входящий, убрав при этом все fromuser
#15 23.11.2009 09:33

Звонок осуществляется с пира 9999 сервера s2, на пир 9000 сервера s1.
Лог s1 при звонке с 9999 на 9000 wrote:

s2*CLI> sip set debug peer s1
SIP Debugging Enabled for IP: serv1ip:5060
s2*CLI>

INVITE sip:9000@serv2ip SIP/2.0
Via: SIP/2.0/UDP serv1ip:5060;branch=z9hG4bK7a9d5501;rport
Max-Forwards: 70
From: "Zoiper" ;tag=as01c34a39
To:
Contact:
Call-ID: 4303375d4bfd97430a9e852414ae5e50@serv1ip
CSeq: 102 INVITE
User-Agent: Asterisk PBX 1.6.0.9
Date: Mon, 23 Nov 2009 16:12:49 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces, timer
Content-Type: application/sdp
Content-Length: 289

v=0
o=root 509035813 509035813 IN IP4 serv1ip
s=Asterisk PBX 1.6.0.9
c=IN IP4 serv1ip
t=0 0
m=audio 10372 RTP/AVP 8 0 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -
a=ptime:20
a=sendrecv


--- (14 headers 13 lines) ---
Sending to serv1ip : 5060 (NAT)
Using INVITE request as basis request - 4303375d4bfd97430a9e852414ae5e50@serv1ip
Found user '9999' for '9999'
s2*CLI>

SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP serv1ip:5060;branch=z9hG4bK7a9d5501;received=serv1ip;rport=5060
From: "Zoiper" ;tag=as01c34a39
To: ;tag=as4cbc1e97
Call-ID: 4303375d4bfd97430a9e852414ae5e50@serv1ip
CSeq: 102 INVITE
User-Agent: Asterisk PBX 1.6.0.9
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="0f9a6a10"
Content-Length: 0



Scheduling destruction of SIP dialog '4303375d4bfd97430a9e852414ae5e50@serv1ip' in 32000 ms (Method: INVITE)
s2*CLI>

ACK sip:9000@serv2ip SIP/2.0
Via: SIP/2.0/UDP serv1ip:5060;branch=z9hG4bK7a9d5501;rport
Max-Forwards: 70
From: "Zoiper" ;tag=as01c34a39
To: ;tag=as4cbc1e97
Contact:
Call-ID: 4303375d4bfd97430a9e852414ae5e50@serv1ip
CSeq: 102 ACK
User-Agent: Asterisk PBX 1.6.0.9
Content-Length: 0



--- (10 headers 0 lines) ---

#16 23.11.2009 11:59

Товарисч! Вы либо докурите до конца авторизацию * в качестве клиента, либо уберите нафиг авторизацию s1 на s2 и наоборот.
#17 23.11.2009 14:13

Пробовал, не работает
#18 23.11.2009 14:59

Centast wrote:

Found user '9999' for '9999'


А логи просились вот ровно из-за этой строчки. Запостили бы сразу - решилось бы сразу

Если вкратце, астериск при инвайтах ищет соответствие пирам (freind'ам?)
* сначала по username
* затем по hostname

В данном случае он находит 9999 (потому что вот такой username прилетает от инвайта), а там host наверняка dynamic, поэтому аутентификация не проходит

Мораль сей басни такова - либо убирайте пир [9999] вообще,
либо просто приделайте ему какой-нибудь префикс типа [s1_9999], чтобы он никогда не пересекся с username'ом и все будет хорошо[/quote]
#19 23.11.2009 15:10

Смешно до опупения. Глюк похоже из за использование realtime для юзеров. Как добавил юзверя в файл sip.conf, с самыми простыми настройками, всё заработало! Хз почему так. Вот думаю, что делать и как быть теперь с realtime Evil or Very Mad

Настройки юзера из файла sip.conf wrote:
[2222]
secret=password
mailbox=2222@default
context=default
type=friend
host=dynamic
nat=yes

#20 10.08.2010 15:50

Подниму снова этот топик вверх, проблема с тем же realtime, придумали как решить?
#21 25.10.2010 13:52

А я присоединяюсь к теме.
Проблема та же, но вот в чем фишка - ничего не меняли.
У оператора что-то сбойнуло.
С одной станции звонки идут, с дрйго такая же проблема.