Pull to refresh

Азы IP-телефонии от Cisco или знакомство с Cisco CallManager Express

Reading time 5 min
Views 147K
Совсем недавно на нашу организацию вышел клиент, который попросил настроить IP-AТС на основе платформы Cisco 2921 и софта Cisco CallManager Express (CME). Клиентами разбрасываться не прилично в наше время, посему решили данную услугу оказать.

Взялся я за это дело не столько с целью срубить бабла для компании, сколько с целью ознакомиться как у этой самой Cisco устроена Ip-телефония, с целью саморазвития то бишь.

Ознакомился. Тема приятная; для меня как для цискаря работать гораздо удобнее нежели чем с Asterisk.

Писать про возможности CME можно много. Сегодня расскажу про самые его основы.
Попробуем решить простую задачу: есть пара телефонов — один работает по SIP, другой по SCCP, надо заставить их звонить друг на друга. Как это сделать — под катом.

Первоначальная настройка CME

Нулевым пунктом считается настройка dhcp-сервера на маршрутизаторе, так как практически все телефоны по умолчанию настроены на получение IP-адреса именно таким способом. Если кто-то подзабыл или не знал, то на Цисках это делается так:

CME#conf t
CME#(config)ip dhcp pool voicepool
CME#(config-ip-dhcp)network 192.168.101.0 255.255.255.0
CME#(config-ip-dhcp)default-router 192.168.101.1
CME#(config-ip-dhcp)option 150 ip 192.168.101.1
CME#(config-ip-dhcp)lease 0 0 30

Все настройки вроде бы очевидны. За исключением, наверное 150-ой опции. Данная опция передаёт в DHCP-настройках адрес tftp-сервера (про использование tftp-сервера в этой статье я писать не буду, но вещь это очень полезная для работы с телефонами)

По умолчанию, Cisco очень хорошо и с пониманием относится к работе протокола SCCP (в силу того, что данный протокол принадлежит самой Cisco), и не очень дружит с более распространным SIP-ом. Так, например чтобы просто разрешить звонки между SIP-телефонами, подключенными к нашей АТС необходимо сконфигурировать:

CME#conf t
CME#(config)voice service voip
CME#(config-voice)allow-connections sip to sip

Далее конфигурируем срок регистрации SIP-телефонов:

CME#conf t
CME#(config)voice service voip
CME#(config-voice)sip
CME#(config-voice-sip)registrar server expires max 3600 min 3600

Теперь необходимо создать т.н. класс кодеков — набор кодеков, которые планируется использовать:

CME#conf t
CME#(config)voice class codec 1
CME#(config-voice)codec preference 1 g711alaw
CME#(config-voice)codec preference 2 g711ulaw
CME#(config-voice)codec preference 3 g729br8

Первым будет сделана попытка использовть кодек 711alaw, если не удастся, то g711ulaw, ну и дальше интуитивно понятно.

Этих настроек будет достаточно.

Настройка для работы c SCCP

Все настройки касающиеся работы протокола SCCP происходят в разделе telephony-service. Вот необходимый нам минимум:

CME#conf t
CME#(config)telephony-service
CME#(config-telephony)max-ephones 10
CME#(config-telephony)max-dn 10
CME#(config-telephony)ip source-address 192.168.101.1 port 2000

ephone — это такая штука, которая, упрощённо говоря, символизирует собой телефон, ну то есть образ телефонного апарата в понятии CME. Параметр max-ephones отвечает, соответственно за то, какое количество SCCP-телефонов может быть зарегистрировано на данной АТС.

dn — (directory number) это такая штука, которая, упрощённо говоря, символизирует собой телефонный номер. По аналогии ясно, за что отвечает параметр max-dn.

К слову сказать, не очень правильно указывать слишком большое количество ephone и dn, ибо под каждый из этих «юнитов» CME будет выделять оперативную память при инициализации.

Плюс ко всему количество поддерживаемых ephone и dn зависит от модели платформы и версии софта.
ip source-address задаёт IP-адрес (и как следствие интерфейс) и порт, на котором будут слушаться запросы от SCCP-телефонов

Настройка CME для работы с SIP-телефонами

Все настройки касающиеся работы протокола SIP происходят в разделе voice register global. Вот необходимый нам минимум:

CME#conf t
CME#(config)voice register global
CME#(config-voice)mode cme
CME#(config-voice)source-address 192.168.101.1 port 5060
CME#(config-voice)max-dn 50
CME#(config-voice)max-pool 36

Два отличия. Первое — необходимо выполнить команду mode cme, которая как бы намекает роутеру что отныне с SIP-телефонами будет работать CME (это к тому, что с протоколом SIP у Cisco работает не только описываемый нами софт). Второе — теперь вместо ephon-ов мы будем оперировать voice-pool-ами

