Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / AstPbx / Asterisk как SIP-клиент: то 500, то 504

Asterisk как SIP-клиент: то 500, то 504

Asterisk как SIP-клиент у SoftX3000: ошибки с сервера то 500, то 504
1 2>
Avatara of kirikaza
Откуда: Россия, Ульяновск
Сообщений: 5

Asterisk как SIP-клиент: то 500, то 504

Подключаю Asterisk как SIP-клиент к станции Huawei SoftX3000, но почему-то не получается.
Про silenceSupp читал уже, закомментировал строчку в исходниках и пересобрал. Больше silenceSupp в пакете нет, но лучше не стало.
NAT-а нет между Asterisk (x.x.x.21) и SoftX3000 (x.x.x.5), как сказал админ тамошний.
Насчёт debug: если честно, то не совсем понимаю его: слишком много всего. Надеюсь, что удастся разобраться с вашей помощью. Вот я отключил register, указал sipdebug=yes, выгнал с Asterisk всех пиров. Перезапустил Asterisk. Вижу сразу такие сообщения:


Reliably Transmitting (no NAT) to x.x.x.5:5060:
OPTIONS sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK7dbebe3d;rport
Max-Forwards: 70
From: "Unknown" <sip:Unknown@x.x.x.21>;tag=as667d9eef
To: <sip:x.x.x.5>
Contact: <sip:Unknown@x.x.x.21>
Call-ID: 7aa9dda8060a901731de7b277ce6583c@x.x.x.21
CSeq: 102 OPTIONS
User-Agent: Asterisk PBX 1.6.0.21
Date: Thu, 26 Aug 2010 11:38:54 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces, timer
Content-Length: 0

<--- SIP read from UDP://x.x.x.5:5060 --->
SIP/2.0 500 Server Internal Error
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK7dbebe3d;rport=5060
Call-ID: 7aa9dda8060a901731de7b277ce6583c@x.x.x.21
From: "Unknown"<sip:Unknown@x.x.x.21>;tag=as667d9eef
To: <sip:x.x.x.5>;tag=f0ab7116
CSeq: 102 OPTIONS
Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,SUBSCRIBE,NOTIFY,INFO
Date: Thu, 26 Aug 2010 11:38:54 GMT
User-Agent: Asterisk PBX 1.6.0.21
Content-Length: 0


Дальше это всё повторяется... Куча вопросов в связи с этим небольшим кусочком дебагом:
Это нормально, что он отправляет пакеты даже когда я никуда не звоню с него?
Почему сразу OPTIONS, а где же INVITE? Этот Asterisk умеет "помнить" между перезапусками? Это можно как-то сбросить?
Откуда можно почерпнуть подробности о причине Server Internal Error? Мне говорят, что на SoftX вроде как ничего нету. Есть повод этому не верить?
Как я понимаю, дело отнюдь не в регистрации. Если бы мешало именно её отстуствие, то SoftX как-то иначе бы ответил, 4xx, например Unauthorized или Forbidden. Не?

--
Заранее спасибо! Уже второй день гуглю и читаю, но что-то всё на другие проблемы натыкаюсь вроде NAT. Очень надеюсь на вашу помощь!
2010-08-26 15:54

Сообщений: 6521

Re: Asterisk как SIP-клиент: то 500, то 504

kirikaza:

Заранее спасибо! Уже второй день гуглю и читаю
Ну надо же! За два дня гугления не удалось настроить Астериск?
Не пройден тест на профпригодность.
Пакеты OPTIONS посылаются для поддержания NAT соединений, которых у Вас нет, а посылаются потому что указано qualify=yes.
Лучше обратитесь к интеграторам, с таким минимальным багажом знания это будет похоже на индивидуальные курсы для даунов, решивших получить квалификацию VoIP administrator.
2010-08-26 16:09

Avatara of kirikaza
Откуда: Россия, Ульяновск
Сообщений: 5

