Жизнь ИТшника Это блог о моей работе, жизни и увлечениях! Решим ИТ проблемы вместе!

11Мар/101

Подключаем ip телефон Cisco 7912 к SIP Asterisk

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

Вводная: Из наших прошлых экспериментов с asterisk у нас остался  полность настроенный и рабочий стенд.

Астериск отвечает за SIP звонки, cisco и ccme работает с парочкой телефонов 7912 с прошивкой SSCP (т.е. самые обычные ip телефоны cisco).  Впрочем  вашем случае все може быть не так и особой роли это не играет.

Ставим задачу: сменить прошивку на телефоне cisco 7912 чтобы получить возможность звонить с него через любого SIP провайдера. В нашем случае SIP провайдером является уже настроенный asterisk.

Делаем:

Подготовительная часть. Заводим в asterisk  новый номер для будущего телефона. Пусть это будет 5555 с secret 5555.

Качаем архив в SIP прошивкой для 7912  http://asteriskpbx.ru/raw-attachment/wiki/cisco-7912-sip-mode/7912.tar.gz

теперь нам необходимо найти либо работающий TFTP сервер либо настроить новый. Я попробовал настроить TFTP прямо на Asterisk. Сам сервис запустился, но увы не заработал как надо, не желая отдавать файлы по запросу и я на этом потерял часа 4.  Для тех кому интересно:

Для того что бы настроить TFTP сервис на AsteriskNOW необходимо  в файле /etc/xinetd.d/tftp изменить пункт  disable = yes на  disable = no

В общем от возни с tftp на asterisk я отказался в пользу своего любимого  портативного  сервера TFTPd32 http://tftpd32.jounin.net

Скачанный архив 7912.tar.gz распаковываем в корень настроенного tftp сервера. Архив предназначен для обновления прошивки на версию с SIP.  Теперь нам необходимо указать телефону откуда обновляться.

1. нажимаем MENU key
2.  Settings > Network Configuration Настройки > Сетевые настройки
3. По умолчанию меню заблокировано. Для разблокировки нажимаем  **#
Если запрашивает пароль вводим 1234
4. Выбираем опцию "Alternate TFTP"
5. нажимаем  "Yes"
6. Выбираем опцию "TFTP Server 1"
7. нажимаем "Edit"
8. указываем IP  адрес TFTP сервера
9. нажимаем "Validate"
10. Сохраняемся, нажимаем "Save"
11.Выходим в корневое меню и перезагружаем телефон.
После загрузки телефон  берет с tftp сервера файлик gkdefault.cfg, этот файлик содержит специальным образом отформатированные команды
upgradecode:3,0x601,0x0400,0x0100,0.0.0.0,69,0x060412a,CP7912080001SIP060412A.sbin
UIPassword:1234
Первая указывает на прошивку, а вторая устанавливает пароль на изменение настроек. После получения этого файлика телефон закачивает себе новую прошивку и перезагружается.
На этом месте я долгое время искал почему телефон у меня отказывается брать подготовленные xml файлы с настройками, пока не нашел упоминание что эти файлы используются в друих моделях и прошивках. Та прошивка что есть у меня управляется через файлы gkdefault.cfg или gkMAC
Собственно пример настроек есть в архиве, в файле  sipexample.txt
Все что необходимо изменить его, внеся соответствующие параметры. Я изменил только то что мне было необходимо:
dhcp:1
Proxy:172.16.1.1
UID:5555
PWD:5555
LoginID:555
После того как наш файл с настройками готов, его необходимо конвертировать в формат понятный телефону.  Сохраняем его в папку с распакованным архивом с прошивокй. Запускаем в этой папке команду cfgfmt -tsip_ptag.dat имяподготовленногофайла.txt gkМАКАДРЕСТЕЛЕФОНА
К примеру у меня эта команда выглядела так:
cfgfmt -tsip_ptag.dat gk0011BBA01E10.txt gk0011bba01e10
Обязательно учитывайте регистр в наименовании файлов, т.к. в случае с asterisk, tftp сервис чуствителен к регистру.
Убираем с tftp файлик gkdefault.cfg  и ложим туда наш подготовленный и отформатированный файл с именем содержащим MAC адрес телефона. Перезагружаем телефон и он подхватывает новые настройки и подключается к Asterisk. Ура! Можно звонить
Конечно, помимо использования настроечного файла все можно настроить из меню телефона и рабоать будет точно также, но в случае если у вас этих телефонов не один десяток то управление через tftp себя оправдывает.  А для того что бы телефон знал к каому tftp обращаться достаточно используя ВРСЗ раздать ему опцию 150 указывающую на адрес tftp.
В моем случае я добавил на cisco еще один vlan и привязал к нему  dhcp pool
ip dhcp pool siPhonenetwork
network 172.16.4.0 255.255.255.0
default-router 172.16.4.254
option 150 ip 172.16.1.1


Google Bookmarks Digg del.icio.us Ma.gnolia Technorati News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong

Комментарии (1) Пинги (0)
  1. Огромное человеческое спасбо!


Оставить комментарий


Нет обратных ссылок на эту запись.