3CX SIP сервер + SIP домен + зовнішні підключення на динамічному IP адресу

У даній статті я покажу, як вирішити дуже актуальну задачу для невеликих компаній або домашніх офісів. Завдання розпадеться на чотири складові:

  1. Створити для компанії власний SIP адреса виду sip.домен_фірми (наприклад, sip.3cx.com.ua).
  2. Приймати SIP виклики безпосередньо на SIP адреси користувачів (наприклад, [email protected])
  3. Підключатися до офісної 3CX і працювати віддалено, маючи при цьому динамічний IP адреса
  4. Приймати виклики від VoIP провайдерів, маючи динамічний IP адреса

Будемо виходити з припущення про те, що невелика фірма має тільки доменне ім'я, але не має власного або провайдерського DNS сервера. Припустимо також, що фірма не готова оплачувати фіксований IP адреса, або він не передбачений умовами її інтернет-підключення. Я також припускаю, що читачі в загальних рисах знайомі з принципами роботи DNS, налаштуванням файрволов і протоколом SIP. Для визначеності, визначимо наше доменне ім'я як 3cx.com.ua.

Спочатку розмістимо наше доменне ім'я на одному з найпопулярніших безкоштовних DNS сервісів Zoneedit . Детальна інструкція по підключенню домену на Zoneedit є тут. У даній статті ця процедура обговорюється тільки стосовно SIP адресами (хостам).

Після реєстрації нашого домену в Zoneedit, створимо хост sip.3cx.com.ua і направимо його на поточний IP адреса нашого сервера 3CX. Наш поточний IP адреса можна дізнатися по цієї засланні.

Увага! Для чого я створив цей хост? Справа в тому, що я міг би і не створювати хост (піддомен), а використовувати DNS SRV запис. Тоді SIP адреси користувачів мали б вигляд [email protected], тобто відповідали адресами E-mail. І це, загалом, краще. Але, на жаль, Zoneedit не підтримує SRV записи! З іншого боку, за стандартом, якщо SIP клієнт не знаходить SIP сервер по SRV записи, він намагається підключитися до A записи домену на порт 5060. У моєму випадку це буде 3cx.com.ua:5060. Але, A запис 3cx.com.ua вказує на мій WEB сервер (на web сайт), який знаходиться на зовнішньому хостингу і не надає, зрозуміло, ніяких SIP сервісів. Отже, вам не потрібно створювати хост (піддомен) виду sip.імя_домена, якщо:

  • ви не маєте web сервера (web сайту)
  • web сервер доступний тільки за адресою www.імя_домена, а не ім'я домену
  • ви розміщуєте сайт на тому ж сервері, або за тим же роутером, за яким розташований сервер 3CX
  • ваш DNS сервер або DNS вашого провайдера підтримують SRV записи (зазвичай, це не актуально для динамічних IP адрес і вимагає кваліфікованого / платного обслуговування)

Створивши хост sip.3cx.com.ua я повинен потурбуватися про те, щоб автоматично оновлювати його IP адреса в Zoneedit тоді, коли змінюється мій динамічний IP. Zoneedit, на щастя, підтримує Dynamic DNS ! Отже, скачати і запустимо програму zeDyn від Zoneedit для динамічного оновлення IP адреси нашого сервера (хоста). Запустити її можна безпосередньо на сервері 3CX, або на будь-якому комп'ютері, що знаходиться всередині вашої мережі. Її також можна запустити як сервіс Windows - необхідні для цього файли входять в архів програми.

У програмі просто вкажіть логін і пароль доступу до Zoneedit і ім'я хоста, яке слід оновлювати. Усе!

Усе

Закінчивши з хостом sip.3cx.com.ua і Dynamic DNS для нього, налаштуємо 3CX для коректної обробки зовнішніх викликів на наш домен . Робиться це в консолі 3CX в Settings> Advanced> Local SIP Domain - sip.3cx.com.ua.

ua

Тепер потрібно відкрити необхідні порти на вашому файервол (або "опублікувати" порти через NAT, як це ще називається) для того, щоб вхідні "прямі" SIP виклики успішно приймалися 3CX сервером. 3CX вимагає публікації порту 5060 (TCP + UDP) для SIP сигналізації і портів 9000 (UPD) і вище (див. російську документацію , Стр. 19). Процедура публікації портів на кожному роутере своя, але наочний приклад представлений тут .

Відкривши порти на файервол, ми робимо дві справи відразу. По-перше, як було сказано вище, ми дозволяємо входять "прямим" SIP викликам від інших користувачів успішно досягати нашого 3CX сервера, а по-друге, ми можемо підключитися програмою 3CX Phone до 3CX сервера ззовні і зареєструватися на ньому. Для цього 3CX Phone налаштовується таким чином.

Отже, тепер можна сміливо вказати в візитці поруч з номером телефону свій SIP ID. У мене він [email protected]. Будь-який користувач будь-SIP служби в світі може зателефонувати на нього, за умови, що такі дзвінки дозволені адміністратором цієї служби. Також, можна реєструвати адресу sip.3cx.com.ua у ваших VoIP провайдерів, якщо ви плануєте приймати міські номери через SIP. І, нарешті, ви запросто можете підключатися до вашої офісної системі з відрядження, з дому, та звідки завгодно!

Для чого я створив цей хост?