- runtime.uc: add sing_box_repo_url to build_system_info() based on installed variant (extended→shtorm-7, lx→Leadaxe, stable→SagerNet) - main.js: use systemInfo.sing_box_repo_url instead of hardcoded URL - README.md / README.en.md: expanded Watchdog section with all 14 fixes, atomic operations, restart protection, data correctness, Telegram rate limits, firewall improvements, dynamic repo links, commit-level update tracking
15 KiB
⚡ О проекте
Tachyon — это прямой форк проекта Forkop от @ushan0v (ранее известного как Podkop Plus). Проект переименован и развивается как независимое, продвинутое и современное решение для роутеров под управлением OpenWrt (полная поддержка всех версий OpenWrt 23.05, 24.10, 25.x и SNAPSHOT).
Я сохранил лучшие инженерные идеи оригинального проекта Podkop от @itdoginfo и его эволюции в лице Forkop от @ushan0v, существенно расширил архитектурный фундамент и превратил его в универсальный высокопроизводительный комбайн для управления сетевым трафиком, проксирования и обхода блокировок.
Вся бэкенд-логика Tachyon написана на скриптовом языке ucode — нативном, сверхбыстром и экономичном движке OpenWrt, что обеспечивает минимальное потребление оперативной памяти и ресурсов процессора на любых роутерах.
🔥 Ключевые возможности
🛡️ Мультипротокольное проксирование и локальный обход DPI
- sing-box Engine: Полная поддержка современных защищенных протоколов — VLESS, VMess, Shadowsocks, Trojan, WireGuard.
- Локальный обход DPI (Zapret v1 / Zapret v2 / ByeDPI):
- Встроенная интеграция с движками Zapret v1 (
nfqws), Zapret v2 (nfqws2) и ByeDPI (ciadpi) для локального обхода глубокого анализа пакетов (DPI) непосредственно на роутере без использования внешних прокси-серверов.
- Встроенная интеграция с движками Zapret v1 (
- Многомерная селективная маршрутизация:
- По доменам, IP-сетям и портам: Направляйте через прокси или средства обхода только выбранный целевой трафик.
- По клиентским устройствам (MAC / IP): Настройка правил маршрутизации отдельно для конкретных устройств домашней сети (телевизоры, смартфоны, ПК).
- По GeoIP и странам: Фильтрация и маршрутизация по странам назначения (GeoIP / GeoSite) с поддержкой списков исключения/включения.
- Автоматические подписки: Синхронизация и фоновое обновление прокси-серверов по вашим подписочным ссылкам.
🤖 Интерактивный Telegram-бот управления
Полноценный пульт дистанционного управления роутером прямо из мессенджера:
- Управление правилами «на лету»: Просмотр списков обхода и моментальное добавление новых доменов или IP-сетей (включая пакетное добавление).
- Мгновенный контроль секций: Включение и отключение любых маршрутов одной кнопкой.
- Выбор серверов и задержки: Переключение активных прокси-нод с автоматическим замером задержки (ping/RTT).
- Управление устройствами LAN: Просмотр активных DHCP-клиентов и блокировка/разблокировка доступа в интернет по MAC-адресам.
- Диагностика сети: Запуск тестов доступности прямо из чата.
🩺 Системный авторемонт — Tachyon Doctor
Встроенный модуль интеллектуальной диагностики и самовосстановления (tachyon doctor или из WebUI):
- Сканирование состояния всех ключевых служб (
sing-box,zapret,zapret2,byedpi,dnsmasq,watchdog). - Валидация правил файрвола
nftablesи проверка резолвинга DNS черезlocalhost. - Автоматическое исправление: Самостоятельно устраняет сбои (пересоздает цепочки
nftables, перезапускает упавшие сервисы) без полной перезагрузки устройства.
⚡ Надежность, Hot-reload & Watchdog
- Совместимость с OpenWrt 25+: Полная интеграция с новыми релизовыми ветками и новейшими компонентами OpenWrt.
- Мягкая перезагрузка (Hot-Reload): Обновление правил и переключение серверов происходят без обрыва активных соединений (ваши звонки в Discord, Telegram или загрузки файлов не прервутся).
- OOM Watchdog & Оптимизация памяти: Непрерывный мониторинг использования RAM. При нехватке памяти система автоматически регулирует лимиты (
GOMEMLIMIT) и отправляет уведомление в Telegram. - MSS Clamping (MTU Fix): Автоматическое решение проблем с "зависанием" TCP-пакетов и веб-страниц на туннельных интерфейсах.
🛡️ Watchdog — Система защиты и самовосстановления
Watchdog — это сердце стабильности Tachyon. Он непрерывно контролирует состояние всех ключевых сервисов и автоматически устраняет сбои без перезагрузки роутера. В версии 1.2.57 проведена масштабная переработка системы защиты:
Atomic-операции и целостность данных:
- Атомарное восстановление UCI: Все изменения конфигурации записываются через промежуточный бэкап — при сбое во время записи система восстанавливает предыдущее рабочее состояние.
- Валидация бэкапов: Перед восстановлением конфигурации бэкап проверяется на целостность и валидность — повреждённые бэкапы отбрасываются.
- Атомарная запись JSON: Генератор sing-box, кэш подписок, diagnostics и runtime пишут конфиги через
tmp+mv, исключая повреждение при аварийном завершении.
Защита от restart-loop:
- Cooldown прокси: Максимум 3 перезапуска прокси за 10 минут (
safe_proxy_restart()). При превышении лимита перезапуски приостанавливаются и отправляется уведомление. - Lock перезапуска: Мьютекс
PROXY_RESTART_LOCKпредотвращает параллельные перезапуски sing-box из разных потоков. - Cooldown DNS-петли: При зацикливании DNS-запросов автоматическое переключение приостанавливается на 5 минут для стабилизации.
Корректность данных:
- Валидация пустых секций: Проверяется наличие реальных данных в секциях
domain,domain_suffix,ip_cidr— пустые секции не записываются в конфиг. - Правильное чтение конфига: Исправлена ошибка чтения секции
"network"вместоCONFIG_NAME. - Исправление nslookup: Совместимость с BusyBox — корректная работа
nslookup -type=Aи-port=53.
Telegram-бот и уведомления:
- Rate limit уведомлений: Максимум 10 Telegram-уведомлений за 5 минут, предотвращение спама при массовых сбоях.
- Атомарное восстановление конфига Telegram: Конфиг бота восстанавливается через
cpв tmp, затемmv— исключая повреждение при сбое. - Персистентные пути: Бэкапы и staging-файлы хранятся в
/etc/.tachyon/— сохраняются между перезагрузками.
Firewall и nftables:
- Фоновый reload: Перезагрузка файрвола выполняется в фоновом режиме (
reload_firewall &), не блокируя основной поток watchdog. - Проверка таблиц nftables: Операции с nftables выполняются только после подтверждения существования таблицы.
- Дедупликация reload: Исключены повторные вызовы
reload_firewallиз разных модулей.
Wan-monitor и маршрутизация:
- Rate limit уведомлений wan-monitor: cooldown 60 секунд между уведомлениями о проблемах с WAN.
- Объединённое восстановление: Единая функция для восстановления и WAN, и шлюзовых маршрутов — исключает гонки при параллельном восстановлении.
- Очистка orphan-конфигов: Автоматическое удаление временных конфигов, оставшихся от прерванных запусков.
🖥️ Современный Web-интерфейс (LuCI)
- Полная интеграция в стандартную панель управления OpenWrt.
- Наглядный дашборд: мониторинг задержек, управление подписками, списками правил и компонентами в несколько кликов.
- Динамические ссылки на репозитории: Глобус в карточке компонента ведёт на репозиторий установленного варианта (extended →
shtorm-7/sing-box-extended, lx →Leadaxe/sing-box-lx, стабильный →SagerNet/sing-box). - Commit-level отслеживание обновлений: Интерфейс обновлений показывает «Доступно обновление текущего релиза» когда в рамках того же тега (например, 1.2.57) доступен более свежий коммит.
💻 Установка
Для установки Tachyon выполните следующую команду в консоли (SSH) вашего роутера:
sh <(wget -O - https://raw.githubusercontent.com/Dushnilin/tachyon/main/install.sh)
Note
Автоматическая миграция: Конфигурации от Forkop, Podkop Plus и оригинального Podkop полностью совместимы. Скрипт установки автоматически перенесет ваши правила и настройки в
/etc/config/tachyonбез потери данных.
🤝 Оригинальные проекты и благодарности
Tachyon развивается благодаря сообществу и опирается на фундаментальные разработки:
- 🍴 Forkop (ushan0v) — прямой родительский проект (ранее Podkop Plus).
- 🐕 Podkop (itdoginfo) — оригинальный проект, заложивший основу архитектуры.
- 📦 sing-box — универсальный прокси-платформа.
- 🚀 zapret (bol-van) — средства локального обхода DPI (
nfqws/nfqws2). - 🌐 ByeDPI — локальный SOCKS-прокси для десинка пакетов.
💖 Поддержать разработку
Если Tachyon помогает вам и делает работу в сети комфортной, вы можете поддержать проект и автора — на кофе, серверы и вдохновение! ☕ 🧀 🌭
💳 Карты РФ / СБП / Tinkoff Pay:
👉 Поддержать проект на CloudTips
Made with ❤️ for OpenWrt Community