Skip to content

Repository files navigation

BROray

BROray — полноценный клиент Xray для современных маршрутизаторов Keenetic и Netcraze. Это не только менеджер конфигураций: BROray устанавливает и обслуживает Xray, принимает подписки и отдельные подключения, выбирает активный сервер, создаёт штатный прокси-интерфейс ProxyN, управляет маршрутами, DNS-over-TLS, обновлениями и диагностикой через локальный авторизованный WebUI.

Статус релиза

BROray 2.2.5 / OPKG 2.2.5 опубликован 31 июля 2026 года и успешно установлен на реальный Keenetic полным пользовательским путём через WebUI. Проверенный переход выполнен с установленной версии 2.1.1-2: BROray → Проверить обновление → Установить обновление.

Версия 2.2.4 отозвана. В 2.2.5 исправлены обязательный порядок очистки и резервного копирования, preflight свободного места и чтение SHA-256 из OPKG src/gz, включая фоновый worker старого WebUI.

Текущий релиз

  • Приложение: BROray 2.2.5
  • Пакет OPKG: 2.2.5
  • Архитектура пакета: aarch64-3.10
  • WebUI: WebUI-2.2.0-r3
  • Xray в пакете: 26.7.11, SHA-256 dd3ba298aa32af9442163ee791d54f562bd89aa860fed1d0c47306fb019c1e64

Релиз собран из проверенной контрольной точки реального Keenetic от 30 июля 2026 года. Публикация OPKG и сайта завершилась со статусом success, кодом 0; публичные Packages, обычная и no-cache загрузки IPK совпали. Полевое обновление до 2.2.5 через WebUI завершилось успешно 31 июля 2026 года.

Основные возможности

  • локальный авторизованный WebUI для компьютера, планшета и телефона;
  • импорт VLESS, VMess, Trojan и Hysteria2;
  • подписки, отдельные серверы, проверка качества и автоматическое переключение;
  • полный жизненный цикл Xray: запуск, остановка, перезапуск, проверка конфигурации, диагностика, обновление и безопасная переустановка;
  • создание и восстановление штатного интерфейса KeeneticOS/NDMS ProxyN;
  • свои BAT-маршруты и девять готовых наборов маршрутов;
  • единый реестр владельцев маршрутов: общие маршруты не удаляются, пока нужны другому набору;
  • единое окно фактического прогресса, безопасная остановка после текущего маршрута и продолжение;
  • DNS-over-TLS с TLS/SNI-проверкой, Яндекс DNS, сохранением внешних DoT/DoH и транзакционным откатом;
  • безопасное обновление BROray: удаление старых автоматических копий и мусора, одна проверенная актуальная копия только в /tmp, точный preflight места и автоматическое восстановление;
  • восстановительная переустановка, технический журнал и безопасная очистка управляемых файлов.

Требования к роутеру

Подробности: docs/REQUIREMENTS.md.

Кратко:

  1. Современный Keenetic или Netcraze с aarch64/arm64 и архитектурой Entware aarch64-3.10.
  2. Установленные компоненты Open Package support и Proxy client.
  3. Установленный Entware/OPKG, доступная для записи точка /opt и SSH-доступ именно к Entware root shell. Системный компонент SSH server не обязателен, если доступ уже предоставляет Entware OpenSSH/Dropbear.
  4. Для страницы DNS-over-TLS — компонент DNS-over-TLS proxy.
  5. Для удобной загрузки файлов рекомендуется компонент SFTP server.
  6. Минимум 41693 КБ свободно в /opt; практический минимум — 50 МБ, рекомендуется 80 МБ.
  7. Минимум 64 МБ свободно в /tmp; рекомендуется 128 МБ.

Стандартное обновление через WebUI

Основной и обязательный пользовательский путь обновления:

BROray → Проверить обновление → Установить обновление

Версия 2.2.5 загружается по точному полю Filename из OPKG-индекса, с запретом HTTP-кэша, уникальным параметром запроса и обязательной проверкой SHA-256. Административные скрипты установки и safe-upgrade остаются аварийными инструментами, но не заменяют проверку пользовательского пути WebUI.

Совместимость старого updater

Переход с 2.1.1-2 полевым испытанием подтверждён, но старый updater потребовал отдельного совместимого ремонта до запуска установки: чтение SHA256sum из локального src/gz и значение BRORAY_OPKG_LISTS_DIR должны быть доступны также скопированному фоновому worker. Этот ремонт не устанавливает релиз; после него установка по-прежнему выполняется только через WebUI.

В пакет 2.2.5 включён preinst-мост для обновления с ветки 2.1.1/2.2.0. Если старый updater уже успел создать копию в /opt/broray/backup, пакет переносит её в /tmp, очищает старые копии и мусор, создаёт после очистки новую актуальную копию в /tmp и только затем разрешает распаковку. Для этого Installed-Size используется как совместимый резерв OPKG, а фактический размер и обязательные 42000 КБ хранятся в отдельных проверяемых полях пакета.

Чистая установка

После публикации релиза на api.brovibe.cloud:

opkg update &&
opkg install ca-bundle ca-certificates curl jq lighttpd lighttpd-mod-cgi openssl-util tar &&
TARGET="/tmp/broray-install-2.2.5.sh" &&
/opt/bin/curl -fL --retry 3 -o "$TARGET.part" \
    "https://api.brovibe.cloud/releases/broray-install-2.2.5.sh?v=$(date +%s)" &&
echo "1b5d74a31c78556abd7341b100e7e961d3884c52b7e6b275724b7ed48e3a0ea2  $TARGET.part" | sha256sum -c - &&
mv "$TARGET.part" "$TARGET" &&
chmod 700 "$TARGET" &&
/opt/bin/ash "$TARGET"

Аварийное административное обновление

Обычные обновления выполняются только через WebUI. Следующий скрипт предназначен для восстановления или диагностики, когда WebUI недоступен.

opkg update &&
opkg install ca-bundle ca-certificates curl jq lighttpd lighttpd-mod-cgi openssl-util tar &&
TARGET="/tmp/broray-safe-upgrade-2.2.5.sh" &&
/opt/bin/curl -fL --retry 3 -o "$TARGET.part" \
    "https://api.brovibe.cloud/releases/broray-safe-upgrade-2.2.5.sh?v=$(date +%s)" &&
echo "dc2f417c40c47d50aa4e9ad29eaf6ea993e5b5e125f91b12a99ac4d75379417d  $TARGET.part" | sha256sum -c - &&
mv "$TARGET.part" "$TARGET" &&
chmod 700 "$TARGET" &&
BRORAY_TMP_ROOT=/tmp /opt/bin/ash "$TARGET"

IPK:

Файл:   broray_2.2.5_aarch64-3.10.ipk
Размер: 13 995 075 байт
SHA-256:
8a2255e2c181a5f88438673c186da4f89870cb54bc01e656d57671d46cae9adc

Документация

WebUI

После установки локальный адрес обычно имеет вид:

http://192.168.1.1:8080/

Фактический LAN-адрес определяется автоматически. WebUI также может публиковаться через штатный KeenDNS HTTP Proxy, если он настроен на роутере.

CLI

broray help
broray status
broray current
broray list
broray test
broray restart
broray xray update-check
broray xray update
broray-servers summary
broray-subscriptions list
broray-routes summary
broray-routes-dot status

Поддержка

Лицензия

Исходный код BROray распространяется по GNU GPL v3. Xray-core поставляется как отдельный сторонний компонент на собственных условиях; его лицензия находится в third_party/xray/ и в установленном каталоге лицензий.

Нумерация версий

  • BROray 2.2.5 — версия приложения, которую видит пользователь и которая используется как публичная версия OPKG.
  • WebUI-2.2.0-r3 — отдельная понятная версия WebUI.
  • Техническая ревизия пакета хранится в поле X-BROray-Package-Revision и не подменяет версию приложения в интерфейсе.
  • Поле «Доступная версия» показывает только 2.2.5; технические сведения OPKG находятся отдельно.

Состояние исходного дерева GitHub

Этот документ публикует сведения о фактически опубликованном и установленном пакете 2.2.5. Перенос точного исходного overlay релиза в дерево root/, синхронизация web-src/web-new и создание тега выполняются отдельным кодовым изменением; до него документация не означает побайтовое совпадение текущего main с публичным IPK.

About

Xray manager for Keenetic/KeeneticOS with WebUI, subscriptions, server selection and native proxy interface integration

Topics

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages