О боже, тем кто использует что-то облачное, в частности данная компания где я работают по каким-то причинам до меня зачем-то в качестве телефонии выбрала этот Гравител. И с тех самых порт – работа телефонии – это сущая головная боль. Я уже писал об этом в опубликованных заметках дабы служба поддержки Гравител наконец-таки обратила внимание, что не все так хорошо. Но увы этого пока не происходит. Сейчас мы ведем переписку с ихними инженерами: пусть будут имена: Даниил Николаев, Ильшат Лукманов и другие. Которые как мне кажется уже не знают, что рекомендовать: то отмените все кодеки оставьте только PCMU на всех базовых станциях (у меня это
Gigaset A540 IP и Yealink T21P E2) хотя по ихним настройкам из
Wiki все настроено, все порты из
VLAN 10 где находятся все телефонные аппараты доступ разрешен.
- Настройка Yealink T21 E2 на работу с АТС Гравител
- Проблемы при использовании виртуальной АТС от Гравител
Теперь просят включить настройки STUN, я их включаю, но нет связи между телефонами где он включен. Порт
3478 открыт. Но вот из всего этого, мое терпение лопнуло, когда я менял настройки кодеков на более чем
50 аппаратах. Я решил, что во что бы то ни стало нужно разобраться как настраивается
Auto Provisioned пока для
Yealink и я это сделал.
Шаг №1:
Сегодня я покажу, как я в компании настроил Auto Provision для телефонных аппаратов
Yealink T21P E2. Для чего это, просто здесь у каждого сотрудника стоит данный аппарат, а уже через него подключен компьютер. Сделано это для разграничения по
VLAN
Порт Internet – это VLAN 10 (тегированный трафик)
Порт PC – это VLAN 4 (нетегированный трафик)
В составлении конфигурационных файлов для Auto Provision использовался мануал:
mcgrp.ru-Vxr85DxE.pdf
В наличии:
- Телефонный аппарат:
Yealink T21P E2
Формат имени конфигурационного файла общих настроек для каждой модели свой.
Phone Model | Common CFG File |
Yealink T21P E2 (with PoE) | y000000000052.cfg |
Yealink T21 E2 (no PoE) | y000000000052.cfg |
Yealink SIP-T28P | y000000000000.cfg |
Yealink SIP-T26P | y000000000004.cfg |
Yealink SIP-T22P | y000000000005.cfg |
Yealink SIP-T21P | y000000000034.cfg |
Yealink SIP-T20P | y000000000007.cfg |
Yealink SIP-T19P | y000000000031.cfg |
Yealink SIP-T19P E2 | y000000000053.cfg |
Yealink SIP-T40P | y000000000054.cfg |
Yealink SIP-T46G | y000000000028.cfg |
Yealink SIP-T42G | y000000000029.cfg |
Yealink SIP-T41P | y000000000036.cfg |
Шаг №2:
В офисной локальной сети поднимаем или задействуем виртуальную/физическую систему под управлением Ubuntu 18.04 Server и поднимаем на ней сервис
tftpd-hpa
ekzorchik@srv-ftp:~$ sudo mkdir /media/pxeboot
ekzorchik@srv-ftp:~$ sudo chmod -R 777 /media/pxeboot/
ekzorchik@srv-ftp:~$ sudo chown -R nobody:nogroup /media/pxeboot/
ekzorchik@srv-ftp:~$ sudo cp /etc/default/tftpd-hpa /etc/default/tftpd-hpa.backup
ekzorchik@srv-ftp:~$ sudo nano /etc/default/tftpd-hpa
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/media/pxeboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure --create --verbose"
На заметку:
“--create” – включаем запись
“--verbose” – включаем логирование
“--secure” – Разрешить загрузку файлов на TFTP-сервер
ekzorchik@srv-ftp:~$ sudo service tftpd-hpa restart && sudo service tftpd-hpa status | head -n 5
Шаг №3:
В каталог /media/pxeboot нужно положить следующие файлы
Где
805ec07aa38d.cfg – MAC-адрес телефонного аппарата
T21P_E2-52.84.14.5.rom – файл прошивки для данного телефонного аппарата
y000000000052.cfg – общий конфигурационный файл для всех телефонных аппаратов серии Yealink T21P E2
На заметку: либо y000000000000.boot либо
805ec07aa38d.boot, но я использую первое.
ekzorchik@srv-ftp:~$ sudo nano /media/pxeboot/y000000000000.boot
#!version:1.0.0.1
## The header above must appear as-is in the first line
include:config "y000000000052.cfg"
include:config "$mac.cfg"
overwrite_mode = {$yealink_overwrite_mode}
ekzorchik@srv-ftp:~$ sudo nano /media/pxeboot/805ec07aa38d.cfg
#!version:1.0.0.1
### This file is the exported MAC-all.cfg.
account.1.auth_name = <login>
account.1.codec.pcmu.priority = 1
account.1.codec.pcma.enable = 0
account.1.codec.pcma.priority = 0
account.1.codec.g729.enable = 0
account.1.codec.g729.priority = 0
account.1.codec.g722.enable = 0
account.1.codec.g722.priority = 0
account.1.enable = 1
account.1.label = <number>
account.1.sip_server.1.address = firma.gravitel.ru
account.1.user_name = <login>
account.1.password = <password>
linekey.1.label = Перехват
linekey.1.type = 13
linekey.1.value = *63
sip.listen_port = 5070
### Static Configuration ###
static.network.dhcp_host_name = SIP-T21P_<number>
ekzorchik@srv-ftp:~$
ekzorchik@srv-ftp:~$ sudo nano /media/pxeboot/y000000000052.cfg
#!version:1.0.0.1
#firmware.url = tftp://192.168.9.123/T21P_E2-52.84.14.5.rom
# Включить Auto Provisioning:
auto_provision.mode = 1
# Адрес сервера Auto Provisioning (tftp)
auto_provision.server.url = 192.168.9.123
network.internet_port.type = 0
network.bridge_mode = 1
network.web_server_type = 3
#Устанавливаем свой пароль на вход через Web и телефон
security.user_name.admin = admin
security.user_password = admin:712mbddr@
#Выключить появление логотипа Yealink на телефоне
phone_setting.lcd_logo.mode = 0
#Подсветка
phone_setting.backlight_time = 1800
#https://IP&DNS - user&pass - Account - Rasshirennie - Session Expires (default: 1800)
account.1.session_timer.expires = 180
# Укажем NTP сервер:
local_time.ntp_server1 = polygon.com
local_time.interval = 60
# Назначим Time Offset (Московское время)
local_time.time_zone = +3
local_time.time_zone_name = Russia(Moscow)
lang.wui = Russian
lang.gui = Russian
network.port.max_rtpport = 30000
network.port.min_rtpport = 10000
network.vlan.internet_port_enable = 1
network.vlan.internet_port_vid = 10
network.vlan.dhcp_enable = 1
ekzorchik@srv-ftp:~$ sudo chown -R nobody:nogroup /media/pxeboot/
Шаг №4:
Далее в настройках DHCP сервиса настроить запись, у меня
DHCP сервис развернут на домен контроллерах под управлением
Windows Server 2012 R2 Std
On srv-dc1
Win + X – Control Panel – Administrative Tools – DHCP и в пуле
VLAN 10 (Scope [192.168.10.0] VLAN 10) – Scope Options – Configure Options – добавляю запись
066 Boot Server Host Name: отмечаю галочкой
String value: прописываю
IP&DNS Ubuntu 18.04 Server где развернут сервис
tftpd-hpa
Шаг №5:
Теперь перезагружаю телефонный аппарат и настройки применяются, кстати для отладки что аппарат запрашивает можно наблюдать в логах вот таким вот образом:
ekzorchik@srv-ftp:~$ sudo tail -f /var/log/syslog
Jun 18 16:11:35 srv-ftp in.tftpd[26431]: RRQ from 192.168.10.148 filename 805ec07aa38d.boot
Jun 18 16:11:35 srv-ftp in.tftpd[26433]: RRQ from 192.168.10.148 filename y000000000000.boot
Jun 18 16:11:36 srv-ftp in.tftpd[26434]: RRQ from 192.168.10.148 filename y000000000052.cfg
Jun 18 16:11:36 srv-ftp in.tftpd[26435]: RRQ from 192.168.10.148 filename 805ec07aa38d.cfg
Шаг №6:
Проверяю, что теперь на телефонный аппарат могу зайти по IP адрес из VLAN 10, а для авторизации логин
admin, а пароль уже не дефолтный
admin, а тот который я задал в глобальном конфигурационном файле
y000000000052.cfg. Все успешно.
Шаг №7:
А если телефонный аппарат без поддержки PoE: Yealink T21 E2 (5B – 0.6A)
MAC Address: 80:5E:C0:A1:5F:94
Включил его и увидел в логах на ftp, какие файлы он запрашивает
Jun 18 13:24:31 srv-ftp in.tftpd[25985]: RRQ from 192.168.10.6 filename 805ec0a15f94.boot
Jun 18 13:24:31 srv-ftp in.tftpd[25986]: RRQ from 192.168.10.6 filename y000000000000.boot
Jun 18 13:24:31 srv-ftp in.tftpd[25987]: RRQ from 192.168.10.6 filename y000000000052.cfg
Jun 18 13:24:31 srv-ftp in.tftpd[25988]: RRQ from 192.168.10.6 filename 805ec0a15f94.cfg
ekzorchik@srv-ftp:~$ sudo nano /media/pxeboot/805ec0a15f94.cfg
#!version:1.0.0.1
### This file is the exported MAC-all.cfg.
account.1.auth_name = <sip_number>
account.1.codec.pcmu.priority = 1
account.1.codec.pcma.enable = 0
account.1.codec.pcma.priority = 0
account.1.codec.g729.enable = 0
account.1.codec.g729.priority = 0
account.1.codec.g722.enable = 0
account.1.codec.g722.priority = 0
account.1.enable = 1
account.1.label = <number>
account.1.sip_server.1.address = firma.gravitel.ru
account.1.user_name = <login>
account.1.password = <password>
linekey.1.label = Перехват
linekey.1.type = 13
linekey.1.value = *63
sip.listen_port = 5070
### Static Configuration ###
static.network.dhcp_host_name = SIP-T21_<number>
После выключаю/включаю телефон или же выключаю/включаю интерфейс на Mikrotik и настройки применяются к телефонному аппарату. И да они применились. Звонок с данного аппарата и на данным аппарат проходит, слышимость отличная. Ну по крайней мере в рамках работы облачной телефонии от Гравител.
Итого в моем случае мне нужно вести таблицу Excel дабы знать какие телефоны участвуют.
- Mac адрес устройства
- Его внутренний номер в облачной телефонии от Гравител
- Активирована ли настройка
Auto Provisioned
На заметку: А потом у меня случился казус с аппаратом Yealink T21 E2 он перестал видеть настройки
Auto Provisioned, хоть и пишет на телефоне
“Отправка Provisioned запроса”, но настройки не получает. В логах на
/var/log/syslog ничего нет, в аудите фаервола тоже ничего нет. Прямо мистика какая. Подключаю аппарат
Yealink T21P E2 и он сразу же получает настройки по сети. Для подключения использую тот же самый порт на
Mikrotik(е). Зашел на сам аппарат через браузер:
Настройки – Autoprovision – указал
IP (Сервер настроек:
192.168.9.123) и нажал обновить (
Обновить настройки сейчас) и после в логах на
tftp увидел запрашиваемые данные:
Jun 18 17:37:45 srv-ftp in.tftpd[26675]: RRQ from 192.168.10.187 filename 805ec0a15f94.boot
Jun 18 17:37:45 srv-ftp in.tftpd[26677]: RRQ from 192.168.10.187 filename y000000000000.boot
Jun 18 17:37:45 srv-ftp in.tftpd[26678]: RRQ from 192.168.10.187 filename y000000000052.cfg
Jun 18 17:37:45 srv-ftp in.tftpd[26679]: RRQ from 192.168.10.187 filename 805ec0a15f94.cfg
Jun 18 17:37:48 srv-ftp in.tftpd[26680]: RRQ from 192.168.10.187 filename T21P_E2-52.84.14.5.rom
И настройки с конфигурационного файла поднятулись. Видимо что-то с DNS записью
66, а она на
DNS в винде прописана или работой
DNS – это мелочи.
Итого я для себя разобрал, как настраивается Auto Provision для телефонных аппаратов
Yealink. На этом у меня пока все, с уважением автор блога
Олло Александр aka ekzorchik.