Re: Asterisk как SIP-клиент: то 500, то 504

Да вы просто ужасно вежливы. Ну да ладно, будем считать, что все устали.

За два дня гугления не удалось настроить Астериск?

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

Лучше обратитесь к интеграторам

К сожалению, нету такой возможности. Вообще говоря, я занимаюсь не своим делом: у меня есть опыт администрирования под UNIX, но не Asterisk. Тем не менее так уж оно вышло.

Пакеты OPTIONS посылаются для поддержания NAT соединений ... qualify=yes.

Ага, спасибо. Т.е. это нормально что SoftX отвечает 500 на неожиданные запросы?

ОК, выключил qualify и попробовал позвонить с Asterisk:


conf*CLI> originate SIP/999999@huawei-270084 extension 501
Audio is at x.x.x.21 port 19138
Video is at x.x.x.21 port 11314
Adding codec 0x4 (ulaw) to SDP
Adding codec 0x8 (alaw) to SDP
Adding codec 0x2 (gsm) to SDP
Adding codec 0x200 (speex) to SDP
Adding codec 0x400 (ilbc) to SDP
Adding video codec 0x40000 (h261) to SDP
Adding video codec 0x80000 (h263) to SDP
Adding video codec 0x100000 (h263p) to SDP
Adding video codec 0x200000 (h264) to SDP
Reliably Transmitting (no NAT) to x.x.x.5:5060:
INVITE sip:999999@x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK48c14bd4;rport
Max-Forwards: 70
From: "Unknown" <sip:270084@x.x.x.21>;tag=as1382b2d2
To: <sip:999999@x.x.x.5>
Contact: <sip:270084@x.x.x.21>
Call-ID: 379919eb3ced7354667c65481a32d070@x.x.x.21
CSeq: 102 INVITE
User-Agent: Asterisk PBX 1.6.0.21
Date: Thu, 26 Aug 2010 12:38:57 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces, timer
Content-Type: application/sdp
Content-Length: 464

v=0
o=root 1575691621 1575691621 IN IP4 x.x.x.21
s=Asterisk PBX 1.6.0.21
c=IN IP4 x.x.x.21
b=CT:384
t=0 0
m=audio 19138 RTP/AVP 0 8 3 110 97
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:3 GSM/8000
a=rtpmap:110 speex/8000
a=rtpmap:97 iLBC/8000
a=fmtp:97 mode=30
a=ptime:20
a=sendrecv
m=video 11314 RTP/AVP 31 34 98 99
a=rtpmap:31 H261/90000
a=rtpmap:34 H263/90000
a=rtpmap:98 h263-1998/90000
a=rtpmap:99 H264/90000
a=sendrecv

---
<--- SIP read from UDP://x.x.x.5:5060 --->
SIP/2.0 100 Trying
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK48c14bd4;rport=5060
Call-ID: 379919eb3ced7354667c65481a32d070@x.x.x.21
From: "Unknown"<sip:270084@x.x.x.21>;tag=as1382b2d2
To: <sip:999999@x.x.x.5>
CSeq: 102 INVITE
Content-Length: 0


<------------->
--- (7 headers 0 lines) ---

<--- SIP read from UDP://x.x.x.5:5060 --->
SIP/2.0 500 Server Internal Error
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK48c14bd4;rport=5060
Call-ID: 379919eb3ced7354667c65481a32d070@x.x.x.21
From: "Unknown"<sip:270084@x.x.x.21>;tag=as1382b2d2
To: <sip:999999@x.x.x.5>;tag=efb0270d
CSeq: 102 INVITE
Content-Length: 0


