Dial peer voice voip настройка
!
voice translation-profile 3
translate called 3
!
voice translation-rule 3
rule 1 /^88001112233$/ /1111/
rule 2 /.*/ //
!
dial-peer voice 134 voip
description ==From prov > incoming called-number ^88001112233$
dtmf-relay rtp-nte
codec g711alaw
fax-relay ecm disable
fax rate 9600
fax protocol pass-through g711ulaw
no vad
!
dial-peer voice 135 voip
description ==To telephone number 1111==
translation-profile outgoing 3
destination-pattern ^88001112233$
session protocol sipv2
session target ipv4:192.168.1.10
dtmf-relay rtp-nte
codec g711alaw
fax-relay ecm disable
fax rate 9600
fax protocol pass-through g711ulaw
no vad
!
Манипуляция номерами нужна в практически любой телефонной станции имеющей подключение к внешнему миру.
В данной статье мы рассмотрим возможности по манипулированию номерами у маршрутизаторов Cisco с CUCME или у маршрутизаторов выполняющих функцию голосового шлюза.
Примеры использования квадратных скобок
Выход в город обеспечивается несколькими шаблонами, их еще называют PSTN Dial Plan.
С первого взгляда выход в город можно сделать простым шаблоном 9T. Проблема тут в том, что шаблон T соответствует номеру длиной до 32 символов. Поэтому после набора к примеру 7-ми значного московского номера, система будет ждать дальнейших цифр в течение 10 секунд (T302 timer) и только после этого отдаст номер на PSTN.
Поэтому на практике стараются явно обозначить длину ожидаемого номера.
Пример PSTN Dial Plan для выхода в город в Москве
9. | Выход в город |
98. | Выход в межгород и на мобильные |
9810T | Выход на международную связь |
В виде диалпиров это будет выглядеть следующим образом:
dial-peer voice 910 pots
description Local Calls
preference 4
destination-pattern 9.
port 1/0/8
dial-peer voice 808 pots
description National Calls
preference 2
destination-pattern 98.
port 1/0/8
forward-digits 11
dial-peer voice 809 pots
description International Calls
preference 2
destination-pattern 98011T
port 1/0/8
prefix 8011
Вообще, следует отметить, что бывают диалпиры двух типов:
Для более тонких преобразований можно использовать Translation Profiles. Более того, с помощью них можно сделть все что делается через forward-digits или prefix.
Создание Translation Profiles включает три этапа:
- Определяем Translation Rule
- Ассоциируем Translation Rule с translation profile
- Добавляем translation profile к dial-peer
Мы можем предварительно тестировать Translation Rule командой:
test voice translation-rule
Определяем Translation Rule
voice translation-rule 9
rule 1 /^9/ //
voice translation-rule 361869
rule 1 /.*/ /3467361869/
Ассоциируем Translation Rule с translation profile
voice translation-profile kmg-pbx
translate calling 361869
translate called 9
Задачу можно легко сделать используя prefix, посмотрим как добиться того же через Translation Rule
voice translation-rule 333
rule 1 /(4..)/ /701/
!
voice translation-profile short_calls
translate called 333
!
dial-peer voice 3001 voip
description Short calls
translation-profile outgoing short_calls
destination-pattern 2..
session target ipv4:172.16.2.11
dtmf-relay h245-alphanumeric
codec g711ulaw
no vad
Пожалуй подобную задачу можно выполнить только через Translation Rule
voice translation-rule 9839162
rule 1 /^9839162(. )/ /91/
!
voice translation-profile national_code_strip
translate called 9839162
!
dial-peer voice 4108 pots
description Local calls from Filials
translation-profile outgoing national_code_strip
preference 3
destination-pattern 9839162.
port 1/0/12
Параметры загрузки
Содержание
Введение
Целью данной документации является объяснение согласования входящих и исходящих одноранговых телефонных соединений для простой старой телефонной сети (POTS) и ветвей вызовов голосовой сети.
Предварительные условия
Требования
Cisco рекомендует знание следующих тем:
Используемые компоненты
Данный документ не ограничен отдельными версиями программного и аппаратного обеспечения.
Условные обозначения
Дополнительные сведения об условных обозначениях в документах см. в разделе Технические советы Cisco. Условные обозначения.
Согласование входящих точек вызова
Элементы и атрибуты входящих одноранговых телефонных соединений
Далее указаны 4 настраиваемых атрибута точек вызова Cisco IOS® и соответствующие элементы настройки вызова:
Атрибут адресуемой точки вызова
Элемент установки вызова
Эта команда "dial-peer command" определяет содержимое строки направления набранного номера или службы идентификации набранного номера (DNIS). При правильной настройке эта команда dial-peer задает использование набранного номера для сопоставления участка входящего вызова входящей точке вызова.
Вызываемый номер (DNIS)
Эта команда dial-peer определяет исходный вызывающий номер или строку автоматической идентификации номера (ANI). При правильной настройке эта команда dial-peer задает использование вызывающего номера для сопоставления участка входящего вызова входящей точке вызова.
Вызывающий номер (ANI)
После сопоставления входящих ветвей вызовов эта команда dial-peer задает использование вызывающего номера (исходного или строки ANI) для сопоставления участка входящего вызова входящей точке вызова.
Примечание: для исходящих одноранговых соединений данная команда согласуется с вызываемым номером или строками DNIS.
Вызывающий номер (ANI) для входящих или строки вызываемого номера (DNIS) для исходящих
Эта команда dial peer определяет голосовой порт POTS, через которые производятся вызовы на эту адресуемую точку вызова.
В число трех элементов настройки вызова входят:
Элемент настройки вызова
Вызываемый номер (DNIS)
Вызывающий номер (ANI)
Представляет собой физический голосовой порт POTS.
Процесс сопоставления входящих адресуемых точек вызова
Когда маршрутизатор/шлюз Cisco IOS получает запрос настройки вызова, происходит согласование однорангового телефонного соединения для входящего вызова в целях облегчения маршрутизации вызова на различные приложения сеанса. Это не согласование цифра к цифре, скорее, полная строка цифр, получаемая по запросу настройки, используется для согласования с настроенным одноранговым телефонным соединением.
Вызываемый номер (DNIS) с incoming called-number
Сначала маршрутизатор или шлюз делает попытку сопоставить вызываемый номер запроса настройки вызова с настроенным входящим вызываемым номером incoming called-number каждой адресуемой точки вызова. Поскольку установление вызова всегда включает информацию DNIS, рекомендуется использовать команду incoming called-number для согласования входящих точек вызова. Этот атрибут имеет соответствующий приоритет по отношению к адресу для ответа answer-address и шаблону назначения destination-pattern.
Вызывающий номер (ANI) с answer-address
Если в п.1 не найдены соответствия, маршрутизатор/шлюз пытается согласовать вызывающий номер запроса настройки вызова с адресом ответа answer-address каждой адресуемой точки вызова. Этот атрибут можно использовать в ситуациях, когда нужно сверить вызовы на основе вызывающего номера (инициировавшего передачу данных).
Вызывающий номер (ANI) с destination-pattern
Если в п.1 не найдены соответствия, маршрутизатор/шлюз пытается согласовать вызывающий номер запроса настройки вызова с шаблоном назначения destination-pattern каждой адресуемой точки вызова. Дополнительные сведения об этом содержатся в первой части маркированного раздела "Дополнительные сведения о точке вызова" данного документа.
Голосовой порт (связанный с запросом настройки входящего вызова) с настроенным портом точки вызова (port) (применимо для входящих ветвей вызова POTS)
Если в п.3 не найдены соответствия, маршрутизатор/шлюз пытается согласовать настроенный port точки вызова с голосовым портом, связанным со входящим вызовом. Если в нескольких одноранговых телефонных соединениях настроен один и тот же порт, совпадающим будет считаться одноранговое телефонное соединение, добавленное в конфигурацию первым.
Если в первых четырех пунктах не было найдено соответствий, то используется default dial peer 0 (pid:0).
Примечание: п.4 не применим для голосовых платформ или платформ удаленного доступа, таких как AS5300, AS5350, AS5400, AS5800 и AS5850. Если любой из первых трех пунктов не используется, то идет сопоставление с dial-peer 0, и вызов обрабатывается как модемный вызов удаленного доступа. Это означает, что абонент услышит сигналы модема вместо сигналов набора номера для входящих вызовов.
Процесс предыдущего выбора отображен на следующей диаграмме:
Маршрутизатор/шлюз Cisco IOS соответствует только одному из этих условий. Нет необходимости настраивать все атрибуты адресуемой точки вызова, либо добиваться соответствия каждого атрибута данным настройки вызова. Для выбора адресуемой точки вызова должно соблюдаться только одно условие для маршрутизатора/шлюза. Маршрутизатор/шлюз останавливает поиск, как только достигается соответствие с одной адресуемой точкой вызова.
На каждом этапе применяется критерий совпадения с наибольшей длиной префикса. Если обнаруживается несколько совпадений, выбирается самое длинное явное совпадение. Следующий пример поясняет эту концепцию:
Примечание: для входящих одноранговых телефонных соединений команда session target игнорируется.
Default Dial-Peer 0 peer_tag=0, pid:0
Если ни одна входящая адресуемая точка вызова не согласована маршрутизатором или коммутатором, то участок входящего вызова автоматически маршрутизируется на адресуемую точку вызова по умолчанию (POTS или Voice-Network). Это одноранговое телефонное соединение по умолчанию называют dial-peer 0 или pid:0
Примечание: для данной инструкции существует исключение. Платформы Cisco для голоса и удаленного доступа, такие как AS53xx и AS5800, требуют согласования настроенного входящего вызова, чтобы входящие вызовы POTS принимались как речевые вызовы. Если ни одна входящая точка вызова не согласована, вызов воспринимается и обрабатывается как вызов удаленного доступа (модемный).
Одноранговое телефонное соединение Dial-peer 0 (pid:0) имеет конфигурацию по умолчанию, которую нельзя изменить. Соединение dial-peer 0 с конфигурацией по умолчанию не может корректно согласовывать нестандартные возможности, службы и приложения, такие как:
Нестандартные возможности голосовой сети: dtmf-relay, no vad и т.д.
Direct Inward Dial (DID)
Dial-peer 0 для входящих одноранговых соединений VoIP настроен следующим образом:
no rsvp support
Dial-peer 0 (pid:0) для входящих соединений обычной телефонной сети настроен следующим образом:
no ivr application
Особое примечание для isdn overlap-receiving
Особое примечание для вызовов POTS с незаполненным полем вызывающего номера
Предположим следующую конфигурацию:
Далее предположим, что входящий вызов прибывает без информации о вызывающем номере и сопоставляется с точкой вызова обычной телефонной сети на основе шаблона назначения destination-pattern 9T. В этом случае маршрутизатор/шлюз Cisco IOS использует цифру "9" в качестве вызывающего номера и перенаправляет вызов на соответствующее устройство (такое как Call Manager или IOS Gateway). Чтобы не заменять пустое поле вызывающего номера, создайте холостое одноранговое соединение обычной телефонной сети с помощью команды incoming called-number. Поскольку инструкция incoming called-number имеет более высокий приоритет, чем destination pattern для исходящего сопоставления POTS, точка голосового вызова 2 будет используемой точкой вызова POTS.
Согласование исходящих адресуемых точек вызова
Для согласования исходящих точек вызова маршрутизатор/шлюз использует команду точки вызова destination-pattern called_number.
Для перенаправления вызова на точках вызова POTS затем используется команда port.
Для перенаправления вызова на точках вызова голосовой сети затем используется команда session target.
Итак, при согласовании исходящих одноранговых узлов следует рассмотреть два случая: DID (прямого) и non-DID (непрямого) набора внутренних телефонных номеров.
Случай DID (Direct Inward Dial)
Случай non-DID
Этот случай также называют соединением в два этапа. Если DID не настроен на совпадающие входящие адресуемые точки вызова, то маршрутизатор или шлюз переходит в режим сбора цифровых данных (они собираются внутри полосы). Сопоставлением исходящих точек вызова делается цифра за цифрой. После того, как устройство получит все цифры, маршрутизатор/шлюз проверяет совпадения точек вызова и перенаправляет вызов, когда достигается полное совпадение. Следующие примеры поясняет эту концепцию.
Теперь предположим, что точка вызова 3 настроена на сопоставление с подстановочными символами:
В данном случае действует правило префикса с максимальной длиной, поэтому адресуемая точка вызова 4 соответствует ветви исходящих вызовов.
Особое примечание для планов набора номеров переменной длины
Бывают ситуации, когда в ожидаемых строках набора отсутствует определенное число цифр. В таких случаях Cisco рекомендует настроить T-образный наконечник в команде точки вызова destination-pattern, чтобы использовать планы набора номеров переменной длины.
Т-образный наконечник вынуждает маршрутизатор/шлюз ждать до получения всей строки набора номера. Маршрутизатор/шлюз:
Ждет установленное время ожидания следующей цифры перед тем, как маршрутизировать вызов.
Следующий пример поясняет эту концепцию:
Предположим, что маршрутизатор в этом примере получает установку вызова со строкой набора из сети "95551212". Точка вызова 2 перенаправляет цифры "5551212" в PSTN.
В данном случае действует правило префикса с максимальной длиной, поэтому адресуемая точка вызова 4 соответствует ветви исходящих вызовов.
время ожидания между цифрами по умолчанию равно 10 секундам. Чтобы изменить это значение, введите команду голосового порта timeouts interdigit seconds.
Каждый раз при использовании "T" перед ним должны указываться точка "." или цифры (например, ".T" или "555T"). При использовании только "T" точки вызова реагируют неправильно, что влияет на обработку вызовов маршрутизатором.
Рабочее состояние равноправного узла
Для установления соответствия администратор должен включить и сделать действительным рабочее состояние удаленного узла. Чтобы считаться рабочими, одноранговые телефонные соединения должны отвечать одному из следующих условий (существуют и другие условия, но здесь приведены главные):
Настроен destination-pattern, а также voice-port или session target.
Настроен incoming called-number.
Дополнительные сведения об одноранговом телефонном соединении
Атрибут точки вызова destination-pattern ведет себя по-разному по отношению ко входящим и исходящим ветвям звонков:
Для входящих точек вызова destination-pattern сопоставляется с вызывающим номером (строка ANI).
Для исходящих точек вызова destination-pattern сопоставляется с вызываемым номером (строка DNIS).
Таким образом, точка вызова с атрибутом destination-pattern может работать как для исходящего, так и для входящего сопоставления.
Учебный пример: основные сведения о входящем сопоставлении и точках вызова 0 по умолчанию
Конфигурации
В этом практическом примере нами использованы следующие команды show и debug:
show call active voice — Эта команда выводит содержание таблицы активных вызовов, в которой показаны все вызовы, в данные момент проходящие через маршрутизатор. В данном случае эта команда полезна для отображения адресуемой точки вызова и характеристик активного вызова.
debug voip ccapi inout — Эта команда полезна для разрешения неполадок сквозных вызовов VoIP.
Теперь добавьте следующую команду для сопоставления входящей точки вызова VoIP 2 на maui-gwy-06:
Далее приведен снимок конфигурации maui-gwy-06 после дополнительной настройки:
1. Компоненты схемы
Схема собрана на базе маршрутизатора Cisco 1751-V, стандартная версия которого продается с 64 Мб памяти и 32 Мб флеш.
Первая проблема, с которой я столкнулся — нехватка памяти. Для любого IOS версии 12.4 с поддержкой голоса требовалось 96 Мб, хотя никто не мешал запустить 12.3, но хотелось все-таки делать на последнем.
В итоге в маршрутизатор была добавлена еще планка памяти 64 Мб и поставлен модуль VIC-2FXS для подключения аналоговых телефонных аппаратов.
Вторая проблема, на которую ушло несколько больше времени — при загрузке не увиделся модуль VIC-2FXS. Как выяснилось после прочтения доков, для работы аналоговых голосовых модулей в маршрутизатор также нужно добавить плату сигнального процессора DSP. Пришлось добавлять планку PVDM-256k-4 с одним DSP на борту. После всех этих махинаций маршрутизатор наконец-то загрузился и нормально увидел модуль.
В качестве аналоговых телефонов были использованы два DECT/Skype телефона LinkSys CIT-300 и CIT-400.
2. Базовая конфигурация маршрутизатора
Для базовой настройки достаточно ввести всего несколько команд, с помощью которых мы создадим dial-peer-ы и определим, какая нумерация будет использоваться:
Фактически, уже после этих команд можно звонить с одного телефона на другой согласно сконфигурированной нумерации
3. Дополнительные настройки
Для разных стран существуют различные частоты сигналов КПВ, «Занято» и прочих. Эти параметры можно сконфигурировать и для портов маршрутизатора. Например, поменяем настройки сигналов на одном из портов:
Сравнив сигнал КПВ на двух телефонах можно легко заметить разницу.
Еще одна интересная функция — это определитель номера АОН. По умолчанию данная функция выключена, включить ее можно следующим образом:
Для передачи Caller-ID есть два метода, один из них — это передача номера с помощью DTMF, второй — в цифровом виде с использованием частотной модуляции (FSK) на скорости 1200 бит/сек. Соответственно, получать текстовые данные можно только с помощью второго номера.
Что удивительно, оба моих телефона запрашивают эту информацию у АТС (в данном случае, у маршрутизатора) но выводит номер только CIT-400
4. Проверка работоспособности системы
Итак, самое простое — это просто позвонить с одного телефона на другой
Что еще можно проверить:
команда show voice port summary покажет состояние voice-портов:
В листинге видны номера интерфейсов, а также их текущее состояние.
Команда show diag покажет состояние модулей и плат маршрутизатора
Как раз здесь я смог увидеть, что мой CIT-300 тоже запрашивает Caller-ID но почему-то его не выводит:
Есть еще одна интересная полудокументированная команда, позволяющая сымитировать вызов на любой из dial-peer-ов. Команда csim start 301 заставила звонить мой 301-й телефон. Данная команда вбивается из привилегированного режима и не видна при использовании контекстной подсказки. Но тем не менее, команда работает, причем поле вызывающего абонента остается пустым.
Для просмотра активных сессий можно использовать команду show call active voice
На этом пожалуй, все. Спасибо за внимание.
Если у Вас модуль VIC-2DID, то при поднятии трубки вы не услышите КПВ, а при наборе номера будут короткие гудки.
Для решения проблемы нужно вбить команду:
Про голос. Собираем лабу 2. FXS & Dial-peers.
Подключаем к существующему кусочку лабы(2811 + свитч + телефоны) маршрутизатор 2611 с 2 FXS портами. К FXSам подключаем обычные аналоговые телефоны.
Проводим базовую настройку
Аналоговые порты бывают:
Все 3 типа голосовых портов встречается на маршрутизаторах Cisco; т.е. в зависимости от оснащённости портами устройство может выступать как в роли станции (FXS, E&M), так и в роли телефона (FXO).
Поднимаем трубки. Слышим гудок. Работают.
Я оставлю по дефолту, но эстеты могут наваять свой при помощи команды “ring cadence
define”.
Тут же есть полезные таймеры:
Для направления вызовов на оборудовании Cisco используются “дайлриры” (Dial-peer), которые в просторечии называют диалпирами.
В первом приближении диалпиры делятся на VoIP (регламентирующие обработку вызовов в IP-сетях) и POTS (для работы с сетями традиционной телефонией).
- Для каждого вызова ВСЕГДА есть входящий диалпир.
- Для вызова МОЖЕТ быть найден исходящий диалпир.
- Один и тот же диалпир может быть одновременно и входящим и исходящим, но не для одного и того же звонка.
Примеры :
dial-peer voice 1 voip
destination-pattern 3T =Номер любой длины, начинающийся с 3=
session-target ipv4:10.1.1.1
dial-peer voice 3 voip
destination-pattern 333444 =Номер 333444=
session-target ipv4:10.3.3.3
dial-peer voice 4 voip
destination-pattern 333644 -=6-ти значные номера, начинающиеся “333”, далее цифра от 4 до 8, и ещё “44”=-
session-target ipv4:10.4.4.4
Критерии выбора входящего диалпира в порядке применения:
Для POTS просто указываем порт:dial-peer voice 1 pots
description POTS-DIALPEER
destination-pattern 9T
port 1/0/0
Для VoIP указываем IP-адрес следующего устройства
dial-peer voice 1 voip
description VOIP-DIALPEER
destination-pattern 9T
session target ipv4:192.168.168.168
Кто не пишет “дескрипшены” к диалпирам, того многократно поразит постыдная неудача с женщиной.
Далее хочу обеспечить звонки с BR1 на HQ1 и обратно. Связь между ними по IP, а значит требуются “коннективити”. Одним из способов приподнять себе карму являются диалпиры указывающие на лупбеки.
Включаем на устройствах OSPF:
Смотрите в следующих сериях: “Зачем еще нужны диалпиры”, “Манипуляции с цифрами”, “Продвинутая настройка CUCME”.
И за борт ее бросает
В набежавшую волну.
(песня о классической телефонии).
Небольшое вступление.
Делается это следующим образом. Поисковиком ищется ближайший продавец Genica 56K V.92 Data/Fax Modem with Intel FA82537EP (это обычный Winmodem). Например, можно его найти тут.
Главное, нужен "правильный" чип - "MD3200". По крайней мере так говорит Астерикс - Intel modem marked with chipset 537 or MD3200. This card installs and behaves exactly like a Digium Wildcard X101P (cache) card.
Что делать дальше - довольно очевидно. Вставить в ПС с Linux и установить драйвера от Астерикса. Сам не пробовал, но похоже особых сложностей не возникает - вот еще одна ссылочка по этой теме.
Так что поле для экспериментов получается более чем открытое.
Построение сети VoIP (практическая часть).
Рассмотрим наиболее распространенные реализации компонентов H323 VoIP сетей, подходящие для экспериментов и практической реализации проектов IP телефонии.
Терминалы и шлюзы H323.
Корпорация microsoft включает практически во все версии windows свою программу для видео-конференц-связи netmeeting, обеспечивающую полноценную поддержку h323 и позволяющую подключаться к VoIP сетям.
OhPhone – это программный H323 терминал, созданный в рамках проекта OpenH323 project. Практически это неграфическое приложение, выполняющееся в командной строке под управлением операционных систем windows и unix, обеспечивающее участие в VoIP соединениях как с участием gatekeeperа так и автономно.
Cisco systems как безусловный лидер в разработке и производстве сетевого оборудования уже давно и успешно представила Ata 186 – аппаратный адаптер, согласующий два телефонных аппарата с VoIP сетью (ethernet). С соответствующей прошивкой он обеспечивает полнофункциональный H323 шлюз. В настоящее время это одно из самых дешевых и проверенных решений для клиентов IP телефонии (как и более современная модель ata 188).
Небольшим минусом можно считать поддержку только одного одновременного вызова кодеком со сжатием. Несомненный плюс – возможность использования для авторизации CAT (cisco access token) , обеспечивающего шифрование передаваемых учетных данных.
Фирма D-link в последнее время усилила свою активность на рынке коммуникационного оборудования. Не стал исключением и сегмент VoIP: выпускаются довольно дешевые и многофункциональные устройства типа шлюзов DG-102, DVG-1104 поддерживающие H323 (и не только).
Модульный сервер доступа VoIP – узкоспециализированное модульное решение уровня провайдера IP телефонии. Подавляющие всех конкурентов характеристики и возможности сделали данную платформу лидером инсталляций в своем секторе рынка.
Для того, чтобы превратить обычный маршрутизатор cisco (серий 2600 или 3600) в шлюз H323 необходим голосовой модуль VNM (voice network module), который комплектуется голосовыми картами VIC (voice interface card).
Голосовые карты могут иметь на борту различные виды портов, например с телефонными разъемами RJ11: FXS и FXO.
В свою очередь маршрутизатор можно подключить к АТС (примитивно через FXO или более правильно через PRI если позволяет оборудование) и получить VoIP в своей офисной телефонной сети.
Gatekeeperы H323.
H323 Gatekeeperом может являться практически любой маршрутизатор фирмы cisco с соответствующим программным обеспечением (версией IOS). В сочетании с общеизвестной надежностью и многофункциональностью (это все-таки маршрутизатор) представляет собой непобедимое решение.
Один из лучших gatekeeperов, в бесплатном варианте разрешающий 30 одновременных звонков. Приятный Си подобный синтаксис файла конфигурации, расширенные возможности (проксирование, radius и прочие), графическая утилита администрирования и стабильность в работе позволяют рекомендовать aqua gatekeeper для решения самых разнообразных задач VoIP (это не реклама, а результаты тестирований).
Компания Mera выпускает платный продукт под названием mera transit softswitch – замечательное решение для провайдера IP телефонии. Это полнофункциональный контроллер VoIP c большим числом дополнительных возможностей. Единственный недостаток – он платный :).
Дизайн биллинг системы VoIP.
Для того, чтобы производить аутентификацию VoIP клиентов и вести учет их деятельности (звонков) необходимо развертывание биллинг системы. Простейшая схема учета и контроля может включать в себя некоторую совокупность VoIP клиентов, работающих через Gatekeeper, который имеет поддержку RADIUS протокола (ее имеют практически все gatekeeperы).
При подключении к Gatekeeperу (или во время начала звонка) клиент в каком-либо виде передает ему свои параметры (в том числе имя и пароль), а Gatekeeper проверяет их через Radius сервер. Так происходит аутентификация. Во время звонка клиента Gatekeeper может посылать Radius серверу так называемые Radius accounting пакеты, которые тот будет использовать для формирования журнала учета работы клиентов.
Кроме того, многие H323 шлюзы могут использовать RADIUS самостоятельно, что позволяет обрабатывать их статистику таким же образом. Для построения законченной биллинговой системы можно использовать Radius сервер, который поддерживает работу с SQL сервером (например FreeRADIUS).
В итоге можно получить распределенную схему, обеспечивающую необходимый функционал и гибкость: все учетные записи и статистика работы клиентов хранятся на SQL сервере, связь Gatekeepera с которым обеспечивает RADIUS.
Приложение. Примеры настройки и конфигурации.
Cisco H323 gateway.
Конфигурирование голосового модуля.
FXS (Foreign Exchange Station) порт - предназначен для подключения телефонного аппарата и эмулирует для последнего PBX (АТС).
FXO – (Foreign Exchange Office) порт – в противоположность FXS подключается в телефонную линию.
Таким образом, простейший шлюз H323 может выглядеть как cisco маршрутизатор (2600 или 3600) с голосовым модулем и интерфейсной картой FXS в нем, к которой подключен обычный телефонный аппарат. Ну и конечно какой-нибудь интерфейс для связи с IP сетью, например Ethernet.
Как видим, у нас два порта FXO (1/0/0 и 1/0/1) и два порта FXS (1/1/0 и 1/1/1), где цифры расшифровываются как slot-number/sub unit-number/port .
Подключим телефонный аппарат к FXS порту и посмотрим состояние:
А теперь при поднятой трубке телефона:
Описание dial peer.
После того, как мы определились с голосовыми портами необходимо обозначить соответствие набираемого (принимаемого) телефонного (Е164) номера и пункта назначения (порт, ip адрес, gatekeeper) – описать так называемый dial peer. Согласно официальной документации dial peer служит для определения атрибутов, направления и участников звонка.
Если рассматривать dial peer как таблицу для ассоциации телефонного номера и пункта назначения звонка, то все dial peerы можно разделить на два вида: те, которые направляют звонок на соответствующий POTS интерфейс (например FXS) и те, которые предполагают приемной стороной определенное VOIP устройство (например VOIP шлюз).
В качестве иллюстрации соберем VOIP полигон с двумя шлюзами cisco.
Конфигурация шлюза А (gate A):
-
!
dial-peer voice 1 voip
destination-pattern 666
session target ipv4:192.168.0.2
codec g711alaw
!
dial-peer voice 2 pots
destination-pattern 555
port 1/1/1
!
В конфигурации шлюзу сказано, что звонки на номер 666 отправлять на участника IP сети с адресом 192.168.0.2 (предположительно VOIP шлюз) причем для связи использовать определенный звуковой кодек (алгоритм кодирования). А для терминирования звонка по номеру 555 использовать собственный голосовой порт номер 1/1/1. Также следует обратить внимание на задаваемый кодек – он должен быть одинаковым у обоих участников VoIP соединения.
Аналогично выглядит конфигурация шлюза B (gate B):
-
!
dial-peer voice 1 voip
destination-pattern 555
session target ipv4:192.168.0.1
codec g711alaw
!
dial-peer voice 2 pots
destination-pattern 666
port 1/1/1
!
Только он терминирует звонки на номер 666 (на свой порт 1/1/1) и направляет звонки по номеру 555 на IP адрес 192.168.0.1 .
Можно посмотреть все dial peerы:
В итоге, если поднять на телефонном аппарате А трубку и набрать номер 666, на шлюзе А сработает dial peer ( описанный как dial-peer voice 1 voip) и направит звонок по адресу 192.168.0.2, то есть на шлюз B. На шлюзе B данный звонок в соответствии со своим dial peer (описанным как dial-peer voice 2 pots) терминирует звонок на порт 1/1/1 – зазвонит телефон B. Для того, чтобы направлять звонки (например, начинающиеся на 7) не просто в IP сеть, а на GATEKEEPER (маршрутизирующий звонки) необходимо на интерфейсе, подключенном к IP сети описать h323-gateway (указать его адрес и порт):
-
!
interface FastEthernet0/0
ip address 192.168.0.1 255.255.255.0
speed 10
full-duplex
h323-gateway voip interface
h323-gateway voip id GATEKEEPER ipaddr 192.168.0.100 1719
h323-gateway voip h323-id cisco
!
И в соответствующем dial peer вписать session target как ras:
-
!
dial-peer voice 5 voip
destination-pattern 7T
session target ras
codec g711ulaw
!
В данном случае cisco шлюз будет регистрироваться на gatekeepere и направлять звонки на номер, начинающиеся с цифры 7 на него.
Посмотреть работу шлюза H323 можно так:
Cisco H323 Gatekeeper
Приведем для примера простейшую конфигурацию cisco h323 gatekeeper:
Или активные сессии (звонки), проходящие через gatekeeper:
Gnu Gatekeeper
Простейшая топология VoIP сети с участием gnu gatekeeperа может выглядеть следующим образом:
Конфигурация для простейшего случая (любой терминал или шлюз может зарегистрироваться):
Существует возможность контроля и управления – это телнет на определенный порт (по умолчанию 7000). Если же необходимо проксировать сигнальный и голосовой трафик из определенной сети, то конфигурация несколько изменяется. Например, для следующей топологии, содержащей локальную подсеть с приватными адресами и внешний VoIP шлюз:
Конфигурация будет выглядеть примерно так:
В итоге VoIP шлюзы и терминалы из локальной сети будут регистрироваться на gatekeepere и весь сигнальный и голосовой трафик, направленный на внешний шлюз, будет проксироваться.
Aqua gatekeeper
Для примера приведем вырезку из конфигурации обеспечивающую регистрацию терминала cisco ata186 (регистрирующегося с параметрами “ata186” и “555” и принимающего звонок на номер 555) и шлюза cisco (с адресом 192.168.0.10):
-
system
identifier 'aqua';
address 192.168.42.84 ;
call signal port 1719;
>
…
zone TEST bandwidth 10M;
user ata186
location TEST;
login "ata186";
login "555";
alias "ata186";
alias "555";
>
user cisco
location TEST;
alias "cisco";
alias "999";
static 192.168.0.10;
>
Если необходимо проксировать voip трафик от определенного клиента, то его нужно описать примерно так:
Читайте также: