Pull to refresh

Callmanager Express как офисная телефонная станция — быстрый старт

Reading time5 min
Views8.7K
Решил систематизировать свои знания по теме, да и народу наверное полезно должно быть — помню что в свое время когда искал почти ничего существенного в сети не нашел.

кому интересно — велком под хабракат

Введение



Callmanager Express — встроенный функционал Cisco IOS с фичсетом SP Services и выше, реализованный на маршрутизаторах семейства ISR: 18xx, 28xx, 38xx.
От платформы зависит количество поддерживаемых пользователей (точнее телефонов). Максимум поддерживается 250 телефонов на роутере 3845. Аналоговые порты FXO/FXS и девайсы подключаемые через SIP/H323 транки не считаются — только SCCP и SIP терминалы, регистрирующиеся на самом маршрутизаторе.

Функционала предоставляемого данной IP ATC более чем достаточно для функционирования среднего офиса (а 250 человек это по моему сильно поболе среднего офиса). Плюс к тому тот же самый маршрутизатор позволяет организовать выход в интернет (можно через нескольких разных провайдеров), организовать безопасность (DMZ, firewall, IPS), подключение для удаленных пользователей и филиалов (IPSEC, SSL VPN, DMVPN) да и вообще почти все что угодно, со специальными модулями при большом желании можно и кофеварку подключить. :)

Перейдем к делу.

Базовая конфигурация:



Для начала основные понятия. Cisco рекомендует использовать для IP телефонов отдельный VLAN — это позволяет изолировать голосовой трафик с целью обеспечения безопасности и упростить настройку QOS в сети. Такой VLAN принято называть Cisco-Voice. Православные коммутаторы умеют сообщать телефону о наличии такого VLAN при помощи протокола CDP. Пользовательский трафик со второго Ethernet порта телефона, предназначенного для подключения компьютера пользователя, как правило передается не тегированным.

Пример настройки порта на коммутаторе (2960 и старше) для подключения IP телефона:
interface FastEthernet0/1/2
switchport voice vlan 101
macro description cisco-phone
spanning-tree portfast


В простейшем случае коммутатор подключается к маршрутизатору при помощи транкового порта и на маршрутизаторе требуется создать L3 интерфейс для терминирования Voice-Vlan. Это может быть как Ethernet сабинтерфейс, так и виртуальный SVI, в зависимости от типа порта на маршрутизаторе.

Пример:
interface GigabitEthernet0/0.101
description Cisco_Voice
encapsulation dot1Q 101
ip address 10.1.1.1 255.255.255.0
ip nbar protocol-discovery


Далее нам надо раздать телефонам IP адреса. Здесь кроется один важный нюанс — телефоны Cisco конфигурируются при помощи XML файла создаваемого самим Callmanager для каждого телефона. Телефоны скачивают свой конфиг по tftp с маршрутизатора. Первое что делает телефон после включения и инициализации прошивки — пытается найти на tftp сервере файл SEPxxxxxxxxxxxx.cnf.xml, где xxxxxx это MAC адрес телефона.
Значит нам нужно сообщить телефону об IP адресе tftp сервера. Это делается при помощи отдельной опции в DHCP ответе.

Пример настройки DHCP сервера для телефонов на маршрутизаторе:
ip dhcp pool phone
network 10.1.1.0 255.255.255.0
default-router 10.1.1.1
option 150 ip 10.1.1.1


Опция 150 как раз указывает на tftp сервер — в нашем случае он совпадает с IP адресом на интерфейсе терминирующем Voice-Vlan.

Итак связность телефонов и IP АТС мы обеспечили, пора начать создавать конфигурацию самой АТС.

Настройка Callmanager



Существует возможность создать базовую конфигурацию для Callmanager при помощи ответов на простые вопросы в CLI. Делается это командой telephony-service setup в режиме конфигурирования:

router(config)#telephony-service setup

--- Cisco IOS Telephony Services Setup ---

Do you want to setup DHCP service for your IP Phones? [yes/no]: no

Do you want to start telephony-service setup? [yes/no]: yes
Configuring Cisco IOS Telephony Services :

Enter the IP source address for Cisco IOS Telephony Services :10.1.1.1
Enter the Skinny Port for Cisco IOS Telephony Services : [2000]:
How many IP phones do you want to configure : [0]: 10
Do you want dual-line extensions assigned to phones? [yes/no]: yes
What Language do you want on IP phones :
0 English
1 French
2 German
3 Russian
4 Spanish
5 Italian
6 Dutch
7 Norwegian
8 Portuguese
9 Danish
10 Swedish
11 Japanese
[0]: 0
Which Call Progress tone set do you want on IP phones :
0 United States
1 France
2 Germany
3 Russia
4 Spain
5 Italy
6 Netherlands
7 Norway
8 Portugal
9 UK
10 Denmark
11 Switzerland
12 Sweden
13 Austria
14 Canada
15 Japan
[0]: 0
What is the first extension number you want to configure (maximum 32 digits): 100

