Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

asterisk + kamailio

0

Настраивал связку * и kamailio по инструкции

правда с небольшим отступлением - kamailio и * находятся на разных серверах, соединены между собой через openvpn, таблица sipusers находится прямо в базе openser на kamailio и просто синхронизирована с базой *

адресация такая

10.10.2.2 - openvpn.asterisk
10.10.2.10 - openvpn.kamailio
192.168.0.1 - внутренний адрес kamailio
192.168.0.50 - адрес sip-клиента

Воткнулся вот на чем пользователь регистрируется на kamailio (появляется запись в openser.location), далее kamailio перекидывает регистрацию от своего имени на *

вот дамп с астериска при регистрации клиента

<--- SIP read from UDP:10.10.2.10:5060 --->
REGISTER sip:10.10.2.2:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.1;branch=z9hG4bKda92.9a1e2bc1.0
To: sip:user1@10.10.2.2
From: sip:user1@10.10.2.2;tag=533cb9e91f4b999cf76861cbb9ed54ed-49f0
CSeq: 10 REGISTER
Call-ID: 77ffdffc-5520@127.0.0.1
Content-Length: 0
User-Agent: kamailio (3.3.4 (i386/linux))
Contact: <sip:user1@10.10.2.10:5060>
Expires: 3600

<------------->
--- (10 headers 0 lines) ---
Sending to 10.10.2.10:5060 (no NAT)

<--- Transmitting (NAT) to 10.10.2.10:5060 --->
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 192.168.0.1;branch=z9hG4bKda92.9a1e2bc1.0;received=10.10.2.10;rport=5060
From: sip:user1@10.10.2.2;tag=533cb9e91f4b999cf76861cbb9ed54ed-49f0
To: sip:user1@10.10.2.2;tag=as14b5e56d
Call-ID: 77ffdffc-5520@127.0.0.1
CSeq: 10 REGISTER
Server: Asterisk 1.8
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="6922a08d"
Content-Length: 0


<------------>
Scheduling destruction of SIP dialog '77ffdffc-5520@127.0.0.1' in 32000 ms (Method: REGISTER)

с софтфона успешно делаем любые наборы, кроме себя любимого. Оказывается на * регистрация отсутствует

Решение: надо поле secret выставить в null


Теперь другая беда

прошу еще помощи.

проблем с регистрацией пользователей из локалки (192.168.0.0/24) нет

tcpdump выдает нормальный диалог

00:57:14.849029 IP 10.10.2.10.6000 > 10.10.2.2.sip: SIP, length: 364
00:57:14.855616 IP 10.10.2.2.sip > 10.10.2.10.6000: SIP, length: 482

а вот при попытке зарегаться через внешний интерфейс

дамп в вот такой

01:00:53.754497 IP 10.10.20.x.6000 > 10.10.2.2.sip: SIP, length: 365
01:00:53.879495 IP 10.10.20.x.6000 > 10.10.2.2.sip: SIP, length: 367
01:00:57.629493 IP 10.10.20.x.6000 > 10.10.2.2.sip: SIP, length: 368
01:00:57.754497 IP 10.10.20.x.6000 > 10.10.2.2.sip: SIP, length: 365
01:00:57.879495 IP 10.10.20.x.6000 > 10.10.2.2.sip: SIP, length: 367

где 10.10.20.x - внешний ip kamailio т.е. kamailio переправляет пакеты в туннель указывая не свой туннельный ip, а свой внешний ip

при этом регистрация на kamailio проходит, а вот астериск такого финта уже не понимает и пытается вернуть ответ на 10.10.20.x.6000

Спасибо за подсказку. Решение: поднял rtpproxy В конфиге kamailio прописал

#!define WITH_NAT
mhomed=1
max_expiry=600

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

userXXX..., где XXX числа

вопрос - можно-ли сделать, чтобы регистрация на kamailio происходила по логинам

aADasQEqw-userXXX

а в астериск уже пробрасывалась как userXXX

удалить закрыть спам изменить тег редактировать

спросил 2013-04-02 20:33:35 +0400

neiroman2k Gravatar neiroman2k
1 8 1 6

обновил 2013-04-05 00:49:47 +0400

Comments

про 2: прочитать про kamailio mhomed

komrad123 ( 2013-04-04 11:02:14 +0400 )редактировать

mhomed конфигурации создают нереально много проблем. ибо их никто не тестит при version change. вобщем если есть возможность убрать както multihomed - лучше этим шансом воспользоватся. честно говоря даже nated конфигурация kamailio(только на внутреннем адресе, с внешнего адреса делаете nat на внутренний) гараздо менее проблемная.

meral ( 2013-04-05 05:10:43 +0400 )редактировать

у меня две три точки входа - влан, vpn, внешний мир. получится без multihomed ?

neiroman2k ( 2013-04-05 10:04:01 +0400 )редактировать

хз. попробуйте. всегда можно нат сделать.

meral ( 2013-04-05 12:20:27 +0400 )редактировать

> mhomed конфигурации создают нереально много проблем. пруф можно ? или это конкретно для Вас нереально много проблем создает ?

komrad123 ( 2013-04-05 13:08:00 +0400 )редактировать

bye на них некоректно работает. topology hiding не работает. fixnatedcontact работает криво если у вас что кроме совсем тривльных схем(больше одного роута или есть переписывание пакета).

meral ( 2013-04-05 14:04:24 +0400 )редактировать

гм, topology hiding не используем, для fixnatedcontact для разных интефейсов флаги раные ставили и оно вроде живет уже как год в проде. про бай вообще не понятно что у Вас там может не работать.

komrad123 ( 2013-04-08 12:00:57 +0400 )редактировать

ну я за вас рад, че. значит вы не переписываете пакеты.

meral ( 2013-04-08 12:53:34 +0400 )редактировать

Поставил kamailio+rtpproxy за нат. Изнутри клиенты регистрируются. Для внешних сделал portforward на kamailio. При попытке регистрации получаю "SIP/2.0 403 Not relaying". Помогите плз - что ему еще надо выкрутить ?

neiroman2k ( 2013-04-10 02:57:03 +0400 )редактировать

вам надо добавить alias=external_p

meral ( 2013-04-10 10:26:16 +0400 )редактировать

1 Ответ

1

дык а пароль не пробывали передавать в REGISTER... ?

ссылка удалить спам редактировать

ответил 2013-04-02 21:58:00 +0400

komrad123 Gravatar komrad123
3810 5 3 44

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку
1 закладка

подписаться на rss ленту новостей

Статистика

Задан: 2013-04-02 20:33:35 +0400

Просмотрен: 3,037 раз

Обновлен: Apr 05 '13

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.