Перейти к содержанию

Рекомендуемые сообщения

Опубликовано (изменено)

Logo.thumb.png.6087388c117e26cd86cc0eaf64c12a62.png

Всем привет!

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

Со временем он немного разросся, появились дополнительные возможности и отдельные модули, поэтому решил выложить его в открытый доступ — возможно, кому-нибудь ещё пригодится.

RouterForge — локальный веб-интерфейс для мониторинга и диагностики роутеров Keenetic / Netcraze с установленным Entware.

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

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

  • нативная работа с KeeneticOS/NDMS: ndmc, RCI, DNS, policy routing, интерфейсы, маршруты и системные данные роутера;
  • мониторинг и диагностика DNS, включая DoT/DoH, SERVFAIL, таймауты, задержки и восстановление;
  • Management v2: процессы, Entware-службы, File Manager, Maintenance и терминалы;
  • Entware Terminal и отдельная Keenetic NDM Console;
  • системный Monitoring: System / Thermal / Storage / Network в одном модуле;
  • Центр приложений: RouterForge, Integrations, Entware/OPKG, Installed и Updates;
  • безопасное обнаружение локальных Web UI без слепого сканирования LAN;
  • модульная установка — Core и нужные возможности ставятся независимо;
  • один пользовательский Web-порт RouterForge — 2233.

Подробнее о возможностя

Спойлер

DNS

  • обычный DNS, DoT и DoH;
  • контроль доступности upstream-серверов, SERVFAIL, таймаутов, задержек и восстановлений;
  • реальные DNS-запросы по устройствам, LAN/Wi-Fi и сетевым интерфейсам;
  • диагностика прохождения DNS через политики маршрутизации;
  • добавление, изменение, удаление, Disable/Enable резолверов;
  • защита динамических DHCP/service DNS от случайной записи;
  • проверяемая цепочка изменения DNS: snapshot -> validation -> mutation -> save -> readback -> rollback при расхождении;
  • история до 10 000 DNS-событий с компактным внутренним хранением.

Management v2

  • защищённые сигналы процессов TERM / HUP / INT / KILL;
  • управление Entware-службами start / stop / restart;
  • File Manager;
  • Maintenance;
  • Entware Terminal;
  • Keenetic NDM Console.

File Manager

  • режимы Commander и Explorer;
  • дерево каталогов и подключённые тома;
  • UTF-8 редактор;
  • создание каталогов;
  • переименование и перемещение;
  • скачивание и удаление файлов;
  • properties и visual chmod;
  • guarded boundary для /opt и /tmp.

Терминалы

  • Entware Terminal: WebSocket/PTTY + фиксированный /opt/bin/sh -il;
  • Keenetic NDM Console: WebSocket/PTTY + фиксированный server-side ndmc;
  • browser выбирает только режим entware/keenetic и не может подменить executable/argv.

Monitoring

Начиная с Stable 0.7.1 отдельные пакеты System / Thermal / Storage / Network объединены в один routerforge-monitoring с единым runtime и UI.

  • System;
  • Thermal;
  • Storage;
  • Network;
  • совместимые API/socket contracts для штатной миграции старых установок.

Центр приложений

  • официальные пакеты RouterForge;
  • Integrations;
  • Entware/OPKG;
  • Installed и Updates;
  • установка, обновление и удаление;
  • dependencies / sizes / installed-version verification;
  • bulk update;
  • безопасное обнаружение локальных Web UI без blind LAN scan.

 

Архитектура и пакеты

Core — единственная пользовательская точка входа RouterForge на порту 2233. DNS, Admin и Monitoring общаются с Core через root-owned Unix sockets.

Описание модулей

Спойлер
  • routerforge-core — Web UI, авторизация, Центр приложений, Registry/release lifecycle и хост Module ABI;
  • routerforge-dns — DNS runtime, UI, управление резолверами и диагностика;
  • routerforge-admin — Management v2, File Manager, Maintenance, Entware Terminal и Keenetic NDM Console;
  • routerforge-monitoring — единый System/Thermal/Storage/Network runtime + UI;
  • routerforge-profiling — локальное профилирование Core, loopback-only на 127.0.0.1:6061.

Требования

  • Keenetic / Netcraze
  • ARM64 / aarch64
  • установленный Entware

RouterForge работает локально непосредственно на роутере. Внешний сервер или облачный сервис для работы не требуется.

Веб-интерфейс по умолчанию использует порт 2233.

Проверенные устройства

На данный момент проект лично протестирован на двух устройствах:

 

  • Keenetic Hopper KN-3811 — ARM64, основная площадка Dev + Beta;
  • Netcraze Ultra KN-1812 — ARM64, Beta + Stable-релиз;
  • Keenetic Giga KN-1010 — MIPSel, частичная физическая проверка, статус experimental.

ARM64 / aarch64-3.10 — основной production target. MIPSel и MIPS остаются experimental. Для MIPS big-endian физической аппаратной проверки пока нет.

CI дополнительно проверяет cross-build, QEMU для MIPS/MIPSel, структуру IPK, release-index, bootstrap scripts и целостность артефактов, но CI не заменяет физическую проверку на реальном роутере.

Установка

Для обычного использования рекомендуется Stable-канал.

Установка выполняется из Entware одной командой:

/opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | sh

После установки веб-интерфейс будет доступен по адресу:

http://IP-РОУТЕРА:2233

Fresh bootstrap устанавливает Core. DNS, Management, Monitoring и остальные возможности при необходимости ставятся через Центр приложений.

Beta и MIPS/MIPSel

Спойлер

Актуальный rolling Beta:

/opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-beta/routerforge-beta-bootstrap.sh | sh

Для MIPS/MIPSel требуется явное подтверждение experimental-режима:

export ROUTERFORGE_MIPS_PREVIEW=1
/opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-beta/routerforge-beta-bootstrap.sh | sh

 

Остальные модули при необходимости можно установить через Marketplace непосредственно из веб-интерфейса.

Обновления

Stable — стабильные версии для обычного использования.

Beta — новые изменения и возможности до их попадания в Stable.

Core и отдельные модули могут обновляться независимо друг от друга. Проверка и установка обновлений выполняется через Marketplace.

Исходный код

https://github.com/Fifth-Ace/routerforge

Исходный код открыт. Лицензия — MIT.

RouterForge является независимым community-проектом и официально не связан с Keenetic или Netcraze.

Обратная связь

Проект пока молодой, поэтому особенно интересна обратная связь от владельцев других ARM64-моделей Keenetic / Netcraze.

Если кто-нибудь решит попробовать, буду рад информации о том:

  • на какой модели запускали;
  • всё ли определилось корректно;
  • какие модули использовали;
  • встретились ли ошибки или особенности;
  • чего, на ваш взгляд, не хватает.

Ошибки, идеи и предложения также приветствуются.

В общем, проект делался в первую очередь для собственных задач. Решил просто поделиться — если кому-нибудь ещё окажется полезен, значит не зря выложил. 🙂

 

Вышел RouterForge 0.7.1 Stable.

Спойлер

Коротко - что изменилось

  • Management v2 стал полноценной пользовательской областью;
  • появился File Manager;
  • добавлены Entware Terminal и Keenetic NDM Console;
  • четыре monitoring package объединены в один routerforge-monitoring;
  • DNS получил дополнительные safety/performance hardening и компактные event rings;
  • Центр приложений стал общей точкой RouterForge / Integrations / Entware;
  • появилось безопасное обнаружение локальных Web UI;
  • Stable pipeline переведён на exact-SHA promotion;
  • ARM64 проверяется на KN-3811 и KN-1812; MIPSel частично проверен на KN-1010.

Полный патчноут 0.7.1

Спойлер

1. Management v2

  • защищённые TERM / HUP / INT / KILL для процессов;
  • start / stop / restart для Entware-служб;
  • live root-session и same-origin boundary;
  • фиксированные server-side операции вместо произвольного shell из browser request.

