Как настроить cisco 7931

Настройка телефона Cisco серии 79XX для работы с Asterisk

В статье будут описаны нюансы настройки IP-телефона Cisco на примере цискофона 7942G.
Итак, если вы присматриваетесь к VoIP-устройствам Cisco серии 79XX, то добро пожаловать под кат.

Используется:

Cisco VoIP Phone 7942G
Asterisk 1.4.39
TFTP-server-0.49
Внимание! Инструкция подходит не для всех телефонов Cisco 79XX. См. здесь

Настройка

Комбинации клавиш в Cisco

**#** — перезагрузка телефона (через меню)
**# — разблокировка настроек (также через меню). Разблокировка нужна, например, для того чтобы поставить настройки DHCP-клиента

Смена прошивки

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

Далее заходим на известный всем сайт voip-info.org. По ссылке выложена информация о прошивке. Т.к. у меня версия астериска 1.4 (которая не умеет работать по tcp), то советуют брать версию 8.5.4. По этой ссылке есть много и другой полезной информации.
Таким образом, нам нужен файл cmterm-7942_7962-sip.8-5-4.zip. Все файлы которые там есть нужно вывалить в корень тфтп-сервера.

Русская локаль

Еще бы нам не помешала русская локаль. Ну т.е. чтобы все надписи на экране были на русском языке.
Я её брал из файла po-locale-ru_RU-8.4.3.1000-1.exe (тоже можно найти в интернете). Тут есть одна хитрость — при запуске программы она вываливает ошибку и потом закрывается. Но нам ведь всего лишь нужны файлы локали, установить мы их можем и сами.
Поэтому после запуска идем в папку %TEMP% (советую предварительно её очистить) и смотрим что там программа вывалит.
Там в числе прочего будет папка Russian_Russian_Federation. Вот её нам и нужно будет поместить в корень tftp-сервера.
Версия локали будет как раз 8.4.3.1000-1.

Читайте также:  Запрос посредством фгис егрн не работает
Файл кофигурации цискофона

Теперь перейдем непосредственно к файлу конфигурации. Цискофон загружает его исключительно с tftp-сервера. Сначала кажется неудобно, с другой стороны, нужно настроить всего один раз, а затем можно эти телефоны хоть штабелями закупать — настройка их будет аналогичной и займет минимум времени. Кроме того, этим Cisco обезопасил телефон от «шаловливых ручек» пользователей. Через меню сделать практически ничего нельзя.
Файл должен называться SEP .cnf.xml.
Мак-адрес записан на тыльной стороне устройства.
Определим некоторые значения:
$ASTERISK — ай-пи нашего астериска
$SERVICESURL — полный путь до скрипта, который генерирует адресную книгу (например, 192.168.0.22/asterisk/directory.php)
$ACCOUNT — пользователь/номер нашего аккаунта на астериске. Если у вас нет соответствия номер пользователь, то конфиг нужно будет соответствующим образом поменять.
$ACCOUNT_PASS — пароль от SIP-аккаунта

Теперь будем комментировать.

Все часовые пояса можно найти, например, здесь.

Следующие настройки нужны для настройки локали:

Конфигурация sip.conf астериска

Самое интересное здесь — call-limit=2. Суть в том, что можно будет получать 1 или 2 звонка (3 звонок уже на циску не пойдет — зачем её напрягать?), их можно обрабатывать на телефоне, переключаясь между ними. Больше чем 2 звонка в этом аппарате не поддерживается (возможно будет поддерживаться в новых прошивках), хотя обрабатывать 3 звонка уже достаточно накладно.

Настройка диалплана цискофона

Циско настолько умная, что может использовать свой собственный диалплан. Но тут есть обратная сторона медали. Если этот диалплан не указать, то исходящие звонки вообще ходить не будут. Точней будут, но только на номера от 0 до 9 =).

В этом конфиге мы по сути передаем всю ответственность на астериск — т.е. просто после 3-х секунд передаем номер. Более изящные номерные планы можно найти на voip-info.org.

Адресная книга абонентов

У нас есть LDAP (в связке с samba), в нем есть информация о телефонах пользователей. Так почему бы этим не воспользоваться?
Сервер LDAP, filter поиска нужно будет поменять на свои настройки.
directory.php:

Обновление. Заметьте, что на странице только 32 контакта. Почему так? Не знаю, чем это объяснить, но так реализовано в прошивке — больше чем 32 контакта не поддерживается. Впрочем, это не беда, т.к. можно реализовать при помощи софткеев механизм отображения пред. и след. страниц.

Делаем настройки для логотипа

Для начала по логам tftp смотрим куда cisco обращается за картинкой. Происходит это в момент выбора фонового изображения
через меню телефона (как разблокировать меню написано выше).
изображения из меню
/tftpboot/Desktops/320x196x4/List.xml:

Нам нужно создать одну картинку 320×196 и одну картинку в 4 раза меньше (80×49).
Logo-TN.png — эскиз.
Logo.png — полноценная картинка.
Изменять логотип нужно через меню телефона.

Что не вошло в статью

— Настройка сигналов вызовов. Да, это тоже можно делать. Другое дело — зачем? Если для вас оно имеет смысл — то дерзайте.
— Настройка directories. Есть возможность, например, читать RSS с телефона и вообще добавлять различные контент-каталоги.

Источник

Subnets.ru blog

Сети, настройка оборудования, сетевые сервисы.

Быстрый переход: Главная блога Главная сайта Форум
Если Вы чего то недопоняли или не нашли — задайте
вопрос на нашем форуме и мы попробуем Вам помочь.
Subnets.ru Регистрация IP и Автономных систем mega-net.ru

Перепрошивка и настройка VoIP телефона Cisco 7931G

Возникла необходимость настроить телефон Cisco Unified IP Phone 7931G для работы по протоколу SIP и подключению его к серверу с Asterisk.

Ранее я не имела опыта по настройке данных аппаратов и пришлось разбираться с нуля.

Итак у нас имеется аппарат, который штатно работает по протоколу SCCP (Skinny Client Control Protocol, проприетарный протокол Cisco).
Первостепенная задача — перепрошить телефон SIP прошивкой, взятой с официального сайта.

На сайте есть прошивка версии 9+ и я сначала поставила ее, но возникли проблемы с конфигом. Примеров конфигурационного файла для 9ой версии в Инете не нашлось и телефон отказывался работать (даже с сокращенным до минимума конфигом для прошивок версии 8) я решила откатиться до версии 8.5(3)SR1 как самой популярной по мануалам из разных источников.

Для настройки телефона нам понадобится:

В моем случае — все делалось на рабочей станции под OS FreeBSD.
IP-адрес машины для внутренней сети — 10.20.1.1/24
Если вдруг Ваш телефон не настроен на DHCP, то это можно изменить через меню телефона. Надо разблокировать возможность менять настройки комбинацией клавиш **#, и, покопавшись в не сильно просторном меню, выставить искомый параметр.

Для запуска tftp требуется расскоментировать (или добавить) строчку в /etc/inetd.conf
tftp dgram udp wait root /usr/libexec/tftpd tftpd -s /tftpboot

Создать директорию в корне (если она отсутствует):
#mkdir /tftpboot

Установить права доступа на эту директорию:
#chown -R nobody:nogroup /tftpboot

Далее запустить
#/etc/rc.d/inetd onestart

Для автозапуска, после перезагрузки системы, добавить в /etc/rc.conf:
inetd_enable=”YES”

Проверяем, запустился ли демон inetd:
#sockstat | grep :69
root inetd 1094 5 udp4 *:69 *:*

Настраиваем DHCP. Установила из портов сервер isc-dhcp42-server:
#cd /usr/ports/net/isc-dhcp42-server/
#make install clean

Далее правим конфиг DHCP и добавляем DHCP Option 66 и Option 150:
#ee /usr/local/etc/dhcpd.conf

Cisco Systems использует нестандартную опцию в DHCP – option 150 (проприетарная опция) для настройки своих аппаратов. Опция 66 — ее аналог.

