Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
Unifi USW CLI — возможно?, UniFi Network
 
Окей, получил я свой USW и уже сделал пару постов (извиняюсь перед теми, кому этот USW не интересен и кто не хочет, чтобы форумы засоряли вопросами и всяким прочим... По моим наблюдениям, информации про этот коммутатор почти нет — что он умеет и как его настроить. Конечно, то, что я хочу сделать, выходит за рамки обычного использования, но это явно возможно.

Теперь я понимаю, что "EdgeSwitch" — это "правильный" выбор, и уверен, что это первая реакция на этот пост, но я не вижу причин, почему USW нельзя использовать и как минимум иметь CLI для кастомных задач. Управление коммутатором из облака важно для меня на нескольких площадках, для всех портов, кроме первых десяти, и держать два коммутатора кажется излишним для реализации этой цели.

Так что надеюсь на помощь от сообщества и сотрудников в том, как можно улучшить возможности USW, чтобы он стал обязательным для большинства. Прикладываю свои заметки, чтобы начать обсуждение того, что можно сделать прямо сейчас, ожидая обновлений прошивки с новыми функциями. В основном хотелось бы найти способ вручную включать некоторые функции третьего уровня.

1. Хочу использовать CLI для внесения временных изменений (которые будут сбрасываться при перезагрузке коммутатора).
2. Желательно использовать telnet, так как связь не обязательно должна быть защищённой, и с коммутатором будет работать скрипт. Подойдет и HTTP или WebSocket. Не уверен, как именно USW общается с контроллером (или наоборот — контроллер с USW при изменении конфигурации). Думаю, имитировать это несложно.

ПРИМЕЧАНИЕ: Мне удалось без проблем запустить telnet-сервер через telnetd по SSH. Нужно как-то настроить его автозапуск, но для моих целей это не должно быть сложно.

3. Идея в том, чтобы я мог переключить порт на новый VLAN через CLI, но возможно в будущем понадобятся и другие функции управляемого коммутатора...

Я не очень продвинутый пользователь Linux bash, но вот что нашёл на данный момент:

В директории /usr/bin есть процесс "ubntbox" и "ubntconf" — при запуске выводят следующее:

US.v3.3.5# ubntbox  
Usage: ubntbox <tool>  
Supported tools:  
 ubntconf  
 cfgmtd  
 fwupdate.real  
 factorytest  
 swctrl

Похоже, запуск этих инструментов — то, что мне нужно, но, насколько я знаю, справки или описания у них нет, что нормально, если хотя бы базово объяснят, как их использовать для настройки по потребности.

К слову: ubntconf — это ссылка на ubntbox  
-rwxr-xr-x 1 bradynap admin 634.0K Apr 16 10:49 ubntbox  
lrwxrwxrwx 1 bradynap admin 7 Apr 16 10:50 ubntconf -> ubntbox

Если смотреть в процесс ubntbox, видно логи и можно понять, что отправка правильных команд — это то, что мне нужно. Осталось понять, как их правильно форматировать. Ниже небольшой фрагмент из логов, которые появляются при выполнении:

cat /usr/bin/ubntbox  
%s.%s(): port %2d vlan %d [%02x:%02x:%02x:%02x:%02x:%02x] now %lu first_seen %u last_seen %u [%s]
%s.%s(): port %2d vlan %d [%02x:%02x:%02x:%02x:%02x:%02x] now %lu first_seen %u last_seen %u
%s.%s(): ipaddr %s hostname %s [%s]
%s.%s(): ipaddr %s hostname %s  
%s.%s(): port %d: unable to get port type (%d) [%s]
%s.%s(): port %d: unable to get port type (%d)  
%s.%s(): port %d: unable to get port admin state (%d) [%s]
%s.%s(): port %d: unable to get port admin state (%d)  
%s.%s(): port %d: unable to get port link state (%d) [%s]
%s.%s(): port %d: unable to get port link state (%d)  
%s.%s(): port %d: unable to get port link speed (%d) [%s]
%s.%s(): port %d: unable to get port link speed (%d)  
%s.%s(): port %d: unable to get port autoneg config (%d) [%s]
%s.%s(): port %d: unable to get port autoneg config (%d)  
%s.%s(): port %d: unable to get flowctrl mode (%d) [%s]
%s.%s(): port %d: unable to get flowctrl mode (%d)  
%s.%s(): port %d: unable to get port mtu (%d)

Примечание: похоже, что запуск ubntbox <tool> -h даёт простые инструкции по использованию команды. Продолжу в следующем посте.
 
Спасибо. Только команды L2, правильно?
 
Понял. Просто подключись по ssh к своему коммутатору, например: ubnt@192.168.1.2, а затем: US.v3.7.12# telnet localhost 2222. У тебя откроется интерфейс командной строки с поддержкой команд EdgeSwitch. Вот список команд: EdgeSwitch CLI Command Reference.
 
@ww

Где ты смотрел? Думаю, ни один из API-клиентов этого пока не реализовал, но добавить это можно без особых проблем. Как я уже говорил, (почти) всё, что можно сделать через интерфейс контроллера, можно сделать и через API.
 
Обновление? Полный набор команд CLI был бы очень полезен во многих случаях. Прямо сейчас просто хочу проверить SNMP-строку на двух коммутаторах. У нас 27 устройств, и только эти два коммутатора не отвечают на SNMP-запросы. Чувствую себя с завязанными глазами.
 
Привет. Напомню. Я не вижу никаких команд для управления PoE через API в коммутаторах UniFi.
 
Что вы хотите сделать с PoE-портами? Почти всё, что можно выполнить через интерфейс контроллера, можно автоматизировать с помощью API.
 
Апну, очень нужно это для управления портами POE...
 
 
Привет! Есть какие-нибудь новости по поводу CLI на переключателях Unifi?
 
Мы сами на самом деле не цензурируем сообщения. В Lithium — софте, который сейчас используем, есть функция фильтрации спама. Она автоматически отфильтровывает посты. Часто туда попадают CLI, логи и прочее, помечаясь как спам. Обычно мы успеваем отловить нормальные сообщения, но твоё как-то проскочило. Я уже разблокировал два поста, которые были помечены как спам.  

Если не включать эту функцию, то нам приходит по 150-200 и более реального спама в день. Так что, даже если она иногда ошибается и фильтрует нормальные посты, всё равно лучше пусть работает, чем нет.  

К слову, в будущем мы откроем доступ к CLI в одном из обновлений, но подробностей пока нет.  

Всего доброго,  
Майк  

Добавка: Планируется сделать полный быстрый доступ к CLI, как на EdgeSwitch.
Страницы: 1
Читают тему (гостей: 1)