🇬🇧 [English](Troubleshooting-en) | 🇷🇺 [Русский](Troubleshooting-ru) # Устранение неполадок --- ## Ошибка «Object not found» при сохранении **Симптом:** При сохранении любой формы (настройки клиента, списки контроля доступа и др.) появляется: ``` RPC call to luci.homeproxy/[method] failed with error -32000: Object not found ``` **Причина:** rpcd не загрузил модуль `luci.homeproxy`. Чаще всего это происходит сразу после установки или обновления пакета, если скрипт post-install отправил сигнал перезагрузки, когда rpcd ещё не был запущен. **Решение:** ```sh /etc/init.d/rpcd restart ``` Затем **выйдите из веб-интерфейса и войдите снова**. Существующая сессия не подхватывает новые разрешения без повторного входа. --- ## Недоступны режимы прокси (нет TProxy, нет Tun) **Симптом:** Селектор режима прокси на странице «Клиент» показывает только «Redirect TCP». Опции TProxy и Tun отсутствуют, хотя необходимые модули ядра установлены. **Причина:** Та же, что выше — `luci.homeproxy` не загружен. Вызов определения возможностей (`singbox_get_features`) возвращает пустой объект, все флаги оказываются ложными и опции скрываются. **Решение:** То же — перезапустить rpcd и войти заново. --- ## TypeError на странице «Клиент» **Симптом:** При открытии `/cgi-bin/luci/admin/services/homeproxy/client` появляется: ``` TypeError: Cannot read properties of undefined (reading 'content') ``` **Причина:** Вызов RPC для загрузки списков доменов завершился неудачей (модуль не загружен или первая загрузка системы), а старая версия пакета не обрабатывала это корректно. **Решение:** Перезапустите rpcd и войдите снова, как описано выше. Если вы используете старую сборку — обновитесь до последнего релиза, в котором это исправлено. --- ## Все три проблемы — одно решение Если вы только что установили или обновили пакет и наблюдаете любую из перечисленных ошибок: ```sh /etc/init.d/rpcd restart ``` Выйдите из веб-интерфейса и войдите снова. Нужны оба шага. --- ## Не удаётся скачать пакет через wget (HTTPS не работает) **Симптом:** ``` Failed to send request: Operation not permitted Failed to allocate uclient context ``` **Причина:** Встроенный `wget` в OpenWRT (uclient-fetch) не имеет установленной SSL-библиотеки и не умеет работать с HTTPS. **Решение:** ```sh opkg update && opkg install libustream-openssl ca-certificates ``` Если сам `opkg` не имеет доступа к интернету — скачайте файл `.ipk` или `.apk` на компьютере со [страницы релизов](https://github.com/1andrevich/homeproxy-hiddify/releases) и передайте на роутер через `scp`. --- ## Нет интернета при включённом Re:HomeProxy (конфликт с mwan3) **Симптом:** Ping и DNS работают, но HTTP/HTTPS-трафик не проходит при включённом Re:HomeProxy. Остановка mwan3 восстанавливает связь. **Причина:** mwan3 использует fwmark и policy routing для распределения трафика между WAN-интерфейсами. Когда ядро прокси устанавливает исходящие соединения, mwan3 может перехватить их и направить не туда. **Решение:** Сообщить ОС пропускать логику маршрутизации mwan3 для трафика, уже обработанного Re:HomeProxy (помечен `0x64`). Добавьте правило в виде постоянного include файрвола: ```sh uci add firewall include uci set firewall.@include[-1].path='/etc/firewall.d/homeproxy-mwan3' uci set firewall.@include[-1].type='script' uci set firewall.@include[-1].reload='1' uci commit firewall mkdir -p /etc/firewall.d cat > /etc/firewall.d/homeproxy-mwan3 << 'EOF' #!/bin/sh iptables -t mangle -I OUTPUT 1 -m mark --mark 0x64/0x64 -j RETURN EOF chmod +x /etc/firewall.d/homeproxy-mwan3 /etc/init.d/firewall reload ``` Для проверки, что правило применилось: ```sh iptables -t mangle -L OUTPUT -n --line-numbers | head -5 ``` Правило с меткой `0x64` должно быть первым в списке. > Здесь намеренно используется `iptables`, потому что **mwan3** работает на уровне iptables. На системе с fw4 / nftables правило всё равно применяется через слой совместимости iptables-nft и не конфликтует с nft-цепочками Re:HomeProxy. --- ## Кнопка обновления подписок не работает **Симптом:** После нажатия кнопки «Обновить подписки» появляется спиннер, но количество узлов остаётся нулевым после перезагрузки страницы. **Решение:** Обновитесь до последнего релиза. В более ранних сборках использовался метод фонового выполнения, который некорректно работал в контексте rpcd. В текущей версии используется правильный механизм. Если вы уже используете последний релиз и проблема сохраняется — запустите вручную через SSH, чтобы увидеть возможные ошибки: ```sh ucode /etc/homeproxy/scripts/update_subscriptions.uc ```