openSIPs 403 Ошибка запрещенного внешнего SIP-домена

Я пытаюсь понять, как мой софтфон отправляет BYE на зависание, чтобы я мог воссоздать его в другом месте. Ниже представлен пакет, который ZoIPer отправляет на сервер, на котором запущено программное обеспечение для сигнализации SIP.

Я пытаюсь построить эту строку и успешно зависнуть на ком-то, но неизменно получаю ошибки 400, 403, 407, 481 и 503. Проблема в том, что я не могу определить, откуда берется значение "did" в заголовке Route, а также не знаю, откуда берется значение "branch" в заголовке Via. Все остальные параметры предоставляются Asterisk для моего потребления, но не эти два.

Как определить "сделал" и "ветвь"?

Также в этом примере используется Proxy-Authorization, но для коротких вызовов ZoIPer опускает эту строку.

BYE sip:user1@astHost SIP/2.0
Via: SIP/2.0/UDP 192.168.1.183:5060;branch=z9hGda4bK-d8754z-678f2d4d1e5-1---d8754z-
Max-Forwards: 70
Route: <sip:sipHost;lr;ftag=733a98721;did=c0f.22438545>
Contact: <sip:[email protected]:5060;transport=UDP>
To: <sip:user1@mydomain;transport=UDP>;tag=as4f57c9b8a
From: <sip:user2@mydomain;transport=UDP>;tag=733a98721
Call-ID: Nzg1ZTEyYTg4NasdlkSZLK3j10.
CSeq: 3 BYE
Proxy-Authorization: Digest username="bobby",realm="TomTest.voip.snohio.net",nonce="4e8a1b1700005997e6b1d8732be4b4c01f56d27a6d2dd80b",uri="sip:[email protected]:5060",response="3dbb0f4cbb0000c7786975cf043e6898",algorithm=MD5
User-Agent: Zoiper rev.11137
Content-Length: 0

Спасибо.


person kmarks2    schedule 03.10.2011    source источник


Ответы (1)


branch — идентификатор транзакции BYE. Он ДОЛЖЕН начинаться с z9hG4bK и быть глобально уникальным, но в остальном его точный формат остается на усмотрение разработчика. В запросе любой пользовательский агент, отправляющий запрос, добавляет параметр branch. В вашем случае Zoiper рассчитает.

Большинство заголовков SIP могут содержать произвольные параметры, и здесь ftag и did являются примерами таких параметров. Согласно реестру IANA, они не являются частью какого-либо SIP RFC, поэтому могут означать что-нибудь. Похоже, это что-то внутреннее для Asterisk. Лучше всего оставить заголовки Route в покое.

Для BYE важными частями являются параметры Call-ID и tag в заголовках From и To. Примите это неправильно, и вы получите ответ 481 Call/Transaction Does Not Exist.

Вы получите ответы 403 и 407, если ваши учетные данные Authorization (403) или Proxy-Authorization (407) неверны.

Ответ 503 означает, что ваш прокси-сервер слишком занят для обработки вашего запроса.

person Frank Shearar    schedule 04.10.2011
comment
Спасибо. Да, в конце концов я нашел префикс Magic Cookie в RFC. Кроме того, я просто сбросил тег «сделал», и все заработало… немного. Если я правильно настроил закупку, я, кажется, завершаю только одну часть своего вызова, то есть исходящая часть появляется в режиме реального времени для другого пользователя, но линия не работает. - person kmarks2; 06.10.2011