Do you have Direct-Inward-Dial service for all your phones? [yes/no]: no

Do you want to forward calls to a voice message service? [yes/no]: no

Do you wish to change any of the above information? [yes/no]: no
CNF-FILES: Clock is not set or synchronized, retaining old versionStamps

---- Setup completed config ---


В итоге получаем следующий результат в конфиге роутера:
router#sh run | b telep
telephony-service
max-ephones 10
max-dn 10
ip source-address 10.1.1.1 port 2000
auto assign 1 to 10
max-conferences 4 gain -6
transfer-system full-consult
server-security-mode non-secure
create cnf-files version-stamp Jan 01 2002 00:00:00
!
!
ephone-dn 1 dual-line
number 100

< .... skipped ... >

ephone-dn 10 dual-line
number 109

ephone 1
no phone-ui speeddial-fastdial
no multicast-moh
device-security-mode none
keepalive 30 auxiliary 0

< .... skipped ... >

ephone 10
no phone-ui speeddial-fastdial
no multicast-moh
device-security-mode none
keepalive 30 auxiliary 0


Скрипт создал для нас базовую конфигурацию, создал 10 внутренних двухлинейных (dual-line) номеров командами ephone-dn, и создал 10 «болванок» для IP телефонов управляемых по SCCP командами ephone.

Как мы уже знаем, телефоны идентифицируются по MAC адресу.
Скрипт включил режим авторегистрации телефонов командой auto assign 1 to 10 , теперь «новый» телефон будет стучаться на tftp сервер, Callmanager «увидит» попытку регистрации от неизвестного телефона, и, если еще есть свободные места из запрошеных 10 — пропишет телефон у себя в конфиге.
Таким образом первые 10 телефонов автоматом получат номера от 100 до 109.

Мы же пойдем своим путем и добавим пару телефонов вручную:
router(config)#ephone 1
router(config-ephone)#mac-address 001B.D460.EAE6
router(config-ephone)#type 7912
router(config-ephone)#button 1:1 ; первому телефону дадим номер 100 указав для него ephone-dn1

router(config)#ephone 2
router(config-ephone)#mac-address 0022.9004.C1DC
router(config-ephone)#type 7941
router(config-ephone)#button 1:10 ; второму телефону дадим номер 109 указав для него ephone-dn10


не забудем перегенерить конфиги для телефонов (это нужно не всегда, но для надежности)

router(config)#telephony-service
router(config-telephony)#create cnf-files
CNF file creation is already On
Updating CNF files

CNF files update complete


Телефоны перезагрузятся, скачают новенький конфиг с tftp сервера, и зарегистрируются на IP АТС.
Убедится что телефоны зарегистрировались можно командой sh ephone registered.

вывод с реальной железки:

router#sh ephone registered

ephone-5 Mac:0022.9004.C1DC TCP socket:[6] activeLine:0 REGISTERED in SCCP ver 9/8
mediaActive:0 offhook:0 ringing:0 reset:0 reset_sent:0 paging 0 debug:0 caps:9
IP:10.1.1.12 52836 7906 keepalive 4491 max_line 2 dual-line
button 1: dn 10 number 4400 CH1 IDLE CH2 IDLE
Username: Igor

ephone-7 Mac:0022.9003.8804 TCP socket:[5] activeLine:0 REGISTERED in SCCP ver 9/8
mediaActive:0 offhook:0 ringing:0 reset:0 reset_sent:0 paging 0 debug:0 caps:9
IP:10.1.1.11 51460 7931 keepalive 10026 max_line 20
button 1: dn 11 number 4213 CH1 IDLE CH2 IDLE
Username: Alexander


Уже можно друг другу позвонить, profit! :D

В дальнейших статьях я расскажу о более тонкой настройке АТС, голосовой почте, пробросе звонков по PSTN и IP транкам, и о других интересных вещах.
Stay tuned! :)

Пишите о чем вам интересно было бы почитать в разрезе Callmanager Express, да и вообще голосовых решениях Cisco. Постараюсь осветить.

Upd: настоятельно просят осветить вопрос цены.
Голосовой бандл (комплект) маршрутизатор Cisco1861 с:
  • лицензией на 8 IP телефонов (+ 2 лицензии бонус, итого 10)
  • с модулями 4FXO+4FXS (т.е. еще 4 аналоговых телефона сразу можно подключить)
  • встроенная Wi-Fi точка доступа
  • UnityExpress (голосовая почта)
  • коммутатор на 8 портов с PoE
обойдется в GPL в $5495.
Кроме этого роутера не нужно больше ничего — он полностью покрывает IT инфраструктуру маленького офиса.
Ну может быть серверок под файлопомойку/почту. Но это уже необязательный элемент.

Телефоны можно взять любые SIP если хочется очень дешево, а минимальные телефоны Cisco обойдутся в GPL $135.
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
-1
Comments7

Articles