Тоже самое можно сделать и на микротике, для этого в настройки DHCP сервера нужно добавить:
/ip dhcp-server option
add code=66 name=tftp66 value=»‘IP tftp‘»
add code=150 name=tftp150 value=»‘IP tftp’”

Где IP tftp это IP-адрес нашего TFTP сервера. Пишем его в одинарных кавычках, если добавлять через винбокс, а если через консоль, то в одинарных, а потом в двойных.

/ip dhcp-server network
add address=Network/mask dhcp-option=tftp66,tftp150 dns-server=DNS1,DNS2 gateway=IP-router netmask=24

В папку /tftpboot выкладываем файлы из скаченного архива с прошивкой.
Список файлов:

  • SIP31.8-5-3SR1S.loads
  • apps31.8-5-3ES4.sbn
  • cnu31.8-5-3ES4.sbn
  • cvm31sip.8-5-3ES4.sbn
  • dsp31.8-5-3ES4.sbn
  • jar31sip.8-5-3ES4.sbn
  • term31.default.loads

На этом приготовления окончены и мы приступаем к самому процессу.

Необходимо удалить с телефона старую прошивку. Для этого:

  • отключаем телефон от питания
  • включаем держа клавишу # до тех пор пока программируемые кнопки не начнут мигать по очереди оранжевым светом
  • отпускаем кнопку и вводим на телефоне код: 3491672850*#

Телефон должен начать мигать кнопками, красным цветом. Это значит процесс стирания старой прошивки пошел. Затем телефон выключается и визуально не видно, делает ли он что-либо. Следует спокойно подождать 3-5 минут.

А пока я смотрела в tcpdump трафика на интерфейсе в сторону телефона и логи tftp-сервера, чтобы убедиться что есть обращения от телефона к DHCP и получения файлов по TFTP.

Итак телефон прошился новой прошивкой и загружается. Для его дальнейшей работы в /tftpboot нам требуется создать конфигурационный файл телефона в формате XML, который должен иметь название вида: SEP000000000000.cnf.xml
Где 000000000000 – МАС-адрес телефона, который написан на нем на наклейке сзади.

Содержимое конфигурационного файла (наиболее интересные строки, на которые стоит обратить внимание, выделены синим):

Следует отметить, что если телефон не принимает конфигурационный файл, например из-за наличия ошибок в нем, то он будет отображать на экране состояние «Unprovisioned» и каждые 30 секунд обращаться к tftp-серверу, пытаясь вновь скачать конфигурационный файл (вдруг, на этот раз он не будет содержать ошибок). Эти попытки прекрасно видны по tcpdump`у и в логах TFTP.
Для проверки корректности XML синтаксиса конфигурационного файла мне дали хороший совет: просто открыть файл конфига браузером. Лично мне это помогло, помогло осознать почему конфиг не принимается, а так же браузер точно указал в каком именно месте ошибка синтаксиса.

Пробежимся по настройкам:
dateTemplate — формат День — Месяц — Год.
timeZone — Временные зоны, например, перечислены тут
loadInformation — Версия прошивки, которую брать. Должно совпадать с названием файла .loads
phoneLabel — в правом верхнем углу будет висеть этот лейбл. Не длинее 12 символов.
preferredCodec — голосовой кодек, который будет использовать телефон

webAccess — Включение WEB-сервера на телефона. Обратите внимание, что для включение веб-интерфейса необходимо установить значение параметра в ноль.
sshAccess — Тоже самое касается ssh доступа на устройство.

Причем основная часть инструкций считает достаточным ввести 2 строки с UserID и Password для работы сервиса ssh, некоторые источники указывают еще верхние 2, и поясняют их актуальность только для версий прошивки старше 8.5.1. У меня не получилось подключиться по ssh ни в одном из найденных мной версий написания этих параметров.

Настройки сети:
registerWithProxy — для регистрации SIP линий
natEnable — ставим «true» если телефон находится за NAT
Если natEnable в «true», то телефону необходимо знать внешний IP-адрес NAT`а. Для этого есть две опции:

  • natReceivedProcessing — внешний IP-адрес будет автоматически браться из поля VIA (received=XXX.XXX.XXX.XXX) SIP-пакета 200 ОК полученный от сервера в ответ на пакет REGISTER от телефона, вместо поля Contact
  • natAddress — явное указание внешнего IP адрес NAT`a

При работе за NAT`ом выбрала установку natReceivedProcessing, а natAddress оставила пустым:

