Связка двух Asterisk по SIP

Задача — подключить два VoIP-сервера Asterisk между собой по протоколу SIP.
Адресация номеров в офисе 1 — 1ХХХ, в офисе 2 — 2ХХХ.

Очень долго я пытался заставить работать два программных (софтвенных) телефонных сервера Asterisk вместе. Компилировать Астериск я не хотел, поэтому воспользовался готовыми сборками Elastix и TrixBox последних версий.

Скачать последние и предыдущие старые версии Elastix и Trixbox можно по ссылкам: Все версии Elastix и Все версии Trixbox

Сопрягаться Астериксы никак не хотели, но нашёл один из мануалов, который действительно пропустил звонки по шаблонам в разные стороны. И не важно, какая версия сервера у вас стоит.
Итак, как связать два Asterisk по SIP протоколу без компилирования вручную или других танцев с бубном?

Вкратце — нам нужно настроить транк SIP и исходящую маршрутизацию на каждом из серверов.

Настройки транка 1 сервера:

Trunk Name: msk1

Outgoing Settings
Trunk Name: msk1
type=friend
username=msk1
secret=MyPassword
context=from-internal
host=dynamic
disallow=all
nat=yes
insecure=invite,port
canreinvite=no
allow=speex,alaw,gsm

Incoming Settings
Удаляем все

Registration
msk2:MyPassword@172.16.82.4/msk1

Настройки транка 2 сервера:

Trunk Name: msk2

Outgoing Settings
Trunk Name: msk2

type=friend
username=msk2
secret=MyPassword
context=from-internal
host=dynamic
disallow=all
nat=yes
insecure=invite,port
canreinvite=no
allow=speex,alaw,gsm

Incoming Settings
Удаляем все

Registration
msk1:MyPassword@172.16.81.5/msk2

Маршрутизация вызов по шаблону между Asterisk

Теперь нужно настроить исходящую маршрутизацию, чтобы сервер понимал, что надо звонить через второй Asterisk, а не через себя.
Напомню, адресация в офисе msk1 — 1XXX, а в msk2 — 2XXX.

Соответственно на сервере 1, в исходящей маршрутизации указываем имя маршрутизации, обязательно ставим галочку Intra-company и в поле match pattern (маска номера), пишем 2XXX, внизу выбираем имя транка msk2. Двойку ставим, потому что это сервер 1, с которого будут звонить на сервер 2, где номера начинаются с двойки. На втором сервере, все наоборот.

Как итог — звонки проходят моментально, без проблем с кодеками (при настройках по-умолчанию), передают внутренние номера корректно. В общем — стыковка Астерисков прошла успешно! Очередная заплатка для моей дырявой головы.

Добавить комментарий