Light-electric.com

IT Журнал
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Sip сервер домен

Настройка Устройств, Учётных записей и SIP-доменов

SIP-устройства

Это Ваши “конечные” устройства, т.е. аппаратный или софтовый телефон, который принимает или осуществляет вызовы. Он не обладает функцией передачи этого вызова в другую сеть, передачи номера из другой сети. Данное устройство должно быть настроено для самостоятельной регистрации в сервисе.

Собственные SIP-шлюзы

Это Ваши шлюзы в другие сети. Их задача транслировать входящий или исходящий звонок на ваши устройства или другие шлюзы. При этом данные шлюзы не обладают собственным номером, а транслируют исходный номер звонка. Данные шлюзы должны быть настроены для самостоятельной регистрации в сервисе.
Для добавления собственного SIP-шлюза нужно нажать на кнопку добавления учётной записи, на появившейся странице выбрать шаблон “talk37.ru” и задать нужный пароль. Логин для шлюза Вы можете увидеть в списке учётных записей после сохранения учётной записи и возврата в их список.

Внешние учётные записи SIP-серверов

Основным отличием внешних учётных записей от собственных SIP-шлюзов является то, что инициатором подключения является не шлюз, а наш сервис. Т.е. именно сервис постоянно пытается зарегистрироваться с указанными учётными данными.

Учётные записи на других серверах обычно используются в трёх случаях:

  • Для входящих звонков. Например, Вы долгое время использовали сервис sipnet.ru и номер, зарегистрированный там широко известен среди Ваших друзей. Для того, чтобы они могли дозвониться Вам и одновременно пользоваться телефонией talk37.ru пришлось бы запускать два клиента или делать сложные настройки.
    Добавив настройки учётной записи сервера sipnet на данной странице, Вы сможете получать входящие на экаунт сипнета, подключившись только к нашему серверу. В данном случае наш сервер представляется клиентом для сипнета и переадресовывает входящие звонки на Ваш внутренний номер. При этом работают все настройки переадресации и голосовой почты
  • Для исходящих звонков Например, Вы имеете учётную запись в сервисе sipnet.ru. На балансе есть какие-то деньги, которые Вы желаете использовать для звонков в города, которые недоступны через наш сервис. Для этого нет необходимости настраивать клиент для использования двух и более сервисов! Достаточно указать настройки учётной записи на этой странице, а так же правила набора для исходящих звонков на странице “Правила исходящие”.
    Таким образом, пользуясь нашим сервисом, Вы (только Вы имеете доступ к этой учётной записи и звонкам через неё) можете звонить, представляясь пользователем другого сервиса, его абонентом.
  • “Виртуальный” сервер для входящих звонков Если Вы хотите настроить правила для конкретного сервера, с которого приходят звонки, но Вы не имеете учётной записи на этом сервере, не собираетесь регистрироваться на нём. Он Вам нужен только для идентификации по домену, IP адресу и/или заголовку SIP пакетов. По этим признакам наш сервис определит относится ли входящий звонок к данному “виртуальному” серверу. После этого Вы можете использовать его в правилах входящих звонков.

Если у Вас остались вопросы, неясности по настройке, смело обращайтесь с вопросом на форуме в разделе “Телефония”.

SIP-домены

Так же как при написании писем, при звонках (входящих и исходящих) между разными серверами по протоколу SIP необходимо указывать полный адрес, т.е. логин@домен. Конечно же, наш сервис предоставляет Вам публичный домен ruvoip.net, который можно использовать сообщая свой адрес. Например: sip:myname@ruvoip.net.
Но если у Вас есть собственный домен, который Вы хотели бы использовать – нет проблем! Для этого нужно всего лишь внести изменения в настройки DNS своего домена и добавить домен в сервис на этой странице. При добавлении сервис проверит корректность настройки Вашего домена.
После этого Вы можете использовать наш бесплатный сервис как свой сервер, сообщая всем адрес вида sip:myname@mydomain.com.
Если Вы хотите дать возможность использовать этот домен другим пользователям сервиса (друзьям, знакомым), то можете дать права на него своим друзьям или группе пользователей.