Указание диапазона RTP портов:

voipControlPort — если значение пустое, то по умолчанию порт 5060. Обратите внимание, что в зависимости от значения параметра natEnabled поведение разное.
Если natEnabled «false», то этот порт используется в кач-ве SRC порта для отправки SIP пакетов. Если natEnabled «true», то телефон будет отправлять пакеты с непривилегированных портов, а на этом порту будет ожидать ОТВЕТЫ от SIP-сервера.
Таким образом, при установке телефона за NAT и без дополнительной настройки шлюза (проброс порта) он работать не будет.
Изыскания на эту тему написаны в топике «Cisco 7931g SIP» на forum.asterisk.ru:

После чего телефон утверждает udp port 49287 unreachable:

Снова попробовал через NAT и наконец разобрался.
Могу сказать, что в предыдущий раз, это я ОЛЕНЬ (правда не пойму как так получилось), но судя по дампу, и наличию «rport» в конце строки VIA на которую я не обратил внимания, в пире в этот момент точно стояло nat=yes, а не nat=no.

Установил nat=no на стороне Asterisk, в конфиге телефона:

И… и это не взлетело, но на этот раз причина ясна:

  • 1.1.68.16 — Asterisk
  • 1.1.68.72 — IPшник NAT`а
  • 10.10.1.153 — IPшник телефона

Прохождение пакета REGISTER от телефона: 10.10.1.153.49845 > 1.1.68.72.49845 > 1.1.68.16.5060 (поле Contact: )
Прохождение ответного пакета 401 Unauthorized: 1.1.68.16.5060 > 1.1.68.72.5061
Пакет доезжает до 1.1.68.72, но не проходит к 10.10.1.153 т.к. в таблице NAT трансляций отсутствует запись о 10.10.1.153:5061, т.к. изначальный пакет 10.10.1.153.49845, посему пакет просто отбрасывается.

Соответственно становится логично, что если сделать проброс порта 5061 с внешнего 1.1.68.72 на 10.10.1.153, то все конечно же заработает.
Делаем проброс 5061 и ч.т.д.

Дамп на стороне Asterisk`а:

7896/7896 1.1.68.72 D 5061 Unmonitored

Reg. Contact : sip:7896@1.1.68.72:5061;transport=udp

Дамп на стороне NAT`а (после процесса NAT):

SIP линии:
featureID — про этот параметр ниже
proxy- IP-адрес нашего сервера c Asterisk
port — SIP порт
name — Имя или номер SIP аккаунта
displayName — Отображаемое имя, соответственно указываем или имя или номер.
authName — имя вашего аккаунта для авторизации на сервере, обычно это ваш номер
authPassword — пароль вашего SIP аккаунта
contact — номер SIP аккаунта

Линия с Speed Dial
SD (Speed Dial — набор номера по нажатии кнопки) на программируемых кнопках (коих 24 штуки).
Хотелось настроить еще и BLF, но это оказалось все непросто с этим на этом телефоне. Идея была отодвинута (отлично гуглятся решения, вроде работы телефона с Cisco Call Manager), т.к. необходимо пропатчить Астериск, а именно chan_sip.
Кнопки линий пронумерованы от 24 до 1 сверху вниз, чередуясь слева вправо. Соответвенно, 1 линия находится в правом нижнем углу.

featureLabel- выводимое описание
speedDialNumber — номер для набора

featureID — код фичи, то что будет делаться по нажатию кнопки:

  • feature id 1 last number redial
  • feature id 2 speed dial
  • feature id 3 hold
  • feature id 5 fwd all
  • feature id 9 line — Для SIP регистрации
  • feature id 19 private
  • feature id 20 service uri
  • featureid 21 speed dial — Для набора сохраненного номера
  • feature id 22 paging
  • feature id 27 Malicious call ID

Источник

Оцените статью