Бывало такое, когда во время процесса обновления прошивки Rocket M, NanoBeam, NanoStation и других Ubiquiti устройств пропадало питание, либо случались какие-то другие проблемы после которых на устройство нельзя было зайти через web-интерфейс и оно не работало.
Опишем по пунктам как можно восстановить прошивку:
1. Скачать прошивку с официального сайта ubnt.com которой необходимо прошить устройство, или с других ресурсов.
2. Запустить TFTP сервер. Опишем данный процес:
Запуск TFTP сервера на Windows
https://tftpd32.jounin.net/tftpd32_download.html
Установка и настройка TFTP сервера в Ubuntu
TFTP (Trivial File Transfer Protocol — простой протокол передачи файлов) используется главным образом для первоначальной загрузки бездисковых рабочих станций. TFTP, в отличие от FTP, не содержит возможностей аутентификации (хотя возможна фильтрация по IP-адресу) и основан на транспортном протоколе UDP.
atftpd — сервер
atftp — клиент
Устанавливаем:
sudo apt-get install atftpd atftp
Сервер использует порт: 69/udp
Стандартно создается директория /srv/tftp если ее нету, создаем:
Это можно сделать в любом редакторе, например используя nano:
(в редакторе комбинация клавиш Ctrl+O используется для сохранения изменений, а Ctrl+X для выхода).
Для применения изменений и запуска atftpd выполним команду:
sudo /etc/init.d/atftpd restart
Все, TFTP сервер должен работать, принимать и отдавать файлы из директории /srv/tftp.
Пример правила iptables для TFTP (где 192.168.1.0/24 подсеть с которой разрешено подключатся к TFTP серверу):
3. Обязательно назначить компьютеру именно этот IP-адрес 192.168.1.254 и маску подсети 255.255.255.0.
4. Выключить устройство в котором необходимо восстановить прошивку, при выключенном устройстве нажать кнопку RESET и держа ее включить питание устройству, продолжать держать RESET 8-10 секунд, после чего опустить. Этими манипуляциями мы активируем режим восстановления и светодиодные индикаторы начнут поочередно мигать. IP-адресс устройства 192.168.1.20 должен начать пинговаться, если не пингуется, то восстановить увы не получится. Для проверки пинга выполняется команда в командной строке:
ping 192.168.1.20
5. Теперь скачанный ранее файл прошивки положим в директорию TFTP сервера и отправим его. Из windows это можно выполнить командой:
tftp -i 192.168.1.20 put XM-v5.5.4.build16501.bin
Из Ubuntu это делается командами (возможно придется файл прошивки положить в домашнюю директорию пользователя):
Как включить Compliance Test?
Понадобилось как-то выставить по лицензии частоту на AirMAX PowerBeam M5 с прошивкой 5.6.2, но увы её нету в списке!
До этого мастера понижали прошивку до 5.5.6 и появлялась возможность выбрать страну Compliance Test, в которой доступны все частоты, но на на этих антеннах что пришли AirMAX PowerBeam M5 с прошивкой 5.6.2 после понижения прошивки настройки перестали сохранятся, сброс выполнить нельзя, повысить прошивку на последнюю тоже стало нельзя!
Самым простым решением проблемы будет подключение к устройстсву через SSH и ввод команды которая добавит возможность выбора Compliance Test:
enable_ct
Но этот способ работает не на всех устройствах, на Rocket M2, Rocket M5 например работает, а на PowerBeam 5ac не работает, в этом случае есть скрипт ниже.
Второе решение проблемы, если вдруг точка PowerBeam прошита уже на 5.5.6 и нельзя обновится, то закачиваем самую новую прошивку через TFTP, на момент написания статьи использовалb 5.6.3. Как это делать описано выше.
После завершения процесса прошивки через web-интерфейс не заходим (иначе придется сбрасывать настройки и делать снова), а подключаемся через SSH используя например программу PuTTY и введем указанную выше команду enable_ct, либо создадим скрипт, сделаем его исполняемым, сохраним настройки и перезагрузим устройство выполнив указанные ниже команды по очереди:
echo "echo '<option value=\"511\">Compliance Test</option>' >> /etc/ccodes.inc" > /etc/persistent/rc.poststart
chmod +x /etc/persistent/rc.poststart
save
reboot
После перезагрузки устройства заходим в web-интерфейс, выбираем страну Compliance Test и уже видим что доступные все частоты.
Если сбросить настройки, скрипт придется добавлять снова.
На PowerBeam 5AC например нет Compliance Test, но получить доступ к всем частотам можно скачав конфигурационный файл, изменив в нём указанные ниже строки и закачав обратно в устройство, после этого в поле страна будет отображена Argentina:
radio.1.countrycode=5000
radio.countrycode=5000
