Files
op-packages/homeproxy-hiddify/wiki/Troubleshooting-ru.md
T

6.8 KiB
Raw Blame History

🇬🇧 English | 🇷🇺 Русский

Устранение неполадок


Ошибка «Object not found» при сохранении

Симптом: При сохранении любой формы (настройки клиента, списки контроля доступа и др.) появляется:

RPC call to luci.homeproxy/[method] failed with error -32000: Object not found

Причина: rpcd не загрузил модуль luci.homeproxy. Чаще всего это происходит сразу после установки или обновления пакета, если скрипт post-install отправил сигнал перезагрузки, когда rpcd ещё не был запущен.

Решение:

/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 и войдите снова, как описано выше. Если вы используете старую сборку — обновитесь до последнего релиза, в котором это исправлено.


Все три проблемы — одно решение

Если вы только что установили или обновили пакет и наблюдаете любую из перечисленных ошибок:

/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.

Решение:

opkg update && opkg install libustream-openssl ca-certificates

Если сам opkg не имеет доступа к интернету — скачайте файл .ipk или .apk на компьютере со страницы релизов и передайте на роутер через scp.


Нет интернета при включённом Re:HomeProxy (конфликт с mwan3)

Симптом: Ping и DNS работают, но HTTP/HTTPS-трафик не проходит при включённом Re:HomeProxy. Остановка mwan3 восстанавливает связь.

Причина: mwan3 использует fwmark и policy routing для распределения трафика между WAN-интерфейсами. Когда ядро прокси устанавливает исходящие соединения, mwan3 может перехватить их и направить не туда.

Решение: Сообщить ОС пропускать логику маршрутизации mwan3 для трафика, уже обработанного Re:HomeProxy (помечен 0x64).

Добавьте правило в виде постоянного include файрвола:

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

Для проверки, что правило применилось:

iptables -t mangle -L OUTPUT -n --line-numbers | head -5

Правило с меткой 0x64 должно быть первым в списке.

Здесь намеренно используется iptables, потому что mwan3 работает на уровне iptables. На системе с fw4 / nftables правило всё равно применяется через слой совместимости iptables-nft и не конфликтует с nft-цепочками Re:HomeProxy.


Кнопка обновления подписок не работает

Симптом: После нажатия кнопки «Обновить подписки» появляется спиннер, но количество узлов остаётся нулевым после перезагрузки страницы.

Решение: Обновитесь до последнего релиза. В более ранних сборках использовался метод фонового выполнения, который некорректно работал в контексте rpcd. В текущей версии используется правильный механизм.

Если вы уже используете последний релиз и проблема сохраняется — запустите вручную через SSH, чтобы увидеть возможные ошибки:

ucode /etc/homeproxy/scripts/update_subscriptions.uc