Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Соединение нескольких * по IAX

Соединение нескольких * по IAX

<1 2
Avatara of switch
Откуда: Уфа
Сообщений: 5856

Re: Соединение нескольких * по IAX

Все заработало, премного благодарен!
Однако неплохо было бы пояснить тонкости, может быть кому-нибудь еще поможет.
на сколько я понимаю ситуацию дело обстоит так:
1) сервер 50(192.168.1.162) регистрируется на сервере 60(192.168.1.238) строкой регистрации:

register => connect50:secret@192.168.1.238

Для этой строки регистрации на сервере 60 есть учетная запись в IAX.conf вида

[connect50]
type=friend
auth=plaintext
user=connect60
secret=secret
context=from-internal
host=dynamic
callerid="SRV60"
trunk=yes
disallow=all
allow=alaw

Т.е. получается, что сервер 50 является клиентом сервера 60, это все понятно.
Мне непонятно, зачем в IAX.conf на сервере 50 учетная запись:

[connect60]
type=friend
auth=plaintext
user=connect50
secret=secret
context=from-internal
host=192.168.1.238
callerid="SRV50"
trunk=yes
disallow=all
allow=alaw

Для чего? без нее не работает, объясните плиз, кто может.
Про контексты все понял.
Еще вопросы:
Предполагается 30 серверов с астериском, получается, что все из них должны регистрироваться на каком-то центральном? И если будет недоступен этот центральный, остальные не смогут совершать вызовы? Я предполагал сделать так: Каждый из серверов регистрируется юзером на всех других и может совершать исходящие звонки ко всем серверам. Хочу распространять между серверами сведения о маршрутизации звонков к другим серверам всего двумя файлами extensions_net.conf и iax_net.conf, причем эти файлы будут для всех одинаковые. В первом - куда что маршрутизировать, во втором регистрации и записи для других серверов. Получится что каждый сервер будет зарегестрирован сам на себе и будет гонять траффик через IAX транк сам в себя. чтобы этого избежать можно в extensions_net.conf сделать условия маршрутизации что-то типа:

;для сервера 60
exten => _60ХХ,1,GotoIf($[${EXTEN:0:2}= 60]?:4)
exten => _60XX,2,Dial(SIP/${EXTEN})
exten => _60XX,3,Hangup
exten => _60XX,4,Dial(IAX2/connect60/${EXTEN})
;для сервера 50
exten => _50ХХ,1,GotoIf($[${EXTEN:0:2}= 50]?:4)
exten => _50XX,2,Dial(SIP/${EXTEN})
exten => _50XX,3,Hangup
exten => _50XX,4,Dial(IAX2/connect50/${EXTEN})
;для сервера 40
exten => _40ХХ,1,GotoIf($[${EXTEN:0:2}= 40]?:4)
exten => _40XX,2,Dial(SIP/${EXTEN})
exten => _40XX,3,Hangup
exten => _40XX,4,Dial(IAX2/connect40/${EXTEN})

т.е если номер принадлежит локальному диалплану, то перенаправляем в канал SIP минуя петлю через IAX
Как думаете, пройдет такое? Будет работать?

И еще: Поясните или дайте ссылку, если можно, как использовать ключ switch=>
Спасибо!
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-26 14:21

Сообщений: 72

Re: Соединение нескольких * по IAX

[connect60] на 50-м сервере нужен для того, чтоб получать и отправлять звонки, а вот без register как раз можно обойтись, если ip-адреса статические и без natа.
а по поводу 30-ти серверов с астериском - выбери 2(3) из них центральными и остальные пусть звонят на оба(на три)сразу или по очереди.
2006-12-26 15:08

Avatara of switch
Откуда: Уфа
Сообщений: 5856

Re: Соединение нескольких * по IAX

Если обойтись без регистрации, тогда пароль будет показан в CDR, да и запись будет совсем не удобоварима.

по поводу множества серверов - несколько центральных серверов делать не получится. Их придется размещать в разных филиалах и в этих филиалах обеспечивать очень надежный канал связи, что дорого. А когда все сервера равноправны, потеря одного из них повлияет только на него самого. Да и с конфигами меньше забот, изменилось что-нить, все файлы одинаковые, каждый сервак слил их по HTTP себе и подгрузил... Что скажете?
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-28 08:43

Сообщений: 72

Re: Соединение нескольких * по IAX

switchЕсли обойтись без регистрации, тогда пароль будет показан в CDR
это как?

а насчет одинакового диалплана - идея представляется здравой. тогда надо сделать примерно так:

в extensions.conf на сервере 50:
[bla-bla]
exten => _50XX,1,Dial(SIP/${EXTEN})
#include <файл общего для всех диал-плана>

в extensions.conf на сервере 60:
[bla-bla]
exten => _60XX,1,Dial(SIP/${EXTEN})
#include <файл общего для всех диал-плана>

...

<файл общего для всех диал-плана>:
exten => _XXXX,1,Dial(IAX2/connect${EXTEN}:0:2/${EXTEN})
2006-12-28 09:53

Avatara of switch
Откуда: Уфа
Сообщений: 5856

Re: Соединение нескольких * по IAX

По поводу "без регистрации" написано в
http://www.voip-info.org/wiki/view/Asterisk+-+dual+servers
пример 2.
да и сам пробовал. в CDR проскакивают записи вида
IAX2/username:pass@serverB/${EXTEN}

по поводу диалплана почти так и делаю.
ща думаю по поводу, как решить траблу с регистрацией...
подниму еще один сервер, попробую настроить...
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-28 14:47

<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