Строки, которые нужно добавить/изменить в настройке домена на примере конфигурации bind:

DNS записи, типа SRV

Запись SRV, заданная на сервере доменных имен (DNS), помогает соединиться с SIP пользователем, так же как MX запись помогает доставить электронную почту на сервер адресата. Когда вы отправляете почту на адрес «john@example.com», тогда MX запись для домена example.com может указать агенту, отвечающему за доставку почты, совсем другую машину, которая является почтовым сервером для этого домена, например, «zaphod.foobar.com». Подобным образом, когда вы хотите совершить вызов на SIP телефон: , запись типа SRV, может сказать Вашему компьютеру, что для этого следует подключиться к хосту «galaxy.starsystem.tw».

Зачем может понадобиться использование DNS SRV записей для SIP протокола?
Совершение вызовов с использованием имен доменов дает возможность SIP пользователю иметь один публичный Интернет адрес «SIP адрес», поступающие туда вызовы будут перенаправлены конечному пользователю, на его фактический адрес. SRV записи позволяют в некоторой степени защитить систему, при этом так же давая возможность использовать Ваше собственное доменное имя, вне зависимости от имени домена Вашего SIP провайдера.

Записи SRV в DNS указывают, как найти сервисы для различных протоколов.

Выдержка из RFC:

Этот документ описывает записи DNS RR, которые описывают местоположение сервисов для определенных протоколов и доменов.

На данный момент, она может содержать точный адрес сервера для связи с ним, или широковещательный запрос.

Запись SRV RR позволяет администраторам использовать несколько серверов для одного домена, перемещая обслуживание определенного сервиса от хоста к хосту в случайном порядке, и для назначения некоторого сервера основным для заданного сервиса, а другой — в качестве резервного.

Клиент запрашивает нужный ему сервис/протокол для определенного домена (имена используемых здесь доменов должны отвечать требованиям RFC 1034), и получает в ответ имена всех доступных серверов.

Для SIP прокси серверов, обслуживающих домен, это означает что:

  • Вы можете определить SRV запись для своего домена, чтобы SIP прокси других доменов знали, как Вас найти. Как и в случае с e-mail, где один почтовый сервер обрабатывает почту для многих доменов, SIP прокси сервер может обрабатывать вызовы клиентов в нескольких доменах. Значение, заданное для DNS SRV записи в Вашем файле с описанием DNS зоны (voip-info.org), может указывать на какой-нибудь другой адрес SIP прокси сервера (например, sip.iptel.org). При такой конфигурации, вызовы на адрес: , будут автоматически отправлены на SIP прокси сервер: sip.iptel.org.
  • В Вашей DNS зоне, Вы можете указать несколько серверов SIP прокси. Если сервер с наивысшим приоритетом недоступен, тогда SIP клиенты (ua) или другие прокси, которые пытаются найти путь к абоненту в заданном домене, будут пытаться отправить вызов на прокси сервер, который определен в записи SRV с меньшим приоритетом.

Пример

Для использования SRV записей, Вам может понадобиться следующая информация:

a. Тип сервиса (IETF Service Type) (Вы можете найти более менее полный список этих значений тут. Оригинальное RFC #2782: тут), в формате _servicetype._layer4.
b. Приоритеты для Ваших систем.
c. Нагрузку ‘weight’, которую могут обработать системы. (не обязательно)
d. Номера портов, которые используются в Ваших системах.
e. Имена хостов, где располагаются Ваши системы.

Читать еще:  Контроллер домена на centos

Все эта информация должна располагаться в Вашем файле описания зоны в следующем порядке:

Например, Если Вы хотите указать, что SIP сервер Вашего домена находиться по адресу host.tld, то запись может быть такой:

_sip._udp SRV 0 5060 host.tld.

Как описано выше, _sip._udp — это тип сервиса IETF для SIP протокола через транспорт UDP. SRV — это тип записи в DNS, 0 — это приоритет записи, значения нагрузки мы не указали тут, а 5060 — это номер порта, по которому SIP сервер принимает запросы. host.tld = это имя хоста.

Вы можете тоже самое сделать и для протокола iax, например, так:

_iax._udp SRV 0 4569 host.tld.

И конечно, Вам нужна соответствующая запись для хоста host.tld типа «A» или «CNAME», для того, чтобы можно было определить его IP адрес, например, такая:

host.tld A xxx.xxx.xxx.xxx

По этой ссылке Вы можете найти исчерпывающую документацию, с очень подробно описанными примерами на сайте компании Cisco:

Пример, с использованием фиктивного домена

Ниже приведен простой файл с описанием зоны из RFC. Обратите внимание, что тип сервиса для SRV записей указанный тут, *не* для протокола SIP, вследствие этого, у Вас он будет другой:

В данном примере используется фиктивный сервис "foobar", работающий на порту 9,
для помощи в понимании механизма использования SRV записей.

$ORIGIN example.com.
@ SOA server.example.com. root.example.com. (
1995032001 3600 3600 604800 86400 )
NS server.example.com.
NS ns1.ip-provider.net.
NS ns2.ip-provider.net.
; для сервиса foobar - использовать old-slow-box или new-fast-box.
; Если кто то из них доступен, указываем, что три четверти всех запросов
; должны обрабатываться сервером new-fast-box.
_foobar._tcp SRV 0 1 9 old-slow-box.example.com.
SRV 0 3 9 new-fast-box.example.com.
; Если не один из серверов old-slow-box или new-fast-box не работает,
; переключаемся на использование серверов: sysdmin-box и server
SRV 1 0 9 sysadmins-box.example.com.
SRV 1 0 9 server.example.com.
server A 172.30.79.10
old-slow-box A 172.30.79.11
sysadmins-box A 172.30.79.12
new-fast-box A 172.30.79.13
; Другие сервисы НЕ поддерживаются
*._tcp SRV 0 0 0 .
*._udp SRV 0 0 0 .

При совершении вызова, клиент производит следующие действия:

  • проверяет, существует ли SRV запись для заданного домена.
  • Если SRV запись существует, используем их по кругу, пока один из них не ответит в течение заданного периода.
  • Если SRV запись не существует, используется «стандартный» поиск адреса в DNS, для соединения с сервером.

Ниже приведен пример еще одной зоны, для протокола SIP:

$ORIGIN sipdomain.com.
@ SOA ns1.sipdomain.com. root.sipdomain.com. (
1995032001 3600 3600 604800 86400 )
NS ns1.sipdomain.com.
NS ns1.elsewhere.ca.
NS ns2.elsewhere.ca.
;
; Для сервиса sip, распределяем нагрузку, по принципу:
; 3 запроса - на сервер 3x-load, на каждый 1 запрос,
; отправляемый на сервер 1x-load.
_sip._udp SRV 0 1 5060 1x-load.sipdomain.com.
SRV 0 3 5060 3x-load.sipdomain.com.
;
; Если сервера с наивысшим приоритетом не отвечают,
; то переключаемся на использование этой группы,
; равномерно распределяя запросы к этим серверам
SRV 1 0 5060 failover1.sipdomain.com.
SRV 1 0 5060 failover2.sipdomain.com.
;
; Если все вышеописанные сервера не отвечают.
; используем SIP сервера другого провайдера:
SRV 2 0 5060 offsite-failover1.elsewhere.ca.
SRV 2 0 5060 offsite-failover2.elsewhere.ca.
;
; Вам необходимо определить записи "A" типа для каждого хоста,
; указанных в записях SRV
ns1 A 10.0.0.1
1x-load A 10.0.0.3
3x-load A 10.0.0.4
failover1 A 10.0.0.5
failover2 A 10.0.0.6
;
; описание "A" записей для двух последних серверов,
; описанных здесь в SRV записях, находится в зоне
; для домена elsewhere.ca
;
; Другие сервисы НЕ поддерживаются
*._tcp SRV 0 0 0 .
*._udp SRV 0 0 0 .

Определение записи DNS:

_Service._Proto.Name TTL Class SRV Priority Weight Port Target

Пример:
_sip._udp.domain.tld. IN SRV 20 0 5060 mysipproxy.domain.tld.

_stun._udp.domain.tld. IN SRV 20 0 3478 mystunserver.domain.tld.

Тестирование реализаций поддержки SRV записей для SIP клиентов:

SRV implementations?: Результаты тестирования различных реализаций поддержки SRV записей

Сервера DNS, поддерживающие записи SRV.

  • BIND 9
  • djbdns (с патчем для поддержки SRV или generic SRV records)
  • MyDNS: http://mydns.bboy.net/: Свободно распространяемый DNS сервер для UNIX (записи хранятся в SQL базе — на данный момент поддерживаются mySQL/PostgreSQL)

Ссылки по теме:

  • RFC 2782: http://www.ietf.org/rfc/rfc2782.txt: DNS RR, для определения местонахождения определенных сервисов (DNS SRV)
  • DNS?
  • SIP
  • STUN?

Created by yuri . Last Modification: Четверг 14 / Июнь, 2007 15:52:09 MSD by yuri .

Подключаемся к удаленному SIP серверу через Интернет

Для того, чтобы SIP сервер был доступен для подключения удаленных абонентов, нужно открыть к нему доступ извне. Это означает проброс портов доступа к SIP серверу на роутере, подключенном к Интернету:

ПРОБРОС, PORT FORWARDING, НУЖНО ВЫПОЛНИТЬ ДЛЯ ПОРТОВ МАРШРУТИЗАТОРА:

  • 5060 (TCP) — основной порт подключения к серверу (для Mobotix T24/T25 — порт 5061). Cлужит для регистрации и получения команд от сервера.
  • RTP порты (UDP) — см. проект iRidium и настройку сервера. Может быть диапазон 7078-9078 или 40000-41000. Через порты RTP производится передача голоса, поэтому их проброс нужно сделать обязательно

ПРИМЕР:

  • SIP Server — эта настройка обеспечивает подключение к удаленному серверу через порт 12005 (маршрутизатор переадресует данные с порта 12005 на реальный порт сервера: 5060). Переадресация рекомендована в связи с тем, что многие сотовые операторы блокируют обмен данными через порт 5060 (стандартный порт SIP).
  • SIP RTP — диапазон RTP портов для передачи голоса
  • 192.168.0.41 — IP адрес SIP сервера в локальной сети

Когда порты проброшены, возможно подключение к серверу через интернет с использованием внешнего IP адреса маршрутизатора или доменного имени (при использовании DDNS или NoIP).

ОПРЕДЕЛЕНИЕ ВНЕШНЕГО IP АДРЕСА МАРШРУТИЗАТОРА (SIP СЕРВЕРА):

Воспользуйтесь одним из бесплатных сервисов для определения своего IP адреса в Интернете, например: http://www.whatismyip.com/
Обращаться к сервису нужно из той же локальной сети, в которой работает SIP сервер.
В качестве примера, определим внешний адрес SIP серввера как 200.100.10.10

НАСТРОЙКА ПРОЕКТА IRIDIUM ДЛЯ ПОДКЛЮЧЕНИЯ К УДАЛЕННОМУ SIP СЕРВЕРУ:

Настроим драйвер SIP в проекте iRidium для SIP:

  • Host: внешний IP адрес маршрутизатора, к которому подключен SIP сервер
  • Port: проброшенный на маршрутизаторе порт подключения к SIP серверу. По умолчанию это 5060. См. выше пример перенаправления 12005:5060 с целью избежать блокировки подключения на стороне сотового оператора
  • Password — пароль подключения к серверу (для выбранного аккаунта)
  • Caller (ID) Name — имя абонента (например: User)
  • SIP ID — идентификатор абонента (может называться Caller ID, например: 102)
  • First RTP Port — начало диапазона RTP портов голосового обмена
  • Last RTP Port — конец диапазона RTP портов голосового обмена. Диапазон RTP портов указывается на случай, если на маршрутизаторе запрещены к использованию некоторые UDP порты. Этот диапазон необходимо пробросить на роутере, при работе через интернет
  • Use SIP TONE — генерировать SIP сообщения тонального набора
  • USE DTMF TONE — генерировать сообщения тонального набора
  • Extrenal IP — укажите свой (панели управления) внешний IP адрес, если он СТАТИЧЕСКИЙ (если панель находится в сети, подключенной к маршрутизатору, имеющему статический внешний IP адрес). Если IP не статический:

Когда панель работает по 3G/4G, или в произвольной WiFi сети — через динамический IP, необходимо автоматически определять внешний адрес панели управления: Extrenal IP для корректной настройки драйвера.
Для этого существует дополнительный скрипт, который рассмотрим далее:

ОПРЕДЕЛЕНИЕ «EXTERNAL IP» ПАНЕЛИ УПРАВЛЕНИЯ ПРИ РАБОТЕ ЧЕРЕЗ ИНТЕРНЕТ:

Читать еще:  Рисование в word

Если External IP (параметр драйвера SIP в настройках iRidium) неизвестен, разговор с абонентом через удаленный SIP сервер работать не будет, т.к. сервер должен получить IP адрес панели для осуществления коммутации вызова. Панель должна передать свой внешний IP адрес в параметре External IP.
Определение адреса панели можно осуществить через приведенный далее скрипт.

Скрипт проверки внешнего адреса работает только при наличии лицензии с суффиксом Pro.

Скрипт нужно добавить в свой проект (через редактор скриптов, кнопка [JS] в редакторе):

и настроить его параметры (соответствуют параметрам драйвера SIP в редакторе):

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

Кнопки нужно создать и привязать к ним команды ScriptCall(ExternalIP) и ScriptCall(LocalIP), вызывающие применение локальных или внешних настроек подключения:

Определяемся с SIP сервером

Современный человек легко может уменьшить свои материальные затраты на связь посредствам телефонных устройств, используя возможности SIP-телефонии. Благодаря провайдерам IP-телефонии, пользователи могут не просто сэкономить немалую сумму, но и общаться с людьми из разных уголков мира по достаточно лояльной стоимости в рамках, предлагаемых ТП. Также, это удобное решение для связи внутри офиса. Чтобы наладить ее, потребуется установить соответствующий сервер на одном из рабочих ПК и провести подключение аппаратных и программных телефонных устройств. В настоящем обзоре мы проведем сравнительный анализ наиболее известных серверов этого типа, в частности работающих на бесплатной основе.

Теперь поговорим о каждом сервере детальнее, в ходе чего определимся, как произвести запуск оборудования собственноручно.

Серверы для Linux

Начнем свой обзор из анализа наиболее востребованного, точнее одного из таковых, сервера, используемого для организации IP-телефонии, а именно Asterisk. Популярный тип оборудования, который ориентирован на запуск связи в офисах.

Asterisk

Данный вариант относится больше к свободно распространяемым, хотя в нем присутствуют модули, прошедшие лицензирование. Программное обеспечение активно функционирует в ОС Linux. Форма выпуска подразумевает под собой несколько разных дистрибутивов, которые различны по функционалу, комплектами модулей дополнительного назначения и интерфейсом. Предназначено такое решение для профессионалов. К возможностям оборудования относятся:

  • Удержание вызова и его ожидание (присутствует музыкальное сопровождение);
  • Переадресация вызовов и их перенаправление;
  • Перехват вызовов и парковка (пользователи могут отвечать на вызов с других устройств или на них продолжать вести беседы, которые начинались не на этих аппаратах);
  • Видеосвязь;
  • Конференцсвязь;
  • Все функции Call-центра;
  • Функции биллинга;
  • Интеграция стандартных линий телефонии;
  • Администрирование при помощи интерфейса.

Исходя из этого, можно сделать выводы, что этот сервер дает возможность пользователю решить даже самый сложный вопрос. К достоинствам Asterisk относятся – множество протоколов, которые поддерживаются, дополнительные модули, масштабируемость. Недостатки, также присутствуют. К ним относятся: двойная лицензия и достаточно существенная сложность в настраивании для людей, которые ранее этим не занимались.

Внимание!

Хоть сервер и позиционируется, как абсолютно бесплатный, в нем могут содержаться модули, которые распространяются на базе лицензии, что в отдельных случаях может вызвать определенные проблемы, неудобства.

Kamailio

Ранее проект носил несколько другое название, звучащее как OpenSER. Действующее имя он получил в 2008 году. К самым известным отнести его нельзя, особенно в сравнении с Asterisk и 3CX. Применим этот сервер в большинстве своем в профессиональном плане, так как обладает неплохим функционалом. Для решения стандартных, простых вопросов это не лучший вариант.

Что касается достоинств продукта, то сюда входит поддержка множества разноплановых модулей, способных сделать его функциональность гораздо шире. Что касается недостатков, то он только один – настройки достаточно сложные.

Данное предложение для Linux-систем, также работает на бесплатной основе. Сервер довольно простой, ориентирован на использование в рамках офисов. Функционал продукта более чем приличный. Подразумевается объемный перечень функций, необходимых для управления голосовой связью. Если применить подходящее, качественное оборудование, то это решение позволит справиться даже с максимально сложными вопросами.

Неоспоримыми достоинствами являются небольшие параметры, простота и стабильность. Благодаря ему SIP-сети местного значения разворачиваются в течение нескольких часов. Это очень удобно при необходимости оперативного налаживания связи в офисных помещениях. Существенным преимуществом выступает и то, что сервер работает на бесплатной основе. Есть и минусы. Главный из них заключается в том, что есть необходимость в навороченных Voip-шлюзов и телефонных аппаратах.

SIP-серверы для Windows

Описанные выше Linux-системы отличаются высокими показателями устойчивости и хорошее производительностью. Но для того, чтобы их применять на практике, нужны специальные знания. К обычным пользователям они настроены не очень дружественно. Чтобы исправить ситуацию, разработчики позаботились о создании продукта для Windows, более понятного и удобного. Конечно, и системных администраторов, и самих пользователей могут поджидать незначительные подводные камни, которые гораздо легче обойти, тем самым преодолев возникшие трудности.

3CX сервер

Если говорить о самых крутых предложениях для Windows, то не стоит забывать о продукте Voip-АТС 3CX Phone System. Ориентир направлен на налаживание связи корпоративного формата, при чем, самого разного масштаба. При этом не важно, где расположены офисы, хоть в разных концах мира.

  1. Максимальный голосовой функционал;
  2. Конференции;
  3. Поддержка огромной клиентской аудитории (сюда входит и личный софт, независимо от платформы);
  4. Интеграция услуг, предоставляемых операторами обычной связи, и других SIP-провайдеров.

Применение данного сервера дает возможность существенно снизить расходы и привнести больше удобства в телефонию офисного назначения. Разработчик позаботился об обучении пользователей. проводятся специальные мероприятия и предоставляется материал для обучения. Также, предоставляется и другая поддержка. Клиент может выбрать одну из возможных версий: бесплатную или коммерческую. Второй вариант имеет ряд дополнительных важных функций, необходимых в работе.

Внимание!

Бесплатный вариант является пробным, рабочим. Поэтому его можно спокойно взять за базу при налаживании IP-телефонии в офисах.

Перечень достоинств довольно объемный. Во-первых, его работа осуществляется под управлением ОС Windows. Кроме этого у него очень внушительный функционал. Также, сервер отличается гибкостью настроек. Если кол-центр вам не нужен и вполне хватает стандартной телефонии, то бесплатного решения будет достаточно. К недостаткам относят закрытость первоначального кода. Поэтому внести свои дополнения не получится, но это не так уж и страшно.

OfficeSIP Server

Этот продукт для Windows является свободно распространяемым ПО, которое работает на бесплатной основе. Самая яркая его характеристика – простота. Установить и настроить его может даже человек, который мало знаком с подобными делами. На инсталляцию и запуск уходит не более двух минут. Дальше можно спокойно создавать учетные записи тех, кто будет им пользоваться.

Чтобы звонить в разные уголки планеты, предусмотрено подключение к другим провайдерам IP-телефонии. Эта программа считается одной из лучших для небольших офисов, которым необходима связь.

  • Взаимодействие с Windows;
  • Легкость и простота настроек;
  • Скорость и простота при подключении абонентов;
  • Качественная внешняя связь.
  • Минусы решения:
  • Не предусмотрены многие полезные голосовые и офисные функции;
  • Отсутствие возможности масштабирования;
Читать еще:  Сетевое окружение в домене

Нельзя подключиться к «собственной» АТС, если находишься не в локальной сети.

Это очень удобный, доступный и, что немаловажно, бесплатный продукт для сравнительно маленьких офисных помещений.

Лучший выход

Хотите беседовать в телефонном режиме на выгодных условиях, но изучать структуру ip-телефонии желания нет? Тогда есть смысл рассмотреть готовое предложение и АТС виртуального типа, работающую бесплатно.

Sip сервер домен

Технология Direct SIP – это телефонный вызов абонента по его SIP номеру, который может совпадать с адресом электронной почты. SIP телефоны делают вызовы такому абоненту, используя его электронный адрес. В инструкции к телефону эта функция также называется Direct SIP или Direct URL Dialing.

Как работает Direct SIP?

Вызовы Direct SIP осуществляются по тому же принципу, что и отправка электронной почты. Звонящий может использовать независимый SIP телефон, без подключения к SIP АТС или VoIP провайдеру. Также звонящий может использовать SIP телефон, подключенный к SIP АТС или VoIP провайдеру, которые поддерживают технологию Direct SIP.

Если пользователь вызывает другого пользователя с SIP адресом Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. , используя независимый SIP телефон, SIP телефон делает DNS запросы для того чтобы узнать IP адрес SIP сервера для домена voipproducts.org. После успешного определения адреса SIP сервера, SIP телефон устанавливает SIP сессию с этим SIP сервером.

Если пользователь вызывает абонента с SIP адресом Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. , используя SIP телефон, подключенный к SIP АТС или VoIP провайдеру, происходит следующее. Локальный SIP сервер получает запрос на установление вызова INVITE и определяет, что домен voipproducts.org им не обслуживается. Тогда он делает DNS запросы на установление IP адреса SIP сервера для домена voipproducts.org и устанавливает сессию с ним от своего имени.

DNS запросы в Direct SIP вызовах

Для приема Direct SIP вызовов, DNS сервер пользователя, принимающего вызов, должен иметь хотя бы одну запись типа SRV, которая указывает на SIP сервер домена, ответственный за обработку VoIP вызовов. Эта SRV запись содержит поля, описывающие тип сервиса, SIP порт, приоритет сервиса и его «вес» и другие стандартные поля.

Разбор DNS SRV записи для Direct SIP

Из этой записи можно извлечь следующую информацию:

  • _sip – тип сервиса, указанного в записи
  • _udp – интернет протокол, используемый для транспорта сообщений протокола, указанного выше (т.е. SIP)
  • voipproducts.org – домен, который обслуживает данная запись

Пример ответа DNS сервера на запрос SIP SRV записи

_sip._udp.voipproducts.org. 86400 IN SRV 10 5 5060 sip.voipproducts.org.

Из этого ответа можно извлечь следующую информацию:

  • _sip._udp.voipproducts.org – запрашиваемая SRV запись
  • 86400 – Time To Live (TTL) записи
  • IN – поле класса (DNS class field)
  • 10 – приоритет записи. Сервер с меньшим приоритетом должен первым обслужить запрос
  • 5 – вес. Относительная нагрузка, которая должна приходиться на серверы с равным приоритетом
  • 5060 – порт, по которому будет инициирована SIP сессия. По умолчанию всегда 5060
  • sip.voipproducts.org – запись хоста (host (A) record), указывающая имя узла, обслуживающего VoIP вызовы в домене voipproducts.org.

Тестирование наличия и правильности SIP SRV записи

Для проверки наличия и корректности SIP SRV записи для данного домена, рекомендуется использовать стандартную Windows утилиту nslookup. После запуска nslookup введите следующие команды:

> set q=srv – указываем тип искомой записи

> _sip._udp.voipproducts.org – указываем, по какой записи проводить поиск

Ответ DNS сервера:

Server: server1.voipproducts.org

Address: 65.111.185.13

_sip._udp.3cx.com SRV service location:

priority = 10

weight = 1

port = 5060

svr hostname = sip.voipproducts.org

Как видно из ответа, мы получили полную информацию о SIP сервере, отвечающем за VoIP в данном домене, включая IP адрес сервера, номер порта, приоритет, вес и т.п.

Обратите внимание!

  1. Большинство коммерческих SIP клиентов одновременно запрашивают и TCP (_sip._tcp) и UDP (_sip._udp_) записи.
  2. Если в данном домене SRV запись не обнаружена, клиент будет запрашивать A запись (A record) для данного домена, и пытаться подключиться к полученному IP на порт 5060. Это удобно в том случае, если DNS сервер домена не поддерживает SRV записи.
  3. Если в SIP SRV записи не указан порт, будет использоваться стандартный порт для SIP протокола 5060.

Вызов с независимого SIP телефона

Рассмотрим пошагово, что происходит, когда пользователь вызывает другого пользователя Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. , используя SIP телефон, который не зарегистрирован на SIP АТС или VoIP провайдере.

  1. SIP клиент телефона делает DNS запрос на SRV запись для домена voipproducts.org. В данном случае запрашиваемая строка имеет вид _sip._udp.voipproducts.org.
  2. Получив ответ DNS сервера, SIP клиент знает имя хоста (sip.voipproducts.org) и порт (5060) узла, предоставляющего SIP (VoIP) сервис.
  3. SIP клиент делает повторный DNS запрос для определения IP адреса хоста sip.voipproducts.org
  4. После определения IP адреса сервера и имея номер порта, SIP клиент телефона делает SIP вызов на этот сервер.

Вызов с телефона, через VoIP провайдера или на SIP сервер

Рассмотрим пошагово, что происходит, когда пользователь вызывает другого пользователя Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. , используя SIP телефон, зарегистрированный на SIP АТС или VoIP провайдере.

  1. SIP клиент посылает запрос INVITE к своей SIP АТС, желая связаться с Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. .
  2. SIP АТС определяет, что voipproducts.org не является локальным доменом и делает DNS запрос записи _sip._udp.voipproducts.org к домену voipproducts.org.
  3. Получив ответ, SIP АТС узнает имя хоста (sip.voipproducts.org) и порт (5060) сервера, предоставляющего SIP (VoIP) сервис для домена voipproducts.org.
  4. SIP АТС делает повторный запрос для определения IP адреса хоста sip.voipproducts.org.
  5. После определения IP адреса сервера и имея номер порта, SIP АТС делает SIP вызов на этот сервер.
  6. Как только SIP вызов установлен, включая выбор общего RTP (голосового) кодека, RTP поток направляется напрямую от SIP телефона звонящего к SIP телефону получателя вызова ( Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. ), который зарегистрирован на «чужой» SIP АТС sip.voipproducts.org.

Обработка Direct SIP вызовов на SIP сервере

В большинстве SIP АТС администратор должен составить список SIP доменов, которые АТС будет считать локальными. Таким образом, АТС знает, как обрабатывать вызов – направить ли его на другой зарегистрированный локальный номер, либо начать процедуру DNS поиска внешнего SIP домена.

Аналогично обрабатываются и входящие на SIP АТС внешние вызовы. Если домен, указанный в INVITE запросе, определяется АТС как локальный – он направляется локально зарегистрированному абоненту. Если домен определяется как «чужой» — запрос игнорируется. Игнорирование запроса необходимо для того, чтобы локальная АТС не маршрутизировала «чужие» вызовы – то есть, как мера безопасности.

Ссылка на основную публикацию
Adblock
detector