<------------->
--- (7 headers 0 lines) ---
Transmitting (no NAT) to x.x.x.5:5060:
ACK sip:999999@x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK48c14bd4;rport
Max-Forwards: 70
From: "Unknown" <sip:270084@x.x.x.21>;tag=as1382b2d2
To: <sip:999999@x.x.x.5>;tag=efb0270d
Contact: <sip:270084@x.x.x.21>
Call-ID: 379919eb3ced7354667c65481a32d070@x.x.x.21
CSeq: 102 ACK
User-Agent: Asterisk PBX 1.6.0.21
Content-Length: 0


---
Really destroying SIP dialog '379919eb3ced7354667c65481a32d070@x.x.x.21' Method: INVITE


Может быть, подскажете, что я делаю не так и где искать проблему?
2010-08-26 16:46

Сообщений: 6521

Re: Asterisk как SIP-клиент: то 500, то 504

Проблему искать везде.
Звоните с номера 270084 на Астериске на sip:999999@x.x.x.5 - то есть точно знаете, что на Х..вэе (плохо у них с названием) есть такой номер - 999999?

И он, Х..вэй, отвечает Вам SIP/2.0 500 Server Internal Error
Спросите об этом админа, что в Х.. доме живёт
Он с этим ответом ложится,
Он с этим ответом встаёт.
2010-08-26 17:06

Avatara of kirikaza
Откуда: Россия, Ульяновск
Сообщений: 5

Re: Asterisk как SIP-клиент: то 500, то 504

есть такой номер - 999999?
Да, номер такой есть. Если я подключаюсь к 270084 с софтфона и звоню на 999999, то всё работает.

И он, Х..вэй, отвечает Вам SIP/2.0 500 Server Internal Error
Спросите об этом админа, что в Х.. доме живёт

Админ не в состоянии ответить на вопрос "почему 500". Я от него не могу добиться даже ответа, есть ли на SoftX логи, в которых было бы описано, почему 500. А они есть там на самом деле?

Админ также настаивает, что должен быть сначала пакет REGISTER, а уж потом всё остальное. ОК, включил регистрацию и вижу вот такое общение Asterisk и SoftX:
======================================================================
conf*CLI> sip reload
[Aug 26 20:54:00] NOTICE[40947]: chan_sip.c:10016 sip_reregister: -- Re-registration for 270084@x.x.x.5
REGISTER 12 headers, 0 lines
Reliably Transmitting (no NAT) to x.x.x.5:5060:
REGISTER sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport
Max-Forwards: 70
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
CSeq: 102 REGISTER
User-Agent: Asterisk PBX 1.6.0.21
Expires: 120
Contact: <sip:0084@x.x.x.21>
Event: registration
Content-Length: 0


---
Retransmitting #1 (no NAT) to x.x.x.5:5060:
REGISTER sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport
Max-Forwards: 70
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
CSeq: 102 REGISTER
User-Agent: Asterisk PBX 1.6.0.21
Expires: 120
Contact: <sip:0084@x.x.x.21>
Event: registration
Content-Length: 0


---
<--- SIP read from UDP://x.x.x.5:5060 --->
hello
<------------->

Retransmitting #2 (no NAT) to x.x.x.5:5060:
REGISTER sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport
Max-Forwards: 70
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
CSeq: 102 REGISTER
User-Agent: Asterisk PBX 1.6.0.21
Expires: 120
Contact: <sip:0084@x.x.x.21>
Event: registration
Content-Length: 0


---
Retransmitting #3 (no NAT) to x.x.x.5:5060:
REGISTER sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport
Max-Forwards: 70
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
CSeq: 102 REGISTER
User-Agent: Asterisk PBX 1.6.0.21
Expires: 120
Contact: <sip:0084@x.x.x.21>
Event: registration
Content-Length: 0

---
Retransmitting #4 (no NAT) to x.x.x.5:5060:
REGISTER sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport
Max-Forwards: 70
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
CSeq: 102 REGISTER
User-Agent: Asterisk PBX 1.6.0.21
Expires: 120
Contact: <sip:0084@x.x.x.21>
Event: registration
Content-Length: 0