2. File Manager

  • Commander / Explorer;
  • дерево каталогов и тома;
  • UTF-8 editor;
  • create directory;
  • rename / move / download / delete;
  • properties и visual chmod;
  • canonical boundary для /opt и /tmp;
  • повторная проверка destructive target.

3. Entware Terminal и Keenetic NDM Console

  • WebSocket/PTTY;
  • Entware mode запускает фиксированный /opt/bin/sh -il;
  • Keenetic mode запускает фиксированный server-side ndmc;
  • browser не передаёт произвольный executable/argv;
  • на Ultra KN-1812 проверены оба PTY-режима и переключение между ними.

4. Monitoring: 4 пакета -> 1

Раньше:

routerforge-system
routerforge-thermal
routerforge-storage
routerforge-network

Теперь:

routerforge-monitoring
  • один runtime и один UI;
  • меньше дублирования;
  • проще package lifecycle;
  • сохранены compatibility sockets/API для миграции;
  • на ARM64 проверены cleanup, runtime health, reboot и autostart.

5. DNS

  • resolver mutations: snapshot -> validation -> mutation -> save -> readback -> verified rollback;
  • расширенная observability: clients, LAN/Wi-Fi, domains/QTYPE, upstream/fallback, timeout/error/latency;
  • policy-routing-aware diagnostics;
  • kernel BPF filtering до userspace processing;
  • TTL/last-good caches и failure backoff;
  • компактное внутреннее хранение при логической глубине 10 000 событий.

6. Центр приложений

  • RouterForge / Integrations / Entware / Installed / Updates;
  • package preflight, dependencies и sizes;
  • guarded async jobs;
  • global package-manager lock;
  • timeout/cancel;
  • post-action refresh и installed-version verification;
  • bulk update с Core последним;
  • bounded history завершённых jobs.

7. Generic Runtime Web UI Discovery

Обнаружение строится по цепочке LISTEN socket -> PID/process -> package -> bounded local probe.

  • нет blind LAN scan;
  • есть проверки redirect / X-Frame-Options / CSP / SSRF;
  • platform/infrastructure services фильтруются;
  • known integrations дедуплицируются.

8. Core и безопасность

  • Core остаётся единственным пользовательским LAN listener на :2233;
  • DNS/Admin/Monitoring работают через root-owned Unix sockets;
  • Profiling остаётся loopback-only на 127.0.0.1:6061;
  • read/header/idle/header-size limits;
  • ограничение mutation request bodies;
  • bounded failed-login tracking и job history;
  • пароль RouterForge не сохраняет, session token остаётся in-memory.

9. Производительность

  • Core/Admin/Monitoring polling переведён на последовательное планирование без overlapping requests;
  • frontend reads получили bounded AbortController timeouts;
  • Thermal использует stale-while-revalidate/singleflight;
  • Storage Statfs разделён по platform-specific implementation;
  • дорогие ndmc paths используют TTL/last-good caches и backoff.

10. UI

  • Management, Maintenance, File Properties и Terminal приведены к общей semantic theme;
  • исправлены surfaces, borders, text/muted states, toolbar density и responsive layout;
  • standalone modules визуально приведены к одному стилю.

11. Release pipeline

  • Dev, Beta и Stable разведены по отдельным сценариям;
  • Beta публикуется только explicit FULL RELEASE;
  • добавлен fail-closed guard release_version / component versions / min_core_version;
  • Stable строится на exact Dev SHA;
  • создаётся отдельный routerforge-stable-promotion artifact;
  • в main продвигается тот же exact SHA;
  • публикуются rolling Stable и immutable versioned release.

12. Multiarch

Stable 0.7.1 публикует 5 пакетов × 3 target = 15 IPK:

aarch64-3.10
mips-3.4
mipsel-3.4
  • ARM64 — production target;
  • MIPSel — experimental, частичная физическая проверка KN-1010;
  • MIPS big-endian — experimental без физической проверки.

13. Аппаратные тесты

  • Keenetic Hopper KN-3811 — Dev + Beta;
  • Keenetic Ultra KN-1812 — Beta + Stable;
  • Keenetic Giga KN-1010 — частичная MIPSel validation.

Вышел RouterForge 0.9.1 Stable.

Спойлер

Исправления

  • Исправлен Stable bootstrap для MIPS/MIPSel: отсутствие необязательного температурного датчика больше не переводит установку Core в блокирующее degraded-состояние; capability помечается unsupported.
  • Core install gate отделён от optional module health: блокирующими остаются только реальные platform prerequisites, включая корректный target/root/opt и рабочий ndmc.
  • После установки bootstrap выполняет локальную проверку RouterForge Core /api/health и завершает установку только после подтверждённого runtime health.

Совместимость

  • Это точечный hotfix Stable 0.9.0: версии компонентов не меняются — Core 0.9.0, DNS 0.8.1, Admin 0.8.1, Monitoring 0.8.0, Network Tools 0.9.0, Profiling 0.7.1.
  • P16 Config Vault, P17 completion и P18 DNS Policy Router в Stable 0.9.1 НЕ входят.
  • ARM64 остаётся production; MIPS/MIPSel остаются experimental. KN-2311 Hero 4G+ подтвердил MIPSel Core 0.9.0 install/UI/runtime на физическом железе.

Технические изменения

  • Stable 0.9.1 построен как maintenance backport R85 поверх Stable/main, а не как promotion текущей feature-ветки Dev.
  • Maintenance FULL RELEASE проходит на release/stable-* с exact SHA; main promotion принимает только успешный workflow_dispatch exact SHA и exact promotion artifact.
  • Rolling routerforge-stable и immutable routerforge-v0.9.1 публикуются только после full multiarch validation.

Вышел RouterForge 0.10.0 Stable.

Спойлер

 

Есть вещи, которые в сетевом софте почему-то принято считать нормальными.

Например: чтобы открыть один сайт, человек должен узнать, что такое NFQUEUE, fake, split, disorder, hostlist, SNI, ClientHello, conntrack и ещё десяток терминов, о существовании которых он вчера прекрасно не подозревал. А если после четырёх часов правки конфигов всё заработало — система объявляется «гибкой».

RouterForge 0.10.0 — наша попытка немного прекратить этот цирк.

Это большой Stable-релиз после 0.9.1: новый NFQWS Manager, интеграции DPI Detector и NFQWS Menu, расширенные Network Tools, нормальный менеджер процессов, усиленные Backup/Restore и recovery-механизмы, плюс заметное снижение фоновой нагрузки.

Функций стало больше. Роутер при этом работает меньше. Оказывается, программа не обязана постоянно использовать CPU только ради того, чтобы доказать, что она занята.

Новый модуль: NFQWS Manager

В RouterForge появился седьмой полноценный компонент — NFQWS Manager.

Он работает с существующим nfqws2-keenetic и объединяет в одном интерфейсе конфигурацию и профили, сохранённые конфиги, полный nfqws2.conf, пользовательские списки, библиотеку и базу стратегий, импорт, диагностику, автоподбор, песочницу, историю, логи, резервные копии, runtime health, скрипты и системную информацию.

Shell никуда не исчез. Просто теперь он снова инструмент для случаев, когда он нужен, а не обязательная форма приветствия.

Автонастройка и AutoSelect

Указываете проблемный сайт — RouterForge сначала проверяет, есть ли вообще проблема, которую должен исправлять NFQWS, а затем может собрать кандидатов из production-профилей, встроенного пула и пользовательской библиотеки.

Кандидаты проверяются через изолированные NFQUEUE. Во время работы показывается живой прогресс. Если рабочих вариантов несколько, RouterForge показывает их все и отдельно отмечает рекомендацию.

Рекомендация — это рекомендация. Если программа показывает одну кнопку со словами «мы всё решили за вас», это уже не помощник, а маленький цифровой чиновник.

Нашёл — ещё не значит применил

Успешный запрос не получает автоматического права переписать рабочую конфигурацию.

Перед Apply RouterForge повторно проверяет выбранную стратегию, проверяет ожидаемый SHA active config, строит preview, создаёт backup, применяет изменение и проверяет итоговое состояние. При проблеме предусмотрен rollback.

Новый результат добавляется отдельным профилем. Существующие NFQWS_ARGS_CUSTOM не заменяются.

Очень сложная инженерная идея: если пользователь уже что-то настроил, не надо молча это уничтожать.

Стратегии и импорт

Можно хранить собственные стратегии, проверять их в песочнице и импортировать команды или .bat / .txt.

RouterForge разбирает вход, показывает преобразования и позволяет сохранить пригодные профили без изменения production.

Случайный файл из интернета всё ещё не считается достаточным основанием для немедленных root-мутаций. Возможно, однажды эта мысль доберётся и до остальной индустрии.

ClientHello

Инструменты ClientHello получили законченный рабочий сценарий: образец можно получить с устройства и использовать при диагностике и подборе обхода.

Это полезно там, где приблизительного «браузер вроде делает примерно так» уже недостаточно. Сеть вообще становится приятнее, когда вместо «примерно» появляются измерения.

NFQWS Menu

NFQWS Manager интегрирует rndnaame/nfqws-menu как upstream-источник готовых стратегий, списков и blobs.

Источник показывается явно. RouterForge не переименовывает чужую работу в «нашу уникальную Enterprise AI Cyber Platform» только потому, что так красивее звучит на слайде.

DPI Detector

В NFQWS Manager встроена полноценная интеграция Runnin4ik/dpi-detector.

RouterForge находит установленный dpi-detector, проверяет совместимость binary с текущим rootfs, определяет версию, позволяет открыть оригинальный консольный интерфейс, а для DPI Detector v5 предоставляет графический режим RouterForge для machine-readable tests.

Если уже работает NFQWS, VPN, proxy или другой bypass, RouterForge прямо предупреждает, что результат описывает текущий сетевой путь, а не мистическую «чистую правду провайдера».

Диагностика, которая честно говорит об ограничениях, менее эффектна. Зато значительно полезнее.

Network Tools

Network Tools теперь содержит четыре законченных пользовательских пространства: Сетевой доктор, Маршруты, Потоки и Активные проверки.

Можно смотреть reachability, RTT и loss, выполнять traceroute, разбирать route decision ядра, смотреть conntrack/flows и запускать ограниченные probes без изменения конфигурации.

Последний этап сетевой диагностики — «какого хрена?» — мы пока не победили. Но количество шагов до него уменьшили.

Monitoring

Monitoring получил менеджер процессов с CPU, RSS, PID, PPID, пользователем, состоянием, количеством потоков, именем/командой, поиском и сортировкой.

Теперь при загрузке процессора можно перейти от научного метода «ну, наверное, опять сеть» к более конкретному «вот эта зараза жрёт 73% CPU».

Admin / Control

Admin расширен: Service Inspector, File Manager, Terminal, Backup / Restore, diagnostic snapshots, Support & Recovery и watchdogs.

Внутри всё больше опасных операций используют общие transaction, atomic-write и rollback primitives.

Потому что успешный exit code ещё не означает, что система осталась в состоянии, которое вы вообще собирались получить. Большая часть истории системного администрирования состоит из вещей, которые выглядят очевидными сразу после аварии.

Меньше фоновой нагрузки

В 0.10.0 RouterForge стал значительно меньше опрашивать систему просто потому, что где-то существует таймер.

Monitoring собирает тяжёлые данные по необходимости. DNS экономнее обращается с историей и фоновыми проверками. Уменьшена лишняя работа с temperature/storage/services.

На Keenetic Hopper KN-3811 в проверенном idle-сценарии четыре основных процесса RouterForge вместе использовали в среднем меньше 1% CPU. Core, DNS и Monitoring в сопоставимом замере использовали примерно на 20% меньше памяти.

Это не обещание одинаковых цифр на каждом роутере. Это измеренный результат на конкретном железе — потому что цифры без контекста обычно называются рекламой.

DNS

DNS получил оптимизации CPU/RAM и усиленные mutation/recovery paths.

Также внутри создан большой фундамент будущего DNS policy routing: inventory политик Keenetic, evaluator правил, persistent store, dry-run, transaction/rollback и аппаратно проверенные recovery primitives.

Отдельного пользовательского DNS Policy Router в 0.10.0 нет.

Нет вкладки. Нет публичной кнопки активации. Мы не выдаём фундамент за готовый дом только потому, что бетон уже дорогой.

MIPS / MIPSel

Пакеты выпускаются для aarch64-3.10, mips-3.4 и mipsel-3.4.

Отдельное ручное подтверждение experimental-mode для MIPS/MIPSel убрано. Runtime compatibility checks и предупреждения о малой RAM, одном ядре CPU или отсутствии swap остаются.

Убрали бюрократию. Не тормоза.

Что не обещаем

Раздел GeoSite / GeoIP в NFQWS Manager всё ещё помечен «В разработке».

Пользовательского DNS Policy Router пока нет.

Эти вещи не попадают в список готовых возможностей 0.10.0.

Удивительно, но функция не становится законченной оттого, что её название уже хорошо смотрится в release notes.

Семь компонентов

Компонент Версия
RouterForge Core 0.10.0
RouterForge DNS 0.10.0
RouterForge Control / Admin 0.10.0
RouterForge Monitoring 0.10.0
RouterForge Network Tools 0.10.0
RouterForge NFQWS Manager 0.10.0
RouterForge Profiling 0.10.0

Profiling функционально почти не менялся, но его package version синхронизирован с 0.10.0: публичная Beta уже выпущена как 0.10.0~beta.x, поэтому Beta → Stable должен оставаться нормальным обновлением. Его runtime compatibility остаётся min_core_version=0.7.1.

Можно было бы объяснить пакетному менеджеру, что 0.7.1 на самом деле новее 0.10.0~beta.5.

Но пакетный менеджер умеет считать.

Спасибо upstream-разработчикам

RouterForge 0.10.0 особенно хорошо показывает, что open source не существует в вакууме.

Спасибо разработчикам nfqws/nfqws2-keenetic и nfqws/nfqws-keenetic-web за экосистему NFQWS для Keenetic / Netcraze.

Спасибо Runnin4ik/dpi-detector — DPI Detector теперь имеет полноценную интеграцию внутри NFQWS Manager.

Спасибо rndnaame/nfqws-menu — проект используется как интегрированный upstream-источник стратегий, списков и blobs.

Отдельное спасибо necronicle/z2k и Omn1z/nfqws2-keenetic-strategy-selector: их публичные идеи использовались как design references при работе над DPI-analysis и AutoSelect.

RouterForge реализует собственный selector/runtime; исходный код этих двух reference-проектов не vendored.

Open source примерно так и работает: кто-то решает сложную проблему, кто-то развивает идею дальше, кто-то находит новый способ всё сломать, а потом все вместе читают git history и делают вид, что именно такой план и был с самого начала.

Итог

Предыдущий Stable: 0.9.1.

Release train: 0.10.0-beta.1 → 0.10.0-beta.5.

Новый Stable: 0.10.0.

Главная идея релиза довольно простая: автоматизировать то, что машина делает лучше человека; показывать, что реально произошло; перед опасным изменением делать backup; после изменения проверять результат; если проверка не прошла — уметь вернуться назад; и не выдавать недописанную функцию за революцию только потому, что для неё уже придумали красивое название.

Удивительно, сколько программного обеспечения можно улучшить, если начать с этих пунктов.

Вышел RouterForge 0.11.0 Stable.

Спойлер

У программ есть странная традиция: чем проще задача, тем больше способов превратить её в административную процедуру.

Хотите посмотреть, работает ли защита роутера? Отлично. Вот вам SSH, конфиг, несколько списков, ipset, cron, команды управления и небольшая экскурсия в устройство Linux. Потому что, видимо, кнопка со словами «работает» была бы слишком радикальной идеей.

RouterForge 0.11.0 немного сокращает этот цирк.

Релиз небольшой и честный: один новый модуль и один багфикс. Без списка из сорока пунктов, где двадцать семь означают «мы передвинули строку на три пикселя».

Новый модуль: Antiscan Manager

В RouterForge появился Antiscan Manager — отдельный модуль для тех, кто использует dimon27254/antiscan.

Сам Antiscan остаётся самостоятельным проектом. RouterForge его не присваивает, не переименовывает в «RouterForge Enterprise Threat Defense Ultra», не ставит молча и не решает, что теперь знает вашу сеть лучше вас.

Он просто даёт Antiscan нормальный интерфейс.

Теперь из RouterForge можно посмотреть состояние Antiscan, разобраться, почему адрес оказался заблокирован, работать с настройками и списками, управлять запуском, расписанием и обслуживанием.

То, ради чего раньше приходилось помнить несколько команд и каждый раз думать: «Так, а вот эта сейчас только покажет состояние или ещё пол-роутера перестроит?» — теперь находится в одном месте.

Опасные действия не превращены в весёлую красную кнопку «СДЕЛАТЬ ХОРОШО». Перед изменениями RouterForge проверяет состояние, применяет их контролируемо и проверяет результат.

Потому что root-доступ — это всё-таки не игровой автомат. Не надо дёргать ручку и надеяться на три вишенки.

Исправлен статус Keenetic Entware Extras / Geo Split

Была ещё одна замечательная ситуация.

Geo Split работал. RouterForge говорил, что он не работает.

То есть маршрутизация жива, всё делает своё дело, а панель стоит рядом и уверенно сообщает:

OFF

Очень полезно.

Примерно как лампочка «двигатель отсутствует» в машине, которая в этот момент едет по трассе.

Причина оказалась в том, что Geo Split работает не совсем как обычная постоянно висящая служба. RouterForge смотрел на него слишком прямолинейно и принимал нормальное поведение за остановку.

В 0.11.0 это исправлено.

Теперь RouterForge смотрит на реальные признаки работы Geo Split и не показывает предупреждение «служба не работает», когда она на самом деле работает.

Казалось бы, довольно низкая планка для системы мониторинга.

Но вот мы здесь.

Версии

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

Компонент Версия
RouterForge Core 0.10.1
DNS 0.10.0
Admin / Control 0.10.0
Monitoring 0.10.0
Network Tools 0.10.0
NFQWS Manager 0.10.0
Antiscan Manager 0.11.0
Profiling 0.10.0

Сам релиз RouterForge — 0.11.0, потому что появился новый полноценный модуль.

Core получил 0.10.1, потому что в нём исправлен баг с определением состояния Keenetic Entware Extras / Geo Split.

Остальные компоненты не менялись, поэтому их версии тоже не менялись.

Удивительная концепция: если программу не меняли, можно не делать вид, что её меняли.

Итого

RouterForge 0.11.0 делает две вещи.

Antiscan теперь можно нормально контролировать из RouterForge.

И RouterForge перестал сообщать, что Geo Split умер, пока Geo Split совершенно спокойно работает.

Не самый длинный список изменений.

Зато в нём нет пунктов вроде «улучшена стабильность стабильности» и «оптимизирована оптимизация».

Иногда хороший релиз — это не сто новых функций.

Иногда это одна новая полезная вещь и одна старая хрень, которая наконец перестала бесить.

 

Изменено пользователем FifthAce
Крупное обновление + патчноут
Опубликовано
5 часов назад, Игорь Александрович Кривенко сказал:

под mipsel архитектуру....

В ближайшее время попробую сделать.

2 часа назад, vinatim сказал:

not an http or ftp

Спасибо! Исправил, попробуйте этой командой.

opkg update && opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | sh

 

  • FifthAce изменил название на RouterForge — мониторинг и диагностика Keenetic / Netcraze
Опубликовано
В 04.09.2026 в 09:21, Игорь Александрович Кривенко сказал:

под mipsel архитектуру....

Добавлена ссылка на Бета канал для устройств на архитектуре Mips / Mipsel. На живой железке увы нет возможности проверить т.к. такин не имею, но в теории все должно встать и работать.

В 04.09.2026 в 01:52, FifthAce сказал:

Beta сборка для устройств Mips / Mipsel

/opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-v0.5.0-beta.5/routerforge-beta-bootstrap.sh | sh

 

 

Опубликовано

KN-1010 установка прокатила.

/opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | ROUTERFORGE_MIPS_ALLOW_DEGRADED=1 sh

image.thumb.png.6a4c23ff606dda9667243c4cc160c998.png

Опубликовано
12 минут назад, keshun сказал:

KN-1010 установка прокатила.

/opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | ROUTERFORGE_MIPS_ALLOW_DEGRADED=1 sh

image.thumb.png.6a4c23ff606dda9667243c4cc160c998.png

Спасибо! Мипс и мипсель переведу в релиз.

Опубликовано
В 04.09.2026 в 01:52, FifthAce сказал:

Вышел RouterForge 0.7.1 Stable.

  Показать контент

Коротко - что изменилось

  • Management v2 стал полноценной пользовательской областью;
  • появился File Manager;
  • добавлены Entware Terminal и Keenetic NDM Console;
  • четыре monitoring package объединены в один routerforge-monitoring;
  • DNS получил дополнительные safety/performance hardening и компактные event rings;
  • Центр приложений стал общей точкой RouterForge / Integrations / Entware;
  • появилось безопасное обнаружение локальных Web UI;
  • Stable pipeline переведён на exact-SHA promotion;
  • ARM64 проверяется на KN-3811 и KN-1812; MIPSel частично проверен на KN-1010.

Полный патчноут 0.7.1

  Показать контент

1. Management v2

  • защищённые TERM / HUP / INT / KILL для процессов;
  • start / stop / restart для Entware-служб;
  • live root-session и same-origin boundary;
  • фиксированные server-side операции вместо произвольного shell из browser request.

2. File Manager

  • Commander / Explorer;
  • дерево каталогов и тома;
  • UTF-8 editor;
  • create directory;
  • rename / move / download / delete;
  • properties и visual chmod;
  • canonical boundary для /opt и /tmp;
  • повторная проверка destructive target.

3. Entware Terminal и Keenetic NDM Console

  • WebSocket/PTTY;
  • Entware mode запускает фиксированный /opt/bin/sh -il;
  • Keenetic mode запускает фиксированный server-side ndmc;
  • browser не передаёт произвольный executable/argv;
  • на Ultra KN-1812 проверены оба PTY-режима и переключение между ними.

4. Monitoring: 4 пакета -> 1

Раньше:

routerforge-system
routerforge-thermal
routerforge-storage
routerforge-network

Теперь:

routerforge-monitoring
  • один runtime и один UI;
  • меньше дублирования;
  • проще package lifecycle;
  • сохранены compatibility sockets/API для миграции;
  • на ARM64 проверены cleanup, runtime health, reboot и autostart.

5. DNS

  • resolver mutations: snapshot -> validation -> mutation -> save -> readback -> verified rollback;
  • расширенная observability: clients, LAN/Wi-Fi, domains/QTYPE, upstream/fallback, timeout/error/latency;
  • policy-routing-aware diagnostics;
  • kernel BPF filtering до userspace processing;
  • TTL/last-good caches и failure backoff;
  • компактное внутреннее хранение при логической глубине 10 000 событий.

6. Центр приложений

  • RouterForge / Integrations / Entware / Installed / Updates;
  • package preflight, dependencies и sizes;
  • guarded async jobs;
  • global package-manager lock;
  • timeout/cancel;
  • post-action refresh и installed-version verification;
  • bulk update с Core последним;
  • bounded history завершённых jobs.

7. Generic Runtime Web UI Discovery

Обнаружение строится по цепочке LISTEN socket -> PID/process -> package -> bounded local probe.

  • нет blind LAN scan;
  • есть проверки redirect / X-Frame-Options / CSP / SSRF;
  • platform/infrastructure services фильтруются;
  • known integrations дедуплицируются.

8. Core и безопасность

  • Core остаётся единственным пользовательским LAN listener на :2233;
  • DNS/Admin/Monitoring работают через root-owned Unix sockets;
  • Profiling остаётся loopback-only на 127.0.0.1:6061;
  • read/header/idle/header-size limits;
  • ограничение mutation request bodies;
  • bounded failed-login tracking и job history;
  • пароль RouterForge не сохраняет, session token остаётся in-memory.

9. Производительность

  • Core/Admin/Monitoring polling переведён на последовательное планирование без overlapping requests;
  • frontend reads получили bounded AbortController timeouts;
  • Thermal использует stale-while-revalidate/singleflight;
  • Storage Statfs разделён по platform-specific implementation;
  • дорогие ndmc paths используют TTL/last-good caches и backoff.

10. UI

  • Management, Maintenance, File Properties и Terminal приведены к общей semantic theme;
  • исправлены surfaces, borders, text/muted states, toolbar density и responsive layout;
  • standalone modules визуально приведены к одному стилю.

11. Release pipeline

  • Dev, Beta и Stable разведены по отдельным сценариям;
  • Beta публикуется только explicit FULL RELEASE;
  • добавлен fail-closed guard release_version / component versions / min_core_version;
  • Stable строится на exact Dev SHA;
  • создаётся отдельный routerforge-stable-promotion artifact;
  • в main продвигается тот же exact SHA;
  • публикуются rolling Stable и immutable versioned release.

12. Multiarch

Stable 0.7.1 публикует 5 пакетов × 3 target = 15 IPK:

aarch64-3.10
mips-3.4
mipsel-3.4
  • ARM64 — production target;
  • MIPSel — experimental, частичная физическая проверка KN-1010;
  • MIPS big-endian — experimental без физической проверки.

13. Аппаратные тесты

  • Keenetic Hopper KN-3811 — Dev + Beta;
  • Keenetic Ultra KN-1812 — Beta + Stable;
  • Keenetic Giga KN-1010 — частичная MIPSel validation.

 

Добавил патчноут на крупное обновление.

Опубликовано
В 11.09.2026 в 21:10, FifthAce сказал:

Добавил патчноут на крупное обновление.

Постоянно выдает предупреждение из-за температуры, но для KN-1811 это норма))) Он всегда тепленький)))Screenshot_20260913_233326_Chrome.thumb.jpg.e308391e50cd22f1304d3f5bfcc39b83.jpg

Опубликовано
Спойлер
51 минуту назад, White_Dragon сказал:

Постоянно выдает предупреждение из-за температуры, но для KN-1811 это норма))) Он всегда тепленький)))Screenshot_20260913_233326_Chrome.thumb.jpg.e308391e50cd22f1304d3f5bfcc39b83.jpg

 

В ближайшем патче сделаю ручную регулировку. Но в моем понимании это не хорошо для любого устройства))

Опубликовано
В 14.09.2026 в 00:28, FifthAce сказал:

В ближайшем патче сделаю ручную регулировку.

Спасибо. Появилась настройка.

В 14.09.2026 в 00:28, FifthAce сказал:

Но в моем понимании это не хорошо для любого устройства))

KN-1811 у всех так. Обсуждалось многократно в телеграмме это и на 4пда. У меня их два, температура за 70 у обоих и за кучу лет ничего не случилось 🤷‍♂️ Кстати, а ретрансляторы можно добавить или только те роутеры на которых Entware установлен?

И ещё вопрос:

Screenshot_20260915_231236_Chrome.thumb.jpg.14249330a2082dabc81b06a030ed23cf.jpg

"Есть проблема", а какая? Где можно посмотреть? Или оно просто пишет ошибку и все на этом? Просто это на моем сервере Technitium установлен и вроде бы работает нормально и в нем ошибок нет 🤷‍♂️

Опубликовано
2 часа назад, White_Dragon сказал:

Спасибо. Появилась настройка.

KN-1811 у всех так. Обсуждалось многократно в телеграмме это и на 4пда. У меня их два, температура за 70 у обоих и за кучу лет ничего не случилось 🤷‍♂️ Кстати, а ретрансляторы можно добавить или только те роутеры на которых Entware установлен?

И ещё вопрос:

Screenshot_20260915_231236_Chrome.thumb.jpg.14249330a2082dabc81b06a030ed23cf.jpg

"Есть проблема", а какая? Где можно посмотреть? Или оно просто пишет ошибку и все на этом? Просто это на моем сервере Technitium установлен и вроде бы работает нормально и в нем ошибок нет 🤷‍♂️

Таки должны быть еще 4 вкладки со всем необходимым

image.thumb.png.d21d04157dd8b758e0d9e7507651d5e1.png

Опубликовано
1 час назад, FifthAce сказал:

Таки должны быть еще 4 вкладки со всем необходимым

Screenshot_20260916_134045_Chrome.thumb.jpg.aa876d492ace1d257cf97690e0f1dbde.jpg

Они есть, но куда тыкать чтобы найти эти проблемы, я не понял 🤷‍♂️ В логах также нету никакой информации...

К примеру на этой вкладке, если нажать сведения, то все зависает (ни прокрутить, ни надать какую-либо кнопку), при чем приложении хром работает, можно вбить адрес или сменить вкладку. Помогает только если оьновить страницу и не надимать больше кнопку Сведения. Кнопки настроить и отключить при этом работают.

Опубликовано (изменено)
15 минут назад, White_Dragon сказал:

Screenshot_20260916_134045_Chrome.thumb.jpg.aa876d492ace1d257cf97690e0f1dbde.jpg

Они есть, но куда тыкать чтобы найти эти проблемы, я не понял 🤷‍♂️ В логах также нету никакой информации...

К примеру на этой вкладке, если нажать сведения, то все зависает (ни прокрутить, ни надать какую-либо кнопку), при чем приложении хром работает, можно вбить адрес или сменить вкладку. Помогает только если оьновить страницу и не надимать больше кнопку Сведения. Кнопки настроить и отключить при этом работают.

Да, проскочил косяк с выезжающим меню, сори, сегодня поправлю) А по поводу где посмотреть, все пишется в диагностику, поставил сейчас заведомо плохо работающий у меня днс и он посыпался. Сейчас весь механизм построен только вокруг штатных данных самого кинетика, только в наглядном виде. Все данные берутся из самой ОС.  
 

Спойлер

image.thumb.png.f370771de89f88df18ada872a5e5b118.pngimage.thumb.png.d7b508d658248cd3edb316b6689f3829.pngimage.thumb.png.18f8628ffba47f8537f14c010cc62b17.png

 

Изменено пользователем FifthAce
Опубликовано
9 минут назад, FifthAce сказал:

все пишется в диагностику

Это да. Логи к примеру на quad9.net пишутся. Он постоянно ошибки выдаёт. А вот на мой собственный 192.168.100.100 в логах ничего нет. А на главной странице висит сообщение "Есть проблемы" 🤷‍♂️

Опубликовано
1 минуту назад, White_Dragon сказал:

Это да. Логи к примеру на quad9.net пишутся. Он постоянно ошибки выдаёт. А вот на мой собственный 192.168.100.100 в логах ничего нет. А на главной странице висит сообщение "Есть проблемы" 🤷‍♂️

Посмотрю чуть позже, должно писаться.

Опубликовано
7 часов назад, White_Dragon сказал:

Это да. Логи к примеру на quad9.net пишутся. Он постоянно ошибки выдаёт. А вот на мой собственный 192.168.100.100 в логах ничего нет. А на главной странице висит сообщение "Есть проблемы" 🤷‍♂️

Патч выпустил на стабильную ветку релизов.

Опубликовано

добрый день! Роутер Hero 4G+

не устанавливается

Спойлер

~ # /opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stabl
e-bootstrap.sh | sh
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/entware
Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/keendev
Downloading https://git.zerrolabs.org/Ground-Zerro/release/pages/keenetic/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/ground-zerro
Downloading https://nfqws.github.io/nfqws-keenetic-web/all/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/nfqws-keenetic-web
Downloading https://nfqws.github.io/nfqws2-keenetic/all/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/nfqws2-keenetic
Package curl (8.15.0-2) installed in root is up to date.
Selected target / Выбранная архитектура: mipsel-3.4 (auto)

MIPS/MIPSel support is experimental and has not been validated on physical hardware.
Поддержка MIPS/MIPSel экспериментальная и ещё не проверена на физическом устройстве.
Continue / Продолжить? [y/N]: y
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 16056  100 16056    0     0  10636      0  0:00:01  0:00:01 --:--:--  651k

Detected hardware / Обнаруженное оборудование:
RAM: 248 MiB
CPU cores: 4
Swap: 510 MiB

probe_version=1
probe_mode=read-only
profile=all
kernel=4.9-ndm-5
expected_target=mipsel-3.4
target=mipsel-3.4
target_match=yes
target_supported=yes
root=yes
opt_dir=yes
opt_writable=yes
proc_unix=yes
proc_stat=yes
proc_meminfo=yes
proc_uptime=yes
proc_loadavg=yes
proc_net_dev=yes
proc_net_route=yes
proc_net_packet=yes
proc_mounts=yes
proc_diskstats=yes
sys_class_net=yes
sys_block=yes
loopback=yes
ndmc_read=yes
thermal_sensor=no
module_core=ready
module_admin=ready
module_system=ready
module_network=ready
module_storage=ready
module_thermal=degraded
module_dns=ready
overall=degraded
selected_status=degraded
WARNING: MIPS/MIPSel compatibility is degraded.
ERROR: Set ROUTERFORGE_MIPS_ALLOW_DEGRADED=1 to explicitly accept degraded experimental operation.
~ #
 

 

Опубликовано
4 часа назад, Игорь Александрович Кривенко сказал:

добрый день! Роутер Hero 4G+

не устанавливается

  Скрыть контент

~ # /opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stabl
e-bootstrap.sh | sh
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/entware
Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/keendev
Downloading https://git.zerrolabs.org/Ground-Zerro/release/pages/keenetic/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/ground-zerro
Downloading https://nfqws.github.io/nfqws-keenetic-web/all/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/nfqws-keenetic-web
Downloading https://nfqws.github.io/nfqws2-keenetic/all/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/nfqws2-keenetic
Package curl (8.15.0-2) installed in root is up to date.
Selected target / Выбранная архитектура: mipsel-3.4 (auto)

MIPS/MIPSel support is experimental and has not been validated on physical hardware.
Поддержка MIPS/MIPSel экспериментальная и ещё не проверена на физическом устройстве.
Continue / Продолжить? [y/N]: y
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 16056  100 16056    0     0  10636      0  0:00:01  0:00:01 --:--:--  651k

Detected hardware / Обнаруженное оборудование:
RAM: 248 MiB
CPU cores: 4
Swap: 510 MiB

probe_version=1
probe_mode=read-only
profile=all
kernel=4.9-ndm-5
expected_target=mipsel-3.4
target=mipsel-3.4
target_match=yes
target_supported=yes
root=yes
opt_dir=yes
opt_writable=yes
proc_unix=yes
proc_stat=yes
proc_meminfo=yes
proc_uptime=yes
proc_loadavg=yes
proc_net_dev=yes
proc_net_route=yes
proc_net_packet=yes
proc_mounts=yes
proc_diskstats=yes
sys_class_net=yes
sys_block=yes
loopback=yes
ndmc_read=yes
thermal_sensor=no
module_core=ready
module_admin=ready
module_system=ready
module_network=ready
module_storage=ready
module_thermal=degraded
module_dns=ready
overall=degraded
selected_status=degraded
WARNING: MIPS/MIPSel compatibility is degraded.
ERROR: Set ROUTERFORGE_MIPS_ALLOW_DEGRADED=1 to explicitly accept degraded experimental operation.
~ #
 

 

Добрый день!

Спасибо за лог. Архитектура роутера определилась корректно — mipsel-3.4, основные компоненты RouterForge совместимы и проверки прошли успешно. Установка была остановлена не из-за ошибки Hero 4G+, а из-за защитной проверки экспериментальной поддержки MIPS/MIPSel.В вашем случае единственная причина статуса degraded:

thermal_sensor=no
module_thermal=degraded

То есть RouterForge не обнаружил доступный системный датчик температуры. На работу основных модулей это не влияет.

Для продолжения установки выполните:

/opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | ROUTERFORGE_MIPS_ALLOW_DEGRADED=1 sh

Повторно устанавливать curl или выполнять opkg update не требуется.

После установки, если будет возможность, пришлите полный вывод — Hero 4G+ будет полезно зафиксировать как проверенное физическое устройство для mipsel-3.4.

Также поправлю установщик, отсутствие термодатчика не должно блокировать установку.

Опубликовано
58 минут назад, FifthAce сказал:

Добрый день!

Спасибо за лог. Архитектура роутера определилась корректно — mipsel-3.4, основные компоненты RouterForge совместимы и проверки прошли успешно. Установка была остановлена не из-за ошибки Hero 4G+, а из-за защитной проверки экспериментальной поддержки MIPS/MIPSel.В вашем случае единственная причина статуса degraded:

thermal_sensor=no
module_thermal=degraded

То есть RouterForge не обнаружил доступный системный датчик температуры. На работу основных модулей это не влияет.

Для продолжения установки выполните:

/opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | ROUTERFORGE_MIPS_ALLOW_DEGRADED=1 sh

Повторно устанавливать curl или выполнять opkg update не требуется.

После установки, если будет возможность, пришлите полный вывод — Hero 4G+ будет полезно зафиксировать как проверенное физическое устройство для mipsel-3.4.

Также поправлю установщик, отсутствие термодатчика не должно блокировать установку.

спасибо сейчас всё установилось и работает.

Спойлер

~ # /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | ROUTERFORGE_MIPS_ALLOW_DEGRADED=1 sh
Selected target / Выбранная архитектура: mipsel-3.4 (auto)

MIPS/MIPSel support is experimental and has not been validated on physical hardware.
Поддержка MIPS/MIPSel экспериментальная и ещё не проверена на физическом устройстве.
Continue / Продолжить? [y/N]: y
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 16056  100 16056    0     0  12604      0  0:00:01  0:00:01 --:--:--     0

Detected hardware / Обнаруженное оборудование:
RAM: 248 MiB
CPU cores: 4
Swap: 510 MiB

probe_version=1
probe_mode=read-only
profile=all
kernel=4.9-ndm-5
expected_target=mipsel-3.4
target=mipsel-3.4
target_match=yes
target_supported=yes
root=yes
opt_dir=yes
opt_writable=yes
proc_unix=yes
proc_stat=yes
proc_meminfo=yes
proc_uptime=yes
proc_loadavg=yes
proc_net_dev=yes
proc_net_route=yes
proc_net_packet=yes
proc_mounts=yes
proc_diskstats=yes
sys_class_net=yes
sys_block=yes
loopback=yes
ndmc_read=yes
thermal_sensor=no
module_core=ready
module_admin=ready
module_system=ready
module_network=ready
module_storage=ready
module_thermal=degraded
module_dns=ready
overall=degraded
selected_status=degraded
WARNING: MIPS/MIPSel compatibility is degraded.
Degraded experimental operation explicitly accepted.
RouterForge stable bootstrap
routerforge-core 0.9.0
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 4537k  100 4537k    0     0  1515k      0  0:00:02  0:00:02 --:--:-- 3081k
Installing routerforge-core...
Installing routerforge-core (0.9.0) to root...
Configuring routerforge-core.

RouterForge is ready.
Web UI: http://<router-ip>:2233
Core service: /opt/etc/init.d/S90routerforge
Log: /opt/var/log/routerforge.log
Install optional capabilities from RouterForge App Center.
~ #
 

 

Опубликовано
~ # /opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | sh
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/entware
Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/keendev
Package curl (8.15.0-2) installed in root is up to date.
Selected target / Выбранная архитектура: mipsel-3.4 (auto)

MIPS/MIPSel support is experimental and has not been validated on physical hardware.
Поддержка MIPS/MIPSel экспериментальная и ещё не проверена на физическом устройстве.
Continue / Продолжить? [y/N]: y
ERROR: MIPS/MIPSel experimental installation was not confirmed.

Установка не пошла. Установил вручную

Опубликовано
В 23.09.2026 в 10:27, vai73 сказал:
~ # /opt/bin/opkg update && /opt/bin/opkg install curl && /opt/bin/curl -fsSL https://github.com/Fifth-Ace/routerforge/releases/download/routerforge-stable/routerforge-stable-bootstrap.sh | sh
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/entware
Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/keendev
Package curl (8.15.0-2) installed in root is up to date.
Selected target / Выбранная архитектура: mipsel-3.4 (auto)

MIPS/MIPSel support is experimental and has not been validated on physical hardware.
Поддержка MIPS/MIPSel экспериментальная и ещё не проверена на физическом устройстве.
Continue / Продолжить? [y/N]: y
ERROR: MIPS/MIPSel experimental installation was not confirmed.

Установка не пошла. Установил вручную

Спасибо! Исправил в актуальном релизе.

Опубликовано
В 04.09.2026 в 01:52, FifthAce сказал:

Вышел RouterForge 0.9.1 Stable.

  Показать контент

Исправления

  • Исправлен Stable bootstrap для MIPS/MIPSel: отсутствие необязательного температурного датчика больше не переводит установку Core в блокирующее degraded-состояние; capability помечается unsupported.
  • Core install gate отделён от optional module health: блокирующими остаются только реальные platform prerequisites, включая корректный target/root/opt и рабочий ndmc.
  • После установки bootstrap выполняет локальную проверку RouterForge Core /api/health и завершает установку только после подтверждённого runtime health.

Совместимость

  • Это точечный hotfix Stable 0.9.0: версии компонентов не меняются — Core 0.9.0, DNS 0.8.1, Admin 0.8.1, Monitoring 0.8.0, Network Tools 0.9.0, Profiling 0.7.1.
  • P16 Config Vault, P17 completion и P18 DNS Policy Router в Stable 0.9.1 НЕ входят.
  • ARM64 остаётся production; MIPS/MIPSel остаются experimental. KN-2311 Hero 4G+ подтвердил MIPSel Core 0.9.0 install/UI/runtime на физическом железе.

Технические изменения

  • Stable 0.9.1 построен как maintenance backport R85 поверх Stable/main, а не как promotion текущей feature-ветки Dev.
  • Maintenance FULL RELEASE проходит на release/stable-* с exact SHA; main promotion принимает только успешный workflow_dispatch exact SHA и exact promotion artifact.
  • Rolling routerforge-stable и immutable routerforge-v0.9.1 публикуются только после full multiarch validation.

Вышел RouterForge 0.10.0 Stable.

  Показать контент

 

Есть вещи, которые в сетевом софте почему-то принято считать нормальными.

Например: чтобы открыть один сайт, человек должен узнать, что такое NFQUEUE, fake, split, disorder, hostlist, SNI, ClientHello, conntrack и ещё десяток терминов, о существовании которых он вчера прекрасно не подозревал. А если после четырёх часов правки конфигов всё заработало — система объявляется «гибкой».

RouterForge 0.10.0 — наша попытка немного прекратить этот цирк.

Это большой Stable-релиз после 0.9.1: новый NFQWS Manager, интеграции DPI Detector и NFQWS Menu, расширенные Network Tools, нормальный менеджер процессов, усиленные Backup/Restore и recovery-механизмы, плюс заметное снижение фоновой нагрузки.

Функций стало больше. Роутер при этом работает меньше. Оказывается, программа не обязана постоянно использовать CPU только ради того, чтобы доказать, что она занята.

Новый модуль: NFQWS Manager

В RouterForge появился седьмой полноценный компонент — NFQWS Manager.

Он работает с существующим nfqws2-keenetic и объединяет в одном интерфейсе конфигурацию и профили, сохранённые конфиги, полный nfqws2.conf, пользовательские списки, библиотеку и базу стратегий, импорт, диагностику, автоподбор, песочницу, историю, логи, резервные копии, runtime health, скрипты и системную информацию.

Shell никуда не исчез. Просто теперь он снова инструмент для случаев, когда он нужен, а не обязательная форма приветствия.

Автонастройка и AutoSelect

Указываете проблемный сайт — RouterForge сначала проверяет, есть ли вообще проблема, которую должен исправлять NFQWS, а затем может собрать кандидатов из production-профилей, встроенного пула и пользовательской библиотеки.

Кандидаты проверяются через изолированные NFQUEUE. Во время работы показывается живой прогресс. Если рабочих вариантов несколько, RouterForge показывает их все и отдельно отмечает рекомендацию.

Рекомендация — это рекомендация. Если программа показывает одну кнопку со словами «мы всё решили за вас», это уже не помощник, а маленький цифровой чиновник.

Нашёл — ещё не значит применил

Успешный запрос не получает автоматического права переписать рабочую конфигурацию.

Перед Apply RouterForge повторно проверяет выбранную стратегию, проверяет ожидаемый SHA active config, строит preview, создаёт backup, применяет изменение и проверяет итоговое состояние. При проблеме предусмотрен rollback.

Новый результат добавляется отдельным профилем. Существующие NFQWS_ARGS_CUSTOM не заменяются.

Очень сложная инженерная идея: если пользователь уже что-то настроил, не надо молча это уничтожать.

Стратегии и импорт

Можно хранить собственные стратегии, проверять их в песочнице и импортировать команды или .bat / .txt.

RouterForge разбирает вход, показывает преобразования и позволяет сохранить пригодные профили без изменения production.

Случайный файл из интернета всё ещё не считается достаточным основанием для немедленных root-мутаций. Возможно, однажды эта мысль доберётся и до остальной индустрии.

ClientHello

Инструменты ClientHello получили законченный рабочий сценарий: образец можно получить с устройства и использовать при диагностике и подборе обхода.

Это полезно там, где приблизительного «браузер вроде делает примерно так» уже недостаточно. Сеть вообще становится приятнее, когда вместо «примерно» появляются измерения.

NFQWS Menu

NFQWS Manager интегрирует rndnaame/nfqws-menu как upstream-источник готовых стратегий, списков и blobs.

Источник показывается явно. RouterForge не переименовывает чужую работу в «нашу уникальную Enterprise AI Cyber Platform» только потому, что так красивее звучит на слайде.

DPI Detector

В NFQWS Manager встроена полноценная интеграция Runnin4ik/dpi-detector.

RouterForge находит установленный dpi-detector, проверяет совместимость binary с текущим rootfs, определяет версию, позволяет открыть оригинальный консольный интерфейс, а для DPI Detector v5 предоставляет графический режим RouterForge для machine-readable tests.

Если уже работает NFQWS, VPN, proxy или другой bypass, RouterForge прямо предупреждает, что результат описывает текущий сетевой путь, а не мистическую «чистую правду провайдера».

Диагностика, которая честно говорит об ограничениях, менее эффектна. Зато значительно полезнее.

Network Tools

Network Tools теперь содержит четыре законченных пользовательских пространства: Сетевой доктор, Маршруты, Потоки и Активные проверки.

Можно смотреть reachability, RTT и loss, выполнять traceroute, разбирать route decision ядра, смотреть conntrack/flows и запускать ограниченные probes без изменения конфигурации.

Последний этап сетевой диагностики — «какого хрена?» — мы пока не победили. Но количество шагов до него уменьшили.

Monitoring

Monitoring получил менеджер процессов с CPU, RSS, PID, PPID, пользователем, состоянием, количеством потоков, именем/командой, поиском и сортировкой.

Теперь при загрузке процессора можно перейти от научного метода «ну, наверное, опять сеть» к более конкретному «вот эта зараза жрёт 73% CPU».

Admin / Control

Admin расширен: Service Inspector, File Manager, Terminal, Backup / Restore, diagnostic snapshots, Support & Recovery и watchdogs.

Внутри всё больше опасных операций используют общие transaction, atomic-write и rollback primitives.

Потому что успешный exit code ещё не означает, что система осталась в состоянии, которое вы вообще собирались получить. Большая часть истории системного администрирования состоит из вещей, которые выглядят очевидными сразу после аварии.

Меньше фоновой нагрузки

В 0.10.0 RouterForge стал значительно меньше опрашивать систему просто потому, что где-то существует таймер.

Monitoring собирает тяжёлые данные по необходимости. DNS экономнее обращается с историей и фоновыми проверками. Уменьшена лишняя работа с temperature/storage/services.

На Keenetic Hopper KN-3811 в проверенном idle-сценарии четыре основных процесса RouterForge вместе использовали в среднем меньше 1% CPU. Core, DNS и Monitoring в сопоставимом замере использовали примерно на 20% меньше памяти.

Это не обещание одинаковых цифр на каждом роутере. Это измеренный результат на конкретном железе — потому что цифры без контекста обычно называются рекламой.

DNS

DNS получил оптимизации CPU/RAM и усиленные mutation/recovery paths.

Также внутри создан большой фундамент будущего DNS policy routing: inventory политик Keenetic, evaluator правил, persistent store, dry-run, transaction/rollback и аппаратно проверенные recovery primitives.

Отдельного пользовательского DNS Policy Router в 0.10.0 нет.

Нет вкладки. Нет публичной кнопки активации. Мы не выдаём фундамент за готовый дом только потому, что бетон уже дорогой.

MIPS / MIPSel

Пакеты выпускаются для aarch64-3.10, mips-3.4 и mipsel-3.4.

Отдельное ручное подтверждение experimental-mode для MIPS/MIPSel убрано. Runtime compatibility checks и предупреждения о малой RAM, одном ядре CPU или отсутствии swap остаются.

Убрали бюрократию. Не тормоза.

Что не обещаем

Раздел GeoSite / GeoIP в NFQWS Manager всё ещё помечен «В разработке».

Пользовательского DNS Policy Router пока нет.

Эти вещи не попадают в список готовых возможностей 0.10.0.

Удивительно, но функция не становится законченной оттого, что её название уже хорошо смотрится в release notes.

Семь компонентов

Компонент Версия
RouterForge Core 0.10.0
RouterForge DNS 0.10.0
RouterForge Control / Admin 0.10.0
RouterForge Monitoring 0.10.0
RouterForge Network Tools 0.10.0
RouterForge NFQWS Manager 0.10.0
RouterForge Profiling 0.10.0

Profiling функционально почти не менялся, но его package version синхронизирован с 0.10.0: публичная Beta уже выпущена как 0.10.0~beta.x, поэтому Beta → Stable должен оставаться нормальным обновлением. Его runtime compatibility остаётся min_core_version=0.7.1.

Можно было бы объяснить пакетному менеджеру, что 0.7.1 на самом деле новее 0.10.0~beta.5.

Но пакетный менеджер умеет считать.

Спасибо upstream-разработчикам

RouterForge 0.10.0 особенно хорошо показывает, что open source не существует в вакууме.

Спасибо разработчикам nfqws/nfqws2-keenetic и nfqws/nfqws-keenetic-web за экосистему NFQWS для Keenetic / Netcraze.

Спасибо Runnin4ik/dpi-detector — DPI Detector теперь имеет полноценную интеграцию внутри NFQWS Manager.

Спасибо rndnaame/nfqws-menu — проект используется как интегрированный upstream-источник стратегий, списков и blobs.

Отдельное спасибо necronicle/z2k и Omn1z/nfqws2-keenetic-strategy-selector: их публичные идеи использовались как design references при работе над DPI-analysis и AutoSelect.

RouterForge реализует собственный selector/runtime; исходный код этих двух reference-проектов не vendored.

Open source примерно так и работает: кто-то решает сложную проблему, кто-то развивает идею дальше, кто-то находит новый способ всё сломать, а потом все вместе читают git history и делают вид, что именно такой план и был с самого начала.

Итог

Предыдущий Stable: 0.9.1.

Release train: 0.10.0-beta.1 → 0.10.0-beta.5.

Новый Stable: 0.10.0.

Главная идея релиза довольно простая: автоматизировать то, что машина делает лучше человека; показывать, что реально произошло; перед опасным изменением делать backup; после изменения проверять результат; если проверка не прошла — уметь вернуться назад; и не выдавать недописанную функцию за революцию только потому, что для неё уже придумали красивое название.

Удивительно, сколько программного обеспечения можно улучшить, если начать с этих пунктов.

Вышел RouterForge 0.11.0 Stable.

  Показать контент

У программ есть странная традиция: чем проще задача, тем больше способов превратить её в административную процедуру.

Хотите посмотреть, работает ли защита роутера? Отлично. Вот вам SSH, конфиг, несколько списков, ipset, cron, команды управления и небольшая экскурсия в устройство Linux. Потому что, видимо, кнопка со словами «работает» была бы слишком радикальной идеей.

RouterForge 0.11.0 немного сокращает этот цирк.

Релиз небольшой и честный: один новый модуль и один багфикс. Без списка из сорока пунктов, где двадцать семь означают «мы передвинули строку на три пикселя».

Новый модуль: Antiscan Manager

В RouterForge появился Antiscan Manager — отдельный модуль для тех, кто использует dimon27254/antiscan.

Сам Antiscan остаётся самостоятельным проектом. RouterForge его не присваивает, не переименовывает в «RouterForge Enterprise Threat Defense Ultra», не ставит молча и не решает, что теперь знает вашу сеть лучше вас.

Он просто даёт Antiscan нормальный интерфейс.

Теперь из RouterForge можно посмотреть состояние Antiscan, разобраться, почему адрес оказался заблокирован, работать с настройками и списками, управлять запуском, расписанием и обслуживанием.

То, ради чего раньше приходилось помнить несколько команд и каждый раз думать: «Так, а вот эта сейчас только покажет состояние или ещё пол-роутера перестроит?» — теперь находится в одном месте.

Опасные действия не превращены в весёлую красную кнопку «СДЕЛАТЬ ХОРОШО». Перед изменениями RouterForge проверяет состояние, применяет их контролируемо и проверяет результат.

Потому что root-доступ — это всё-таки не игровой автомат. Не надо дёргать ручку и надеяться на три вишенки.

Исправлен статус Keenetic Entware Extras / Geo Split

Была ещё одна замечательная ситуация.

Geo Split работал. RouterForge говорил, что он не работает.

То есть маршрутизация жива, всё делает своё дело, а панель стоит рядом и уверенно сообщает:

OFF

Очень полезно.

Примерно как лампочка «двигатель отсутствует» в машине, которая в этот момент едет по трассе.

Причина оказалась в том, что Geo Split работает не совсем как обычная постоянно висящая служба. RouterForge смотрел на него слишком прямолинейно и принимал нормальное поведение за остановку.

В 0.11.0 это исправлено.

Теперь RouterForge смотрит на реальные признаки работы Geo Split и не показывает предупреждение «служба не работает», когда она на самом деле работает.

Казалось бы, довольно низкая планка для системы мониторинга.

Но вот мы здесь.

Версии

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

Компонент Версия
RouterForge Core 0.10.1
DNS 0.10.0
Admin / Control 0.10.0
Monitoring 0.10.0
Network Tools 0.10.0
NFQWS Manager 0.10.0
Antiscan Manager 0.11.0
Profiling 0.10.0

Сам релиз RouterForge — 0.11.0, потому что появился новый полноценный модуль.

Core получил 0.10.1, потому что в нём исправлен баг с определением состояния Keenetic Entware Extras / Geo Split.

Остальные компоненты не менялись, поэтому их версии тоже не менялись.

Удивительная концепция: если программу не меняли, можно не делать вид, что её меняли.

Итого

RouterForge 0.11.0 делает две вещи.

Antiscan теперь можно нормально контролировать из RouterForge.

И RouterForge перестал сообщать, что Geo Split умер, пока Geo Split совершенно спокойно работает.

Не самый длинный список изменений.

Зато в нём нет пунктов вроде «улучшена стабильность стабильности» и «оптимизирована оптимизация».

Иногда хороший релиз — это не сто новых функций.

Иногда это одна новая полезная вещь и одна старая хрень, которая наконец перестала бесить.

 

Добавлены патчноуты.

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.