Skip to content

Repository files navigation

BROray

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

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

BROray 3.0.0-r23 опубликован в Stable 30 августа 2026 года.

  • публичный релиз: 3.0.0-r23;
  • пакет OPKG: 3.0.0-r14;
  • технический кандидат: 3.0.0-r23c02;
  • статус: Stable;
  • универсальное обновление с ветки 3.0.0-r1 и новее: обязательный контракт;
  • физическое обновление, переустановка и автоматический откат: PASS;
  • проверка публичного Stable на физическом Keenetic: актуальная версия, без мутации.

Stable создан из физически проверенных байтов r23c02 без пересборки приложения и без изменения updater-v5 при публикации. Универсальный обновитель принимает решение только по установленному и текущему releaseId: более старая версия обновляется, равная ничего не меняет, более новая не понижается. Версия OPKG и история кандидатов в решении не участвуют. В новом выпуске исправлена диагностика принадлежности интерфейса при выборе конкретного подключения Keenetic и добавлена автоматическая проверка качества сохранённых серверов с режимами выкл./30/60/180/360 минут. Новая карточка на странице «Серверы» раскрывается как «Автовыбор», по умолчанию свёрнута и не переключает активный сервер.

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

Компонент Значение
BROray 3.0.0-r23
OPKG 3.0.0-r14
Архитектура aarch64-3.10
WebUI WebUI-3.0.0-r23c02
Обновитель broray-updater/5
Xray при чистой установке 26.7.28
Stable index release.json
SHA-256 Stable index 2b376932d7e7d7a773e1454012a512d382014890f514e3181843fa24689e11f1

Технический идентификатор r23c02 нужен для проверки происхождения байтов. OPKG остаётся 3.0.0-r14 по архитектуре компактного app-slot и не ограничивает обновление приложения.

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

  • Keenetic с архитектурой aarch64 и Entware aarch64-3.10;
  • настроенный Open Package/Entware на одном накопителе, доступный как /opt;
  • компоненты Keenetic proxy, opkg и ndns;
  • root-доступ к Entware shell и исполняемый /opt/bin/ash;
  • доступ к HTTPS и корректное время на роутере;
  • не менее 64 МиБ свободно на /opt;
  • не менее 75 МиБ свободно в /tmp и возможность создать 4096 временных файлов;
  • рекомендуемый запас: от 100 МиБ на /opt и от 128 МиБ в /tmp.

Основной полный физический gate выполнен на Keenetic KN-2710 с KeeneticOS 5.1.4. Дополнительно владелец проекта подтвердил успешные установку и обновление на KN-2710, KN-3812, KN-3811, KN-1812, KN-1811 и KN-1012. Установка не привязана к серийному номеру, SSH-ключу или конкретному экземпляру роутера; совместимость определяется возможностями устройства во время preflight.

Прямое обновление с BROray 2.x не поддерживается: сохраните нужные данные, удалите старую ветку и выполните чистую установку 3.0.0. Подробности: требования и совместимость.

Короткая инструкция

Обновление любой установленной версии 3.0.0

Обычный и рекомендуемый путь:

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

Поддерживается любая исправная установка, начиная с 3.0.0-r1. Алгоритм один для всех выпусков: старая версия обновляется до текущего подписанного Stable, равная версия завершается без изменений, понижение запрещено.

Если WebUI недоступен, выполните в Entware shell от root:

(
set -eu
PATH=/opt/broray/bin:/opt/sbin:/opt/bin:/opt/usr/bin:/opt/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin
export PATH
for cmd in curl jq mktemp sha256sum awk sh rm; do command -v "$cmd" >/dev/null; done
T="$(mktemp /tmp/broray-stable-update.XXXXXX)"
trap 'rm -f "$T"' EXIT
curl -q --proto '=https' --proto-redir '=https' --tlsv1.2 \
  --connect-timeout 15 --max-time 600 --retry 3 -fsSL \
  -H 'Cache-Control: no-cache, no-store' -H 'Accept-Encoding: identity' \
  'https://api.brovibe.cloud/releases/stable/broray/3.0.0-r23/INSTALL-ON-ROUTER.sh' \
  -o "$T"
[ "$(sha256sum "$T" | awk 'NR==1{print $1}')" = \
  '12f9d9edace123c1137d6143210af7c1e7157109859efbc0e75c02fdc53cec21' ]
sh "$T"
)

Установка с нуля

Подключитесь к Entware shell как root, подготовьте HTTPS-клиент:

opkg update &&
opkg install ca-bundle ca-certificates curl jq

Затем выполните:

(
set -eu
PATH=/opt/broray/bin:/opt/sbin:/opt/bin:/opt/usr/bin:/opt/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin
export PATH
for cmd in curl jq mktemp sha256sum awk sh rm; do command -v "$cmd" >/dev/null; done
T="$(mktemp /tmp/broray-stable.XXXXXX)"
trap 'rm -f "$T"' EXIT
curl -q --proto '=https' --proto-redir '=https' --tlsv1.2 \
  --connect-timeout 15 --max-time 600 --retry 3 -fsSL \
  -H 'Cache-Control: no-cache, no-store' -H 'Accept-Encoding: identity' \
  'https://api.brovibe.cloud/releases/stable/broray/3.0.0-r14/COPY-PASTE-ON-ROUTER.txt' \
  -o "$T"
[ "$(sha256sum "$T" | awk 'NR==1{print $1}')" = \
  '06a0f631269f175bc02469856733020a713f1eaed13ac047abd111519cf92967' ]
sh "$T"
)

Этот проверенный bootstrap устанавливает базовый r14c68. После первого входа откройте BROray → Проверить обновление → Установить обновление, чтобы перейти на текущий r23. Установщик проверяет архитектуру, компоненты, свободное место и контрольные суммы. После успешной установки WebUI доступен напрямую по адресу http://<LAN-IP-роутера>:8080/.

Если на роутере настроен KeenDNS, BROray также создаёт отдельный адрес без порта 8080:

http://broray.<KeenDNS-домен-роутера>/

HTTP автоматически перенаправляется на защищённый адрес https://broray.<KeenDNS-домен-роутера>/. Например, для домена роутера myrouter.keenetic.link откройте https://broray.myrouter.keenetic.link/. Доступность этого адреса из локальной или внешней сети определяется режимом KeenDNS и настройками самого роутера.

Альтернативная установка через штатный механизм Keenetic

