Начните бесплатный 3-дневный пробный период
Зарегистрируйтесь и попробуйте все премиум-функции бесплатно.
*Только для новых пользователей. Один пробный период на пользователя.


HomeProxy OpenWrt настройка добавляет в LuCI интерфейс, который генерирует клиентскую конфигурацию sing-box и направляет в неё трафик роутера. Установите пакет из штатного фида вашей прошивки, пропустите один тестовый клиент через один узел, которым вам разрешено пользоваться, и убедитесь, что остановка службы возвращает сеть к прямой маршрутизации. Процедура составлена по официальным источникам, перечисленным ниже; полный сквозной тест не выполнялся.
Ключевые выводы
- HomeProxy — это приложение LuCI, а прокси-работу под ним выполняет sing-box.
- У проекта нет релизов с тегами, поэтому фиксируйте версии прошивки и пакетов, которые ставите.
- Начинайте с одного клиента из списка: изменения DNS затрагивают всех, кто получает DNS от роутера.
- Остановленная служба должна убрать свои правила маршрутизации, цепочки межсетевого экрана и настройки dnsmasq.
Проект описывает HomeProxy как современную прокси-платформу ImmortalWrt для устройств ARM64 и AMD64 на базе sing-box. README в репозитории — короткий список задач, а не руководство по установке, и релизов с тегами нет. Поэтому здесь используется код коммита 98a6ad9 и описываются только параметры, которые в нём есть.[1]
Определение пакета объявляет четыре зависимости: sing-box, firewall4, kmod-nft-tproxy и ucode-mod-digest. В нём же перечислены файлы, которые при обновлении сохраняются как конфигурация, в том числе /etc/config/homeproxy и списки доменов для прямого и проксируемого трафика.[2]
Базовая версия — ImmortalWrt 24.10.6, прошивка на основе OpenWrt: её фид LuCI содержит luci-app-homeproxy версии 26.236.50592~9b8ee64, а фид packages — sing-box 1.12.25-r1.[3][4] В штатной OpenWrt нет официального пакета HomeProxy, поэтому установка сборок с неизвестных зеркал здесь не рассматривается.
Прежде чем начать, решите, нужен ли вам шлюз на роутере вообще. Руководство по ответственности при самостоятельном размещении объясняет, что вы берёте на себя, обслуживая такой путь, а до того как отдавать под это роутер, полезно сравнить собственный сервер с управляемым VPN-сервисом. Если HomeProxy не подходит, другое семейство плагинов описано в пошаговой установке OpenClash с планом восстановления, а обычный туннель — в инструкции по клиенту WireGuard на OpenWrt.
Когда служба запускается с выбранным основным узлом, init-скрипт генерирует /var/run/homeproxy/sing-box-c.json и прогоняет по нему sing-box check. Если проверка не проходит, запуск прерывается, а причина записывается в /var/run/homeproxy/homeproxy.log.[5]
Тот же скрипт затрагивает три уровня роутера. Он создаёт каталог конфигурации dnsmasq и перезапускает dnsmasq, добавляет правила policy routing (по умолчанию таблица 100 и метка 101 для TProxy) и перезагружает firewall4 с цепочками HomeProxy. Кроме того, служба перезагружается, когда поднимается интерфейс WAN.[5]
| Уровень | Что включается со службой | Что удаляет процедура остановки |
|---|---|---|
| Прокси-процесс | Клиент sing-box из сгенерированного JSON | Сгенерированный JSON и журнал клиента |
| DNS | dnsmasq пересылает запросы на 127.0.0.1#5333 в режиме Global | Каталог dnsmasq от HomeProxy, затем перезапуск dnsmasq |
| Маршрутизация | ip rule и локальные маршруты в таблице 100 | Те же правила и маршруты для IPv4 и IPv6 |
| Межсетевой экран | Цепочки и наборы homeproxy_* в inet fw4 | Очищенные и удалённые цепочки и наборы |
Строка DNS важна для планирования. В режимах Global, Bypass mainland China и Custom routing скрипт отключает обычные upstream-серверы dnsmasq и пересылает запросы на локальный DNS-порт sing-box. Поэтому изменение касается каждого клиента, который спрашивает DNS у роутера, а не только того, кого вы внесли в список для проксирования.[5]
Используйте роутер, которым вы владеете или управляете, с проводным клиентом на известном порту LAN и задокументированным способом восстановления для вашей модели. До установки запишите релиз прошивки, архитектуру процессора и свободное место.
cat /etc/openwrt_release
uname -m
opkg print-architecture
df -h /overlay /tmp
Сверьте архитектуру с индексом пакетов, который собираетесь использовать. Пакет LuCI не зависит от архитектуры, но sing-box и модуль ядра собираются под конкретную платформу, поэтому роутерам AMD64 и aarch64_cortex-a53 нужны разные бинарные файлы одного и того же релиза.[3][4]
Остановитесь, если прошивка не ImmortalWrt 24.10.6 и вы не можете подтвердить подходящий официальный фид. Пакеты из другого релиза способны сломать зависимости модулей ядра, а совместимость за пределами базовой версии здесь не установлена.
В LuCI откройте System → Backup / Flash Firmware и сохраните резервную копию конфигурации на другое устройство. Запишите также текущие DNS-серверы пересылки и адрес тестового клиента в LAN. Всё время держите открытой проводную сессию управления.
На роутере обновите списки пакетов и установите приложение LuCI из официального фида. Списки хранятся в RAM в /tmp/opkg-lists и пропадают после перезагрузки, поэтому перед каждой следующей установкой снова выполняйте opkg update.[6]
opkg update
opkg list-installed | grep -E 'homeproxy|sing-box'
opkg install luci-app-homeproxy
Установка подтягивает объявленные зависимости. Прочитайте вывод транзакции: если opkg сообщает о конфликте зависимостей или модуля ядра, остановитесь и решите его по документации прошивки, а не принудительной установкой.[2][6] После установки обновите LuCI: приложение появится в Services → HomeProxy со страницами Client Settings, Node Settings, Server Settings и Service Status.[1]
Не обновляйте все пакеты роутера ради того, чтобы установка прошла. В документации opkg массовые обновления названы крайне нежелательными, потому что они могут превратить устройство в «кирпич» на программном уровне.[6]
Откройте Services → HomeProxy → Node Settings. На вкладке Nodes добавьте узел вручную, выбрав Type и заполнив Address и Port, или вставьте ссылку через Import share links. В диалоге импорта поддерживаемыми указаны ссылки Hysteria, Shadowsocks, Trojan, VMess (формат v2rayN) и VLESS.[7]
Используйте только узел, который вы держите сами или на который у вас есть разрешение. Оставьте Allow insecure выключенным: отключение проверки сертификатов скрывает несоответствие, а не устраняет его. Не публикуйте адреса подписок и ссылки на узлы на форумах и в скриншотах — они работают как учётные данные.
HomeProxy собирает конфигурацию sing-box из этих полей. Если параметр протокола непонятен, сверьтесь с описанием соответствующего outbound в документации sing-box для версии, установленной на роутере, а не подбирайте значения наугад.[8]
Откройте Client Settings → Routing Settings. В Main node выберите импортированный узел: пока там стоит Disable, клиентская служба не запускается.[5][9] Main UDP node оставьте по умолчанию — тогда используется основной узел.
Routing mode предлагает GFWList, Bypass mainland China (по умолчанию), Only proxy mainland China, Custom routing и Global.[9] Для ограниченного первого теста Global даёт самое простое ожидание: трафик клиента из списка должен уходить через узел. Proxy mode оставьте по умолчанию — Redirect TCP + TProxy UDP; варианты Tun появляются, только когда установлены ip-full и kmod-tun.[9]
| Параметр | Значение для первого теста | Зачем |
|---|---|---|
| Main node | Импортированный узел | Без него клиентская служба не запустится |
| Routing mode | Global | Одно понятное ожидание для клиента |
| Proxy mode | Redirect TCP + TProxy UDP | Значение пакета по умолчанию, без доп. модулей |
| IPv6 support | По вашему плану охвата | При включении добавляет правила IPv6 |
| Proxy filter mode | Proxy listed only | Ограничивает перехват одним клиентом |
Затем откройте вкладку Access Control, выберите LAN IP Policy и установите Proxy filter mode в Proxy listed only. Добавьте адрес тестового клиента в Proxy IPv4 IP-s (и в Proxy IPv6 IP-s, если проверяете IPv6), а компьютер для управления в список не вносите.[9] Сохраните и примените настройки, затем убедитесь, что в Service Status клиент показан работающим.
Проверяйте каждый путь на тестовом клиенте отдельно, затем повторите основные проверки на клиенте не из списка. Таблица описывает ожидаемые наблюдения; свои результаты записывайте сами.
| Способ проверки | Ожидаемое наблюдение | Если не сработало |
|---|---|---|
| Страница проверки IP на клиенте из списка | Виден публичный адрес узла | Прочитайте homeproxy.log и поля узла |
| Та же страница на клиенте не из списка | Виден обычный адрес провайдера | Перепроверьте Proxy filter mode и список |
| Разрешение имени на обоих клиентах | Ответы приходят через роутер | Остановите службу и сравните dnsmasq |
| Сайт только с IPv6 на клиенте из списка | Совпадает с выбором IPv6 support | Сузьте охват или выключите IPv6 support |
| Доступ к LuCI с проводного клиента | Управление работает | Немедленно остановите службу |
Для проверки выхода сравните видимый публичный адрес на каждом клиенте. Изменившийся адрес на клиенте из списка доказывает лишь то, что его веб-трафик доходит до узла; DNS и IPv6 нужно проверять отдельно.
Посмотрите и на состояние роутера. Пока служба работает, ip rule show должен показывать правило с меткой HomeProxy, а nft list ruleset | grep homeproxy — её цепочки.[5] При включённом IPv6 support скрипт добавляет такие же правила для IPv6; если у клиентов есть IPv6, а тест показывает прямой путь IPv6, зафиксируйте это ограничение до расширения списка.
Остановите HomeProxy через init-скрипт и отключите автозапуск, если завершаете пробу. Это касается только HomeProxy на роутере.
/etc/init.d/homeproxy stop
/etc/init.d/homeproxy disable
ip rule show
nft list ruleset | grep homeproxy
Процедура остановки удаляет свои правила и маршруты policy routing, очищает и удаляет цепочки и наборы homeproxy_*, убирает свой каталог dnsmasq и перезапускает dnsmasq.[5] Значит, две проверочные команды не должны показывать записей HomeProxy. На тестовом клиенте страница проверки IP снова должна показать обычный адрес, а разрешение имён — идти через исходные серверы пересылки.
Если в какой-то момент управление потеряно, сначала остановите службу с проводного клиента, затем восстановите резервную копию конфигурации из шага 2. Не очищайте весь межсетевой экран и не сбрасывайте роутер к заводским настройкам первым же действием.
Обновляйтесь только в пределах фида того же релиза прошивки, после opkg update, а затем проверяйте установленную версию. Пакет помечает /etc/config/homeproxy, сертификаты, наборы правил и списки прямого и проксируемого трафика как файлы конфигурации, поэтому они должны пережить обновление; собственную резервную копию всё равно держите.[2][6]
Для удаления остановите и отключите службу, выполните проверки восстановления из предыдущего раздела, затем удалите приложение. opkg remove --autoremove luci-app-homeproxy удаляет и пакеты, установленные только как его зависимости; просмотрите выведенный список до подтверждения, потому что sing-box может быть нужен чему-то ещё.[6] Учётные данные узла, которые засветились во время пробы, отзовите, а не просто удалите локальную копию.
Нет. HomeProxy — приложение LuCI, которое пишет конфигурацию sing-box, правила маршрутизации и настройки dnsmasq, а sing-box — отдельная прокси-программа, которая переносит трафик.
Проект не выпускает пакетов с тегами релизов, и в штатных фидах OpenWrt его нет. Эта инструкция охватывает ImmortalWrt 24.10.6, где пакет есть в официальном фиде LuCI.
В режиме Global и похожих режимах HomeProxy направляет dnsmasq на локальный DNS-порт sing-box. Через этот путь идёт каждое устройство, получающее DNS от роутера, даже если его трафик не проксируется.
Global вместе с Proxy listed only даёт одно понятное ожидание для одного клиента. Переходите к другому режиму только после того, как первый тест и откат оба сработали.
Для первого теста — нет. Режим по умолчанию Redirect TCP + TProxy UDP не требует дополнительных модулей, а варианты Tun появляются только после установки ip-full и kmod-tun.
Проверьте, что в Main node не выбрано Disable, затем прочитайте /var/run/homeproxy/homeproxy.log. Неудачная проверка конфигурации sing-box прерывает запуск и записывается туда.
Правила и изменения dnsmasq убирает именно остановка службы. Остановите её, убедитесь, что на роутере нет правил HomeProxy, проверьте клиента и только после этого удаляйте пакет.
Отказ от ответственности: Данная статья носит исключительно информационный характер и не является юридической, технической или иной профессиональной консультацией. Мы не гарантируем точность, полноту или актуальность содержания. Используйте только сети, роутеры и прокси-узлы, которыми вы владеете или на использование которых у вас есть разрешение.
Источники:
Sources checked 14 октября 2026 г.
Рекомендуемые статьи:
Зарегистрируйтесь и попробуйте все премиум-функции бесплатно.
*Только для новых пользователей. Один пробный период на пользователя.