---
Retransmitting #5 (no NAT) to x.x.x.5:5060:
REGISTER sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport
Max-Forwards: 70
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
CSeq: 102 REGISTER
User-Agent: Asterisk PBX 1.6.0.21
Expires: 120
Contact: <sip:0084@x.x.x.21>
Event: registration
Content-Length: 0


---
Retransmitting #6 (no NAT) to x.x.x.5:5060:
REGISTER sip:x.x.x.5 SIP/2.0
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport
Max-Forwards: 70
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
CSeq: 102 REGISTER
User-Agent: Asterisk PBX 1.6.0.21
Expires: 120
Contact: <sip:0084@x.x.x.21>
Event: registration
Content-Length: 0


---
[Aug 26 20:54:20] WARNING[40947]: chan_sip.c:2959 retrans_pkt: Maximum retries exceeded on transmission 5fc2292821632b9a4e0cabf94325e140@x.x.x.21 for seqno 102 (Critical Request) -- See doc/sip-retransmit.txt.
<--- SIP read from UDP://x.x.x.5:5060 --->
hello
<------------->
<--- SIP read from UDP://x.x.x.5:5060 --->
hello
<------------->
<--- SIP read from UDP://x.x.x.5:5060 --->
SIP/2.0 504 Server Time-out
Via: SIP/2.0/UDP x.x.x.21:5060;branch=z9hG4bK6481ec21;rport=5060
Call-ID: 5fc2292821632b9a4e0cabf94325e140@x.x.x.21
From: <sip:270084@x.x.x.5>;tag=as0f80a293
To: <sip:270084@x.x.x.5>;tag=6adc00e0
CSeq: 102 REGISTER
Content-Length: 0



<------------->
--- (7 headers 0 lines) ---
<--- SIP read from UDP://x.x.x.5:5060 --->
hello
затем так много раз
==========================================================================

Я выделил жирным те места, которые меня заинтересовали.
Первое: что это за ответ "hello"? В RFC я такого не нашёл.
Второе: весьма подозрительное предупреждение. В указанной доке идёт речь лишь о firewall. Но раз и SoftX, и Asterisk по отдельности работают без проблем, то дело не в нём, ведь так?
Третье: т.е. Asterisk должен был как-то среагировать на hello и ответить? но он не ответил и SoftX выдал 504?

Я тут уже раньше натыкался на такую проблему на этом форуме (Huawei softx3000 + asterisk (504 Server timeout)), но там проблема решилась авторизацией по IP (вот). А есть другие варианты?

Спасибо за внимание!!
2010-08-26 21:41

Сообщений: 6521

Re: Asterisk как SIP-клиент: то 500, то 504

Asterisk посылает REGISTER, и не дождавшись ответа перепосылает REGISTER
Retransmitting #1
потом ещё раз
Retransmitting #2
и ещё
Retransmitting #3
и так 6 раз. После чего говорит Maximum retries exceeded.

Это может быть вызвано разными причинами. Как Вы регистрируете телефон на Huawei softx3000? Поточнее пожалуйста!
Если есть возможность - выцепить REGISTER и ответ если регистрировать софтфон с 270084 и mysuperpassword

Должно быть что-то типа user - 270084 & secret - mysuperpassword
И тогда строка регистрации на Астериске должна быть
register => 270084:mysuperpassword@10.11.12.5/270084

Expires: 120 - очень мало, дефолтное значение порядка 3600.
И почему
Contact: <sip:0084@x.x.x.21>
если должно быть Contact: <sip:270084@x.x.x.21> ??
Передайте админу, что для исходящих регистрация не нужна.
Админ не прошёл тест на профпригодность. Лог есть однозначно. Но он не знает где его искать.
2010-08-26 21:57

Avatara of kirikaza
Откуда: Россия, Ульяновск
Сообщений: 5

Re: Asterisk как SIP-клиент: то 500, то 504