Для устройств, где удобнее использовать каталог автозапуска Entware, сохранён отдельный подписанный bootstrap базовой установки 3.0.0-r14c68 через штатный механизм /opt/install/*.tgz. После загрузки откройте WebUI и обновитесь до текущего Stable 3.0.0-r23.

  • архив: broray-webcli-bootstrap-3.0.0-r14c68-b1.tgz;
  • SHA-256: 50904456e998dc501ee534efca5eccc47b997f9986bf5aef3f959d468ad66dd7;
  • key ID: aaac0ea3b4a6334c;
  • результат физической проверки: PASS.

Web CLI Keenetic не является Linux shell и не загружает файл. Сначала проверьте внешнюю подпись на компьютере, затем скопируйте архив в /opt/install/ через SFTP или USB и выполните штатную перезагрузку. Полная инструкция и файлы проверки.

Что сохраняется при обновлении

Обновитель проверяет подпись Stable index, SHA-256 и итоговое состояние служб. Серверы, подписки, пользовательские маршруты, DNS-over-TLS, управляемый интерфейс и установленный Xray находятся вне сменяемого app-slot и сохраняются.

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

Если WebUI недоступен, повторите в root-shell команду из раздела «Обновление любой установленной версии 3.0.0». Универсальный Stable-установщик определит состояние автоматически:

  • установлена более старая исправная версия 3.0.0 — выполнит обновление;
  • уже установлен текущий Stable — завершится без изменений;
  • установлена более новая версия — откажется от понижения без изменений.

Это не «принудительная установка»: несовместимое, повреждённое или неоднозначное состояние будет отклонено без обхода защитных проверок. Не используйте opkg upgrade, opkg --force-reinstall или ручную замену /opt/broray/current.

Полная инструкция: установка и обслуживание.

Основные возможности и страницы WebUI

Страница Назначение
Главная Быстрый сводный статус серверов, подписок, маршрутов, Keenetic, Xray и BROray. Читает подготовленные фоновые снимки, поэтому открывается быстро и не запускает тяжёлые проверки сама.
Серверы Импорт VLESS, VMess, Trojan и Hysteria2, ручная и автоматическая проверка качества, подключение, отключение, просмотр и удаление серверов, автоматический выбор резервного сервера.
Подписки Добавление, обновление и удаление подписок, просмотр полученных серверов и безопасное обновление списка без потери активного подключения.
DNS-over-TLS Выбор до восьми DoT-серверов, TLS/SNI-проверка, применение в Keenetic и удаление только тех записей, которыми действительно управляет BROray.
Маршруты — Обзор Сводка готовых и пользовательских наборов, состояние установки, обновления и конфликты владельцев маршрутов.
Маршруты — Свои маршруты Импорт BAT как данных, предварительная проверка, нормализация, удаление дублей, установка, обновление и удаление пользовательских наборов. BAT-файлы не выполняются как команды.
Маршруты — Готовые маршруты Готовые наборы для Telegram, WhatsApp, YouTube, ChatGPT/OpenAI, Instagram, Facebook, Meta, TikTok и Speedtest. Поддерживаются проверка источника, планирование и транзакционное применение.
Keenetic Диагностика управляемого прокси-интерфейса, создание или восстановление после ручного удаления, синхронизация имени BROray - <активный сервер> и проверка связи с Xray.
Xray Версия, состояние процесса и конфигурации, запуск, остановка, перезапуск, диагностика, проверка обновления, обновление и безопасная переустановка с динамической проверкой места.
BROray Версия приложения и компонентов, канал обновлений, проверка обновления, переустановка, восстановление, журнал операции и авторизованное удаление.

Вход в WebUI защищён локальной сессией. Служебные страницы входа и совместимости не выполняют сетевые изменения. Подробный справочник: WebUI.

Что нового в версии 3.0.0

  • в 3.0.0-r23 добавлена отдельная автоматическая проверка качества всех сохранённых серверов: выкл., каждые 30, 60, 180 или 360 минут;
  • проверка выполняется последовательно существующим изолированным HTTPS+Xray/ICMP-механизмом, обновляет метрики и никогда сама не меняет активный сервер;
  • новая полноширинная карточка расположена перед списком сохранённых серверов, раскрывается как «Автовыбор», по умолчанию свёрнута и адаптирована для телефона и компьютера;
  • статус карточки показывает работу службы, последний и следующий запуск, число доступных/недоступных серверов и ошибку последнего цикла;
  • исправлена совместимость status API со штатным jq Entware без ONIGURUMA;
  • диагностика Keenetic сохраняет подтверждённую принадлежность интерфейса при допустимом выборе конкретного подключения;
  • новый компактный updater-v5: атомарная смена app-slot, проверка здоровья и автоматический откат;
  • проверенный r14c68 bootstrap для чистой установки, универсальный update с r1 и явная переустановка через WebUI;
  • сохранение Xray runtime и пользовательского состояния отдельно от приложения;
  • полностью переработанный авторизованный WebUI и согласованные состояния всех страниц;
  • быстрый главный экран на фоновых снимках и ограниченные по времени кэши тяжёлых read-only проверок;
  • корректный разбор VLESS Reality/Vision, VMess, Trojan и Hysteria2;
  • динамическое имя интерфейса Keenetic BROray - <активный сервер> при неизменном внутреннем selector;
  • безопасный жизненный цикл интерфейса: создание, восстановление, проверка владения и синхронизация;
  • независимые DNS-over-TLS и маршруты: применение маршрутов больше не блокируется необязательной DoT-проверкой;
  • ускоренный импорт больших маршрутных наборов и точный откат при ошибке в середине операции;
  • сохранение чужих маршрутов и пользовательских файлов за границей управления BROray;
  • переустановка Xray без прежнего фиксированного требования 102 МиБ временной памяти;
  • воспроизводимая сборка и обязательные физические проверки Stable-кандидата.

Полный список: заметки к релизу 3.0.0 и история изменений.

Поддержка

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

Лицензия

Исходный код BROray распространяется по GNU General Public License v3.0.

Xray-core является отдельным сторонним компонентом и распространяется по Mozilla Public License 2.0; текст и сведения о лицензии находятся в third_party/xray/. Остальные сторонние компоненты сохраняют собственные лицензии.

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

Эта документация описывает опубликованный Stable 3.0.0-r23, полученный из технического кандидата r23c02. Публичные release-артефакты побайтово привязаны к физически проверенному кандидату; исходное дерево GitHub остаётся отдельным контуром и не объявляется тождественным опубликованному архиву без специальной проверяемой синхронизации.

About

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

Topics

Resources

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages