FreePBX 13: Объединение двух Asterisk по IAX

Описание процесса объединения двух Asterisk серверов с помощью протокола IAX, используя графический интерфейс FreePBX версии 13. Пример основан на двух офисах компании, расположенных в Москве и Новосибирске.

Схема сети и нумерация

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

  • Москва: внутренняя подсеть 192.168.10.0/24. Телефонная нумерация начинается с 1 (трёхзначные номера от 100 до 199).
  • Новосибирск: внутренняя подсеть 192.168.20.0/24. Телефонная нумерация начинается с 2 (трёхзначные номера от 200 до 299).

Офисы соединены VPN-соединением, обеспечивающим сетевую связь между подсетями. Это позволяет, например, пинговать устройства из одного офиса в другой по внутренним IP-адресам.

Выбор протокола IAX обусловлен тем, что он является проприетарной разработкой Asterisk. Использование IAX позволяет использовать собственную, проверенную технологию.

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

Для демонстрации используются два софтфона:

  • 101 (MicrоSIP) – зарегистрирован на московском Asterisk сервере (IP-адрес 192.168.1.167).
  • 201 (Phone or Light) – зарегистрирован на новосибирском Asterisk сервере (IP-адрес 192.168.1.168).

В примере, для упрощения, используется одна подсеть для обоих Asterisk серверов. В реальной сети рекомендуется использовать разные подсети.

Настройка транков и маршрутов в FreePBX

Для соединения Asterisk серверов необходимо создать два транка и два маршрута.

На московском Asterisk сервере:

  1. Добавить транк: Тип транка – IAX2. Имя транка – novosib (в сторону Новосибирска).
  2. Настройки IAX:
    • Outgoing: username=novosib, host=192.168.1.168, secret=[пароль], context=from-internal, disallow=all, allow=g711ulaw.
    • Incoming: username=moscow, secret=[пароль].

На новосибирском Asterisk сервере:

  1. Добавить транк: Тип транка – IAX2. Имя транка – moscow (в сторону Москвы).
  2. Настройки IAX:
    • Outgoing: username=moscow, host=192.168.1.167, secret=[пароль], context=from-internal, disallow=all, allow=g711ulaw.
    • Incoming: username=novosib, secret=[пароль].

На обоих Asterisk серверах:

  • Маршруты:
    • Москва: Маршрут для вызовов на номера, начинающиеся с 2 (Новосибирск). Транк – novosib. Паттерн – 2xx.
    • Новосибирск: Маршрут для вызовов на номера, начинающиеся с 1 (Москва). Транк – moscow. Паттерн – 1xx.

После настройки проверьте статус транков и пиров командами sip show peers и iax2 show peers. Выполните тестовый звонок между софтфонами 101 и 201 в обоих направлениях.

Настройка связи между двумя Asterisk серверами с использованием протокола IAX успешно завершена. Тестирование подтвердило работоспособность системы.

Что будем искать? Например,программа