Регистрируем телефоны

Можно приступать к настройке нумерации и параметров регистрации телефонов.
Технология в обоих протоколах одинакова и достаточно проста — сначала создаётся dn, потом создаётся «телефон», и к телефону привязывается его номер (или несколько).
В нашем примере для авторизации телефонных аппаратов на сервере мы будем использовать их MAC-адреса. Это логично, так как на практике за определённым человеком закрепляется один и тот же телефонный аппарат и телефонный номер, а человек обычно редко перемещает своё рабочее место в офисе, а если и перемещает, то и телефончик с собой переносит.

Регистрируем SCCP-телефон

Создаём телефонный номер:

CME#conf t
CME#(config)ephone-dn 1
CME#(config-ephone-dn)number 100
CME#(config-ephone-dn)description Beauty-User
CME#(config-ephone-dn)name The Real Man

Создали телефонный номер 100, описание внутри CME — «Beauty-User», отображаемое на телефоне имя будет «The Real Man»

Создаём образ телефоного аппарата. привязываем его к MAC-адресу реального аппарата, привязываем к нему номер:

CME#conf t
CME#(config)ephone 1
CME#(config-ephone)mac-address B4A4.E328.BDEC
CME#(config-ephone)button 1:1

Привязывание телефонного аппарата (а точнее телефонной линии нашего аппарата) происходи командой button 1:1. Формат следующий — сначала набираем ключевое слово «button», потом указываем номер этой «кнопки» (первый в нашем примере), потом указываем действие, которое требуется совершить (":" — двоеточие означает, что сейчас мы привяжем к выбранной линии какой-нибудь телефонный номер) и потом параметр соответствующий действию — в нашем случае указываем телефонный номер (то есть номер настроенного заранее dn).

Вы же наверняка видели в жизни\на картинках цискофон? Видели там много всяких кнопок возле экранчика? Это и есть те самые button-ы. На самом деле, каждая из этих кнопок отвечает за свою линию. А действий над ними можно совершать много (не только привязывать к какому нибудь номеру). Но это достойно отдельной статьи.

А тем временем мы можем смело включать телефон с указанным МАК-адресом в сеть, подождать пока он прогрузится, увидеть на его экранчике возле первой кнопки номер 100 и заветное имя — «The Real Man». Если мы подымем трубку, то услышым заветный зуммер

Регистрируем SIP-телефон

directory number создаётся следующим образом:

CME#conf t
CME#(config)voice register dn 1
CME#(config-voice-register-dn)number 200

Думаю, всё понятно. Описываем далее параметры для телефона:

CME#conf t
CME#(config)voice register pool 1
CME#(config-voice-register-pool)id mac 1CDF.0F4A.152E
CME#(config-voice-register-pool)number 1 dn 1
CME#(config-voice-register-pool)voice-class codec 1
CME#(config-voice-register-pool)username test password test

Привязка к первой линии первого номера происходит командой number 1 dn 1.
Командой voice-class codec 1 определяем для телефона набор допустимых кодеков (этот набор мы описывали в начале самом).
Далее командой username\password задаём аутентифкационные данные.

Чтобы телефон зарегистрировался, необходимо зайти на его веб-морду и в настройках первой линии указать адрес сервера — 192.168.101.1 и аутентификационные данные. Сохраняем.
Перезагружаем.

PROFIT!

IP-адрес телефона можно узнать по информации из dhcp-пула по маку используя команду show ip dhcp binding, либо в настройках самого телефона — голосовое, либо визуально меню.

Вроде бы всё. Были описаны минимальные настройки CME чтобы на нём могли зарегистрироваться два телефона (SIP и SCCP), получив адрес через DHCP.

Источники знаний

Основной источник знаний для начала был видео-курс к CCNA Voice от Jeremy Cioara. Довольно живым языком (английским правда) рассказывается об IP-телефонии вообще и о нюансах настройки этого самого CME. Правда там ни словом не затрагивается настройка SIP-телефонов.

Очень хороший мануал, конечно, есть на cisco.com. Называется он Cisco Unified Communications Manager Express System Administration Guide. Доступен тут. Там же есть ссылка для скачивания в PDF.

В дальнейшем постараюсь рассказывать о разных нюансах настройки IP-телефонии на Cisco в общем, и о CME в частности — настройка tftp сервера для заливания прошивок на телефоны, подключение линий от ТфОП, специфика установки CME и прочие фичи.
Tags:
Hubs:
+30
Comments 9
Comments Comments 9

Articles