Как Вы регистрируете телефон на Huawei softx3000? Поточнее пожалуйста!
Админ мне выцепил регистрацию телефона (мне всё прилетело одной строкой, поэтому форматировал я вручную -- может, где слепил две строчки):
=====================================================================
REGISTER sip:y.y.y.4:5060;user=phone SIP/2.0
Via: SIP/2.0/UDP y.y.y.254:28203;branch=z9hG4bK1789d5f02dd1a157cbd968bfd
Call-ID: SBCtsKqv_PZoIcP-0efVrrTaiPIj788RU
From: ;tag=4bcc64b0
To:
CSeq: 1079 REGISTER
Max-Forwards: 70
User-Agent: Nokia RM-159 V 11.0.026
Contact: ;expires=3600
Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REGISTER,PRACK,INFO,UPDATE,SUBSCRIBE,NOTIFY,MESSAGE,REFER,PUBLISH
Accept: application/sdp
Content-Length: 0


SIP/2.0 200 OK
Via: SIP/2.0/UDP y.y.y.254:28203;branch=z9hG4bK1789d5f02dd1a157cbd968bfd
Call-ID: SBCtsKqv_PZoIcP-0efVrrTaiPIj788RU
From: ;tag=4bcc64b0
To: ;tag=bce8eccf
CSeq: 1079 REGISTER
Expires: 3600
Contact: ;expires=3600
Server: Huawei SoftX3000 V300R601
Content-Length: 0
=====================================================================

Expires: 120 -- очень мало, дефолтное значение порядка 3600.

Да, я тоже обратил на это внимание, но тогда ещё не нашёл настройку defaultexpiry, ибо искал её среди peer specific options. Правда, я подумал, что 120 секунд это более чем достаточно для общения сервера на FreeBSD и Huawei-ной станции, находящихся в одном сегменте сети... Оказалось, мои догадки были неверны. Сейчас поставил 3600 -- ура! Ответ сменился на Unauthorized! Спасибо!!

А это удалось решить буквально первой же ссылкой в гугле: нужен pedantic=yes. О, чудо! Авторизация удалась! `sip show registry` говорит "Registered". Удалось позвонить с Asterisk на 999999! О, как я счастлив!

И почему
Contact: <sip:0084@x.x.x.21>

если должно быть
Contact: <sip:270084@x.x.x.21>



Ну это я так задал правило регистрации:
register => 270084:password@x.x.x.5/0084

Я понял из доков, что таким образом смогу сделать extension для входящих вызовов равный 0084. Но фокус не прошёл. Запрос REGISTER уходит c 0084 в заголовке Contact, а ответ OK приходит с 270084 в Contact. Видимо, SoftX игнорирует предложение использовать 0084. Но это не столь важно, extensions.ael я знаю как править ;)

ded, огромное спасибо за время и терпение!! Я уже был в отчаянии пытаясь добиться от трёх работников провайдера хоть чего-то. Для меня форум был уже последней надеждой и Вы меня очень выручили!! Ещё раз спасибо!!
2010-08-26 23:34

Сообщений: 6521

Re: Asterisk как SIP-клиент: то 500, то 504

Это потому что я крут невыразимо! Кто такие безвестные работники провайдера? Кто их знает в мире VoIP? И кто я? :)
Можно было вместо pedantic=yes поставить на пире usereqphone=yes
Я так думаю!
2010-08-26 23:53

Avatara of zzuz
Откуда: SPb
Сообщений: 1307

Re: Asterisk как SIP-клиент: то 500, то 504

Почему мне так кажется , что это разговор про Арктел?
http://линия24.рф - Астериск и прочие бубны!
2010-08-27 10:08

Сообщений: 6521

Re: Asterisk как SIP-клиент: то 500, то 504

zzuz, думаю что нет. То, как Арктел подаёт DIDs клиентам и какими методами ограничивает канальность входящих и исходящих - просто книга Necronomicon.
2010-08-27 10:56

1 2>
Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru