Если вы читаете это, скорее всего, вы уже столкнулись с ситуацией, когда офис остаётся без связи из-за проблем на стороне вашего SIP-провайдера. Или, может быть, вы хотите заранее подготовиться и не потерять звонки в следующий раз. В любом случае, задача конкретная: настроить второй SIP-транк, который автоматически подхватит звонки, когда основной упадёт. Разберёмся, как это сделать — без теории, только практика.
- Что вообще такое резервный SIP-транк и зачем он нужен
- Что понадобится для настройки
- Пошаговая настройка на примере FreePBX/Asterisk
- Шаг 1. Добавляем второй SIP-транк
- Шаг 2. Настраиваем исходящую маршрутизацию (Outbound Routes)
- Шаг 3. Настраиваем определение недоступности транка (failover detection)
- Шаг 4. Настраиваем входящую маршрутизацию
- Шаг 5. Проверяем работу
- Настройка на других популярных АТС
- 3CX
- Eltex (SMART PBX, TAUREL)
- Grandstream UCM
- Сравнение подходов к резервированию
- Что выбрать в зависимости от вашей ситуации
- Частые ошибки при настройке
- Практические рекомендации
- Итог: что делать прямо сейчас
Что вообще такое резервный SIP-транк и зачем он нужен
SIP-транк — это виртуальный канал связи между вашей IP-АТС и телефонной сетью через интернет. По нему идут входящие и исходящие звонки. Если этот канал по какой-то причине перестаёт работает — ваша компания телефонией остаётся. Клиенты слышат короткие гудки или тишину, менеджеры не могут позвонить.
Резервный SIP-транк — это второй канал связи с другим провайдером (или другим каналом у того же), который включается автоматически, когда основной недоступен. Переключение занимает от нескольких секунд до минуты — в зависимости от настроек вашей АТС.
Кому это реально нужно:
- компаниям, где потеря звонка — это потеря клиента (продажи, поддержка, сервис);
- офисам, которые не могут позволить себе простой по несколько часов;
- тем, кто уже переживал падение основного провайдера и не хочет повторения.
Что понадобится для настройки
Прежде чем начинать, убедитесь, что у вас есть следующее:
- IP-АТС, которая поддерживает работу с несколькими SIP-транками и имеет функции маршрутизации при сбое (failover). Подойдут Asterisk, FreePBX, 3CX, Eltex, Grandstream UCM, Яндекс.Телефония (корпоративная) и другие. Если у вас «коробочное» решение от провайдера — уточните у них, поддерживается ли резервирование.
- Договор со вторым SIP-провайдером. Это может быть любой оператор, предоставляющий SIP-транк. Желательно, чтобы он работал через другой интернет-канал — иначе смысл резервирования теряется.
- Доступ к веб-интерфейсу вашей АТС с правами администратора.
- Данные для подключения от второго провайдера: SIP-сервер, логин, пароль, номер для идентификации.
Важный момент: идеальная схема — это когда основной и резервный транки идут через разные интернет-каналы. Если оба транка используют один и тот же роутер и один канал связи, то при падении интернета упадут оба. Если у вас один интернет, резервный транк всё равно имеет смысл — он спасёт от проблем на стороне провайдера телефонии, но не от обрыва интернета.
Пошаговая настройка на примере FreePBX/Asterisk
Я буду описывать процесс на FreePBX, потому что это одна из самых распространённых систем. Если у вас другая АТС — логика будет такой же, названия разделов могут отличаться.
Шаг 1. Добавляем второй SIP-транк
- Заходим в веб-интерфейс FreePBX.
- Переходим в раздел Connectivity → Trunks.
- Нажимаем Add Trunk → Add SIP Trunk (chan_sip) или Add SIP Trunk (chan_pjsip) — зависит от того, какой драйвер вы используете. Если не знаете — используйте pjsip, он современнее.
- Заполняем основные настройки:
- Trunk Name — любое понятное имя, например backup_provider.
- Outbound CallerID — номер, который передаётся наружу (указывается провайдером).
- Maximum Channels — количество одновременных линий на этом транке. Поставьте столько, сколько вам выделили.
- В разделе Outgoing Settings → PEER Details прописываем параметры подключения от провайдера:
host=sip.backup-provider.ru
username=ваш_логин
secret=ваш_пароль
type=peer
context=from-trunk
disallow=all
allow=alaw
allow=ulaw
dtmfmode=rfc2833
insecure=port,invite
nat=yes
canreinvite=no
Конкретные значения зависят от вашего провайдера — уточните их в технической поддержке или в договоре.
- В разделе Incoming Settings выбираем тип входящих — обычно None (Registration) или указываем контекст, если провайдер шлёт звонки на определённый внутренний номер.
- Сохраняем настройки и применяем изменения (Apply Config — красная кнопка вверху).
Шаг 2. Настраиваем исходящую маршрутизацию (Outbound Routes)
- Переходим в Connectivity → Outbound Routes.
- Открываем вашу основную исходящую маршрутизацию.
- В разделе Trunk Sequence for Matched Routes видите список транков в порядке приоритета. Первый — основной, ниже добавляем резервный.
- Перетаскиваем ваш резервный транк на второе место в списке.
- Сохраняем.
Теперь при исходящем звонке система сначала попробует позвонить через основной транк. Если он недоступен — через резервный.
Шаг 3. Настраиваем определение недоступности транка (failover detection)
Это ключевой момент. АТС должна понять, что основной транк «лежит», и переключиться на резервный. В FreePBX это работает через модуль Failover или через настройки самого транка.
В современных версиях FreePBX с chan_pjsip:
- Откройте настройки резервного транка.
- Найдите параметр Fail Trunk или аналогичный — он указывает, какой транк считать резервным для основного.
- Альтернативный вариант — использовать модуль Endpoint Manager или настроить проверку через команду qualify=yes в peer details основного транка. Это заставит Asterisk периодически отправлять SIP OPTIONS на сервер провайдера и ждать ответа. Если ответа нет в течение заданного времени — транк считается недоступным.
Добавьте в peer details основного транка:
qualify=yes
qualifyfreq=30
Это значит: проверять доступность транка каждые 30 секунд. Если три проверки подряд не успешны — транк помечается как недоступный.
Шаг 4. Настраиваем входящую маршрутизацию
Для входящих звонков нужно определить, куда направлять вызовы, если основной транк упал:
- Переходим в Connectivity → Inbound Routes.
- Если у вас настроена маршрутизация по DID (номеру, на который звонят) — добавьте резервный транк в список возможных источников для этой маршрутизации.
- В поле Set Destination укажите, куда попадает звонок — на группу операторов, IVR-меню или конкретный внутренний номер.
Если ваша АТС поддерживает failover для входящих автоматически — достаточно добавить резервный транк в ту же группу маршрутизации. Если нет — может потребоваться отдельная входящая маршрутизация для резервного транка с тем же назначением.
Шаг 5. Проверяем работу
Не пропускайте этот шаг. Настройка без проверки — это ещё не настройка.
- Сымитируйте падение основного транка. Самый простой способ — временно отключите его в настройках АТС (не удаляйте, а просто выключите).
- Позвоните на свой номер с мобильного. Звонок должен прийти через резервный транк. Возможна задержка в 10–30 секунд.
- Сделайте исходящий звонок. Он должен пойти через резервный транк.
- Включите основной транк обратно и убедитесь, что система возвращается к нему.
- Проверьте в логах:
asterisk -rvvvв консоли или через веб-интерфейс. Вы увидите, как система фиксирует недоступность транка и переключает вызовы.
Настройка на других популярных АТС
3CX
В 3CX настройка резервного транка делается через раздел Settings → SIP Trunks. Добавляете второй транк, затем в настройках основного транка указываете Failover Trunk — выбираете резервный из списка. 3CX автоматически определяет недоступность через SIP OPTIONS и переключает трафик. Входящие звонки с резервного транка нужно направить на тот же внутренний номер или группу, что и с основного.
Eltex (SMART PBX, TAUREL)
В Eltex настройка идёт через веб-интерфейс в разделе Транки → SIP-транки. Создаёте второй транк, затем в настройках маршрутизации указываете приоритеты. Для failover используется механизм Groups of trunks — вы создаёте группу, добавляете в неё оба транка с разными приоритетами, и система автоматически использует резервный при недоступности основного.
Grandstream UCM
В UCM настраивается через PBX → Trunks → VoIP Trunks. После создания второго транка переходите в PBX → Call Routes → Outbound Routes, задаёте приоритет транков. Для определения недоступности используется встроенный механизм мониторинга — нужно убедиться, что опция Detect Trunk Status включена.
Сравнение подходов к резервированию
| Подход | Надёжность | Сложность настройки | Что защищает | Подходит для |
|---|---|---|---|---|
| Два транка через один провайдер | Низкая-средняя | Простая | Сбои конкретного канала провайдера | Минимальный бюджет, простые сценарии |
| Два транка через разных провайдеров, один интернет | Средняя | Средняя | Поломка у одного из провайдеров телефонии | Большинство офисов |
| Два транка через разных провайдеров, разные интернет-каналы | Высокая | Средняя-высокая | Поломка провайдера + обрыв интернета | Критичные коммуникации, продажи, поддержка |
| SIP-транк + мобильный номер как резерв (через GSM-шлюз) | Средняя-высокая | Высокая | Полная потеря интернета и телефонии | Удалённые офисы, филиалы с нестабильным интернетом |
Что выбрать в зависимости от вашей ситуации
У вас небольшой офис, один интернет, один провайдер телефонии. Найдите второго SIP-провайдера и настройте резервный транк. Это защитит вас от проблем на стороне оператора. Даже если у него авария — звонки пойдут через другого. Затраты: абонентская плата за второй транк (обычно небольшая, если он простаивает) + описходящих звонков по тарифу резервного провайдера.
У вас критичные звонки — продажи, техподдержка, диспетчерская. Делайте полноценное резервирование: два разных провайдера телефонии + два разных интернет-канала. Да, это дороже и сложнее в настройке, но вы будете на связи практически при любом сценарии.
У вас удалённый офис с нестабильным интернетом. Рассмотрите GSM-шлюз как резерв. Когда интернет падает, звонки автоматически идут через мобильную сеть. Это не чистый SIP-резерв, но связь сохраняется.
У вас «коробочная» телефония от провайдера (например, Манго, Задарма, Ростелеком-Бизнес). Уточните у своего провайдера, есть ли у них услуга резервного транка. Часто они предлагают её как дополнительную опцию. Это проще, чем настраивать всё самостоятельно, но менее гибко.
Частые ошибки при настройке
Ошибка 1: Оба транка идут через один интернет-канал. Это самая распространённая проблема. Настроили два транка, всё работает, а потом обрывается интернет — и оба транка падают. Если нет возможности провести второй интернет — хотя бы понимайте, что ваш резерв защищает только от проблем провайдера телефонии.
Ошибка 2: Не настроен qualify (проверка доступности). Без этого Asterisk может не заметить, что транк упал, и продолжать пытаться отправлять звонки через него. Клиент ждёт 30–60 секунд, слышит тишину, звонок сбрасывается. Всегда включайте qualify=yes.
Ошибка 3: Резервный транк не проверяют после настройки. Настроили, сохранили, забыли. Когда основной упадёт, выясняется, что на резервном транке закончились средства на счету, парустарел или провайдер заблокировал аккаунт. Проверяйте резервный транк хотя бы раз в месяц — делайте тестовый звонок.
Ошибка 4: Не настроена входящая маршрутизация для резервного транка. Исходящие звонки переключаются нормально, а входящие — нет. Клиенты звонят, но звонок не приходит в офис. Проверьте, что входящие маршруты настроены для обоих транков.
Ошибка 5: Используются разные кодеки на разных транках. Основной транк работает на G.729, резервный поддерживает только G.711. Если АТС не умеет транскодировать на лету — при переключении звонок может оборваться или превратиться в шипение. Убедитесь, что на обоих транках разрешён хотя бы один общий кодек (обычно G.711a/u).
Ошибка 6: Не учитывается CallerID. При переключении на резервный транк может передаваться другой CallerID или не передаваться вообще. Абонент видит «неопределённый номер» и не берёт трубку. Проверьте настройки CallerID на обоих транках.
Практические рекомендации
- Заведите отдельный внутренний номер для тестирования — направьте его на ту же группу операторов, что и основные входящие. Когда будете тестировать failover — звоните на этот номер, чтобы не сбивать коллег.
- Настройте уведомления о падении транка. Большинство АТС умеют отправлять email или SMS при смене статуса транка. Это позволит вам узнать о проблеме до того, как клиенты начнут жаловаться.
- Документируйте настройки. Запишите параметры обоих транков, логины, пароли, данные провайдеров. Если системный администратор уволится — новому будет почти невозможно разобраться, что и как настроено.
- Регулярно проверяйте баланс и статус резервного транка. Некоторые провайдеры блокируют транк при отрицательном балансе или при длительном простое. Раз в месяц делайте тестовый звонок через резервный канал.
- Убедитесь, что ваш интернет-роутер поддерживает SIP ALG или что он отключён. SIP ALG (Application Layer Gateway) в роутерах часто ломает SIP-сигнализацию. Если у вас проблемы с DTMF, односторонним аудио или обрывом звонков — в первую очередь проверьте настройки роутера.
Итог: что делать прямо сейчас
- Определите, какая у вас АТС и поддерживает ли она failover между транками.
- Выберите второго SIP-провайдера. Идеально — с другим каналом интернета, но даже без этого резервный транк уже лучше, чем ничего.
- Настройте второй транк в вашей АТС, укажите параметры подключения от провайдера.
- Настройте исходящую маршрутизацию с приоритетом: основной транк первый, резервный — второй.
- Включите проверку доступности транка (qualify=yes).
- Настройте входящую маршрутизацию для резервного транка.
- Протестируйте: отключите основной транк и убедитесь, что звонки идут через резервный.
- Настройте уведомления о смене статуса транка.
Резервный SIP-транк — это не роскошь, а базовая гигиена для бизнеса, который зависит от телефонной связи. Настройка занимает пару часов, а спасает от ситуаций, когда офис полдня молчит, а клиенты уходят к конкурентам. Если у вас один транк и нет резерва — выделите время на эту задачу на этой неделе. Это одна из тех вещей, которые делаются один раз и потом тихо работают на вас.
