Ошибки диагностики
Здесь собраны все сообщения диагностики на вкладке Статус с причинами и решениями. Ищите сообщение по его тексту, заголовки повторяют формулировки страницы.
Зелёная строка значит, что проверка прошла. Жёлтая показывает то, что стоит поправить, но Forkop работает. Красная означает, что проверка не прошла и что-то не работает. Группа окрашивается по своей худшей строке.
Диагностика описывает состояние в момент проверки. Если строка покраснела один раз, а при повторном запуске позеленела, скорее всего, сервер ответил медленнее отведённого времени. Насторожиться стоит, когда ошибка повторяется.
Общие сообщения
Пропущено: Forkop не запущен
Когда Forkop остановлен, диагностика проверяет только группу Служба, потому что остальным проверкам нужно работающее ядро. Почему Forkop не работает, показывает строка Forkop: не запущен.
Не удалось получить результаты проверки
Страница не дождалась ответа роутера, и о самой проверке ничего не известно. Обычно роутер перезагружается, применяет настройки или истекла сессия LuCI. Обновите страницу и запустите диагностику ещё раз.
Служба
Forkop: не запущен
Служба не работает. После двоеточия стоит причина, первая строка [error] последнего действия Forkop из журнала, а если ошибок не было, последний [warn].
| Причина в строке | Что делать |
|---|---|
Forkop has nothing to run: … | нет ни одной секции с подключением и ни одного включённого VPN-сервера. Создайте секцию по быстрому старту |
sing-box refused the generated configuration: … | ядро не приняло конфигурацию. Причина после двоеточия называет поле |
Failed to generate the sing-box configuration: … | в настройках ошибка, которую страница не поймала. Текст называет секцию и поле |
Another sing-box process is running outside Forkop | запущено чужое ядро, см. запущен посторонний sing-box |
Clash API address … is already in use by another process | порт 9090 занят другой программой |
sing-box stopped after repeated crashes | ядро падало раз за разом, и система перестала его поднимать. Причину пишут строки ядра выше в журнале |
nft refused the ruleset: nft ran out of memory … | подсети списков не помещаются в память. Выключите Учитывать IP-адреса и подсети у больших наборов правил |
Исправьте причину и нажмите Запустить. Если причина непонятна, нажмите Получить отчёт на вкладке Статус и спросите в чате.
Ядро: sing-box-forkop не установлен
В /usr/bin/sing-box лежит не sing-box-forkop. Ядро удалили или поставили поверх другую сборку sing-box. Forkop работает только на своём ядре. Запустите установщик, он заменит чужое ядро на sing-box-forkop.
Ядро: сообщение о сборке
Вместо версии в строке написано, почему Forkop не может работать на этой своей сборке ядра.
| Сообщение | Что значит |
|---|---|
sing-box was built without with_clash_api … | в сборке нет обязательного тега with_clash_api, без него не работают дашборд, группы и проверки |
sing-box was built with … but without with_gvisor … | теги туннелей есть, а сетевого стека для них нет |
Failed to read the tags sing-box was built with … | ядро не сообщило свои теги, обычно файл повреждён |
Соберите ядро с нужными тегами или поставьте официальную сборку командой установщика с --variant base.
Конфликты: … перехватывает трафик
В nftables есть таблица другой программы, которая тоже перехватывает трафик через TProxy, например Passwall, HomeProxy или OpenClash. Имя таблицы в строке подскажет программу. Две такие программы мешают друг другу, и соединения уходят то в одну, то в другую.
Остановите другую программу и выключите ей автозапуск, например /etc/init.d/passwall stop и /etc/init.d/passwall disable. Удалять её не обязательно.
Конфликты: … забирает DNS-запросы раньше Forkop
Другая программа перенаправляет DNS-запросы на порт 53 правилом nftables раньше Forkop. Её правило срабатывает первым, и доменные правила Forkop не получают запросов.
Выключите перенаправление DNS в той программе. AdGuard Home может оставаться резолвером роутера на порту 53, Forkop с этим работает, но перехватывать запросы своими правилами nftables он не должен.
Конфликты: запущен посторонний sing-box
Работает процесс sing-box, который запустила не служба Forkop, например ядро, запущенное руками для проверки, или ядро другой программы. Он может держать нужные порты и путать проверки. Остановите его службу или завершите процесс по номеру из строки, например kill 1234.
Память: свободно … из …
Строка желтеет, когда свободно меньше 10% памяти. Ещё немного, и система начнёт останавливать программы, первым обычно ядро.
Больше всего памяти забирают подсети больших наборов правил в nftables, подписки с тысячами серверов и множество одновременных соединений. Помогает выключить Учитывать IP-адреса и подсети у больших наборов, убрать лишние списки и посмотреть в top, какие ещё программы занимают память роутера. Подробнее в разделе Наборы правил.
DNS
Основной DNS: … не отвечает
Диагностика спрашивает через DNS Forkop случайное имя, которого нет ни в одном кеше. Запрос уходит основным DNS-серверам, как настроено в DNS Fallback. Строка краснеет, только если не ответил ни один из них.
| Причина | Что делать |
|---|---|
| провайдер режет запросы к зарубежным DNS-серверам или блокирует DoH и DoT Cloudflare и Google | поставьте 77.88.8.8 (так по умолчанию) или DoH доступного провайдера, либо включите DNS через секцию |
| часы роутера отстали, и DoH или DoT не проходят проверку сертификата | проверьте время в Система → Система |
| роутер стоит за другим роутером или терминалом провайдера, который подменяет DNS | попробуйте DoH или DoT: их терминал не перехватит |
| DNS через секцию включён, а подключение секции не работает | проверьте секцию в группе Секции |
| Forkop только что запустился | подождите несколько секунд и повторите проверку |
Если основной DNS не отвечает, не работают ни доменные правила, ни обычные сайты, потому что устройства не получают адресов.
Основной DNS: … отвечает ошибкой
Сервер ответил, но отказом. REFUSED значит, что сервер не обслуживает ваши запросы. Это закрытый DNS провайдера или ошибка в адресе. SERVFAIL значит, что сервер сам не смог узнать ответ. Замените сервер на другой.
Bootstrap DNS: … не находит …
Bootstrap-серверы нужны, только если основной DNS задан именем, как dns.google в https://dns.google/dns-query, или включён DNS через секцию и сервер прокси задан именем. Тогда диагностика спрашивает это имя у каждого bootstrap-сервера напрямую и краснеет, если не ответил ни один. Проверяет она только обычный DNS по UDP, а серверы TCP, DoT, DoH, QUIC и HTTP/3 пропускает.
Если основной DNS задан адресом, например https://1.1.1.1/dns-query, или все bootstrap-серверы с шифрованием, строки Bootstrap DNS не будет. Если строка красная, задайте в Bootstrap DNS-серверах простой адрес без шифрования вроде 77.88.8.8. Его труднее заблокировать.
Локальный DNS: dnsmasq не отвечает
Резолвер роутера на 127.0.0.1:53 не ответил на запрос localhost. Обычно это dnsmasq, у некоторых AdGuard Home. Без него не работают имена домашних устройств вроде nas.lan, а если в DNS вне правил выбран Роутер, то и все домены вне секций.
Перезапустите резолвер командой /etc/init.d/dnsmasq restart и посмотрите его ошибки командой logread -e dnsmasq. Частая причина в том, что порт 53 заняла другая программа.
Трафик
Роутер: исключён из маршрутизации
Сам роутер стоит в Исключить устройства из маршрутизации, и его программы ходят мимо Forkop. Это не ошибка, а ваш выбор. Строки Выход через в этом случае нет, потому что проверка выхода идёт через трафик роутера.
Роутер: резолвит мимо Forkop
Роутер спросил служебный домен проверки и получил настоящий адрес вместо FakeIP. Значит, его собственные DNS-запросы идут не через Forkop, и доменные правила на программы роутера не действуют.
Проверьте, что в /etc/resolv.conf записано nameserver 127.0.0.1. Этот файл переписывают некоторые программы, например пакет tailscale с MagicDNS. Остановите такую программу или выключите у неё управление DNS.
Роутер: идёт мимо Forkop
DNS выдал FakeIP, но соединение роутера со службой проверки пришло в обход ядра. Перехват соединений самого роутера не работает. Посмотрите строку Конфликты. Часто мешают mwan3, политика маршрутизации или другой прозрачный прокси. Если ничего такого нет, перезапустите Forkop. Если не поможет, нажмите Получить отчёт на вкладке Статус и спросите в чате.
Роутер: не проверено: сервис проверки не ответил
Служба проверки fakeip.podkop.fyi не ответила роутеру. У роутера нет интернета, служба недоступна или её адрес блокирует фильтр рекламы. Это не говорит о поломке Forkop. Проверьте интернет на роутере и повторите проверку позже.
Выход через «…»: нет ответа
Диагностика открыла служебный адрес ip.podkop.fyi через первую секцию с подключением и не получила ответа. Обычно не работает выбранный сервер секции. Посмотрите строку этой секции в группе Секции и задержки на вкладке Дашборд.
Выход через «…»: …, как и напрямую
Секция выходит в интернет с тем же адресом, что и роутер без VPN. Трафик секции на деле идёт напрямую.
| Причина | Что делать |
|---|---|
| Fallback опустился до уровня Напрямую, потому что все серверы выше не ответили | проверьте серверы на дашборде |
| в секции выбран интерфейс, который ведёт в того же провайдера | выберите другой вариант на дашборде |
| сервер стоит в той же сети, что и роутер, или выходит через того же провайдера | это нормально для своего сервера дома |
Это устройство: не использует DNS роутера
Браузер, в котором открыта страница, обратился к службе проверки по настоящему адресу. Устройство узнаёт адреса не у роутера, и доменные правила на нём не работают.
| Где искать | Что выключить |
|---|---|
| браузер | безопасный DNS (DNS over HTTPS) в настройках |
| Android | частный DNS |
| iPhone, Mac | Частный узел iCloud, «Ограничить отслеживание IP-адреса» |
| компьютер | DNS, вписанный вручную в свойствах адаптера. Его прописывают и корпоративные клиенты вроде VipNet |
| любое устройство | VPN и прокси на самом устройстве |
| сеть | устройство подключено через другой роутер, а роутер с Forkop работает точкой доступа |
Устройство из Исключить устройства из маршрутизации тоже получит эту строку, и для него это нормально.
Это устройство: не проверено: нет ответа
Браузер не смог обратиться к fakeip.podkop.fyi. Обычно запрос заблокировало расширение вроде uBlock Origin или страница открыта через удалённый доступ. Проверьте с другого устройства или в окне без расширений.
Секции
Диагностика проверяет задержку выбранного варианта каждой секции с подключением. Если в секции выбрана группа, строка называет её сервер.
Не ответил вовремя
Сервер не ответил за отведённое время.
| Причина | Что делать |
|---|---|
| сервер выключен, перегружен или заблокирован провайдером | проверьте другие серверы на дашборде |
| протокол поверх UDP (Hysteria2, TUIC, WireGuard) режет провайдер | попробуйте сервер на TCP, например VLESS Reality |
| часы роутера отстали | проверьте время в Система → Система |
| мобильный интернет с белыми списками | работают только серверы на разрешённых адресах |
Соединение не установлено
Сервер ответил отказом сразу. Обычно ссылка устарела или ошибочна, например сменился ключ, истекла подписка или не совпадают параметры Reality. Обновите подписку или возьмите свежую ссылку. На каком шаге оборвалось соединение, пишут строки ядра с именем этого сервера в журнале.
Если тот же сервер работает в Happ или v2rayN на телефоне, сравните параметры fp, sni, pbk, sid и flow.
Нет в рабочей конфигурации
Секция или её сервер есть в применённых настройках, но не в конфигурации, на которой работает ядро. Применение не удалось, и Forkop работает на прежней конфигурации. Посмотрите в журнале ошибку применения и нажмите Сохранить и применить ещё раз.
Интерфейс работает, выхода в интернет через него нет
У секции с сетевым интерфейсом проверка до интернета не прошла. Если интерфейс ведёт только в свою сеть, например рабочий VPN с маршрутами до офиса, так и должно быть. Если через него должен быть интернет, проверьте интерфейс и его маршрут в Сеть → Интерфейсы.
Не проверено: Clash API не ответил
Страница не дозвалась до ядра, обычно в момент перезапуска или применения настроек. Повторите проверку через несколько секунд.
Нет секций с прокси
Нет ни одной включённой секции с подключением, и проверять нечего.
VPN-сервер
Роутер: за NAT провайдера, из интернета недоступен
У роутера нет публичного адреса, провайдер выдал адрес из общего диапазона 100.64.0.0/10. Подключиться к серверам на роутере из интернета не получится, сколько ни открывай порты. Попросите у провайдера белый адрес, подключайтесь по IPv6, если он есть, или используйте сервер Tailscale, которому открытый порт не нужен. Подробнее в разделе Белый IP.
Порт … занят
Порт сервера уже слушает другая программа, её имя в строке. Чаще всего это веб-интерфейс LuCI на 80 и 443, AdGuard Home или другой VPN. Смените порт сервера или остановите ту программу.
Не слушает …
Сервер есть в рабочей конфигурации, но ядро не слушает его порт. Посмотрите в журнале строки ядра с именем сервера и перезапустите Forkop.
Нет в рабочей конфигурации
Сервер включён в настройках, но не применён, или применение не удалось. Нажмите Сохранить и применить и проверьте журнал.
… закрыт в файерволе
У сервера включено Открыть порт, но файервол не принимает подключения на этот порт. Обычно файервол не перечитал правила. Выполните /etc/init.d/firewall reload и проверьте, что в его правилах есть forkop: server ports.
Публичный адрес не указан
Сервер принимает подключения из интернета, а Публичный адрес пуст, поэтому ссылки для клиентов не собираются. Впишите белый адрес роутера или имя DDNS.
… не резолвится
Имя из Публичного адреса не превращается в адрес. Проверьте написание и работу службы DDNS.
… — не публичный адрес
В Публичном адресе стоит адрес домашней сети или общий адрес провайдера, например 192.168.1.1 или 100.64.12.34. Снаружи до него не достучаться. Впишите белый адрес или имя DDNS.
… ведёт на …, а у роутера …
Имя из Публичного адреса указывает не на адрес роутера. Служба DDNS не успела обновить запись, адрес у провайдера сменился, или роутер стоит за другим роутером. В последнем случае пробросьте порт на внешнем роутере.
Tailscale: ждёт входа
Узел не вошёл в сеть Tailscale, потому что ключ авторизации неверный, истёк или одноразовый и уже использован. Создайте новый ключ в консоли Tailscale или войдите по ссылке Войти в Деталях сервера.
Tailscale: устройство ждёт одобрения в консоли
В вашей сети включено одобрение новых устройств. Одобрите роутер в консоли Tailscale.
Tailscale: не запущен
Ядро ещё запускает узел. Если строка не меняется, посмотрите журнал.
Tailscale: нет связи с сервером координации
Узел не достучался до сервера координации. Включите Сервер координации через секцию и выберите секцию с рабочим подключением.
Tailscale: ключ узла истёк
Срок ключа узла кончился, и узел выпал из сети. Продлите ключ в консоли Tailscale или выключите для роутера истечение ключа.
Tailscale: выходной узел ждёт одобрения в консоли
Роутер предлагает себя выходным узлом, но в консоли это не одобрено. Одобрите выходной узел в консоли Tailscale.
Tailscale: … ждёт одобрения в консоли
Подсети из Раздавать маршруты не одобрены. Одобрите маршруты в консоли Tailscale.
Нет серверов для проверки
На вкладке VPN-сервер нет включённых серверов.