Оформить доступ
Отметка на ленте · третий цикл обновления

Обновление правил маршрутизации: geosite и geoip

Правила обновляются сами и отдельно от программы: клиент перекачивает geosite.dat и geoip.dat, когда у профиля маршрутизации меняется метка времени. Это третий, самостоятельный цикл — не приложение и не подписка. В поле зрения человека он попадает обычно в один момент: когда ядро отказывается стартовать и сообщает, что не нашло нужную секцию в файле правил.

Фактура страницы снята 28 августа 2026 года: официальная документация разработчика по маршрутизации, исходники ядра Xray и разбор самих файлов списков.

Короткий ответ

Правила — это два отдельных файла, и обновляются они не вместе с приложением, а по метке времени профиля маршрутизации.

  • Файлов два: geosite.dat и geoip.dat. Первый — списки доменных имён, второй — списки сетевых адресов. По ним ядро и решает, что отправить в туннель, а что оставить напрямую.
  • Перекачку запускает метка времени профиля. У профиля маршрутизации есть поле даты последнего обновления: файлы качаются заново, когда эта метка свежее прежней или прежней не было вовсе. Английская версия документации разработчика добавляет верхний предел — не чаще раза в неделю, даже если сам профиль обновляется каждый час; в русской версии этого пункта нет.
  • Обновление программы приносит свежее ядро и свежие встроенные списки, но не трогает скачанные файлы вашего профиля. Это ровно та путаница, из-за которой люди обновляются и не видят разницы.
  • У сообщения «нет секции» три причины, и по его тексту они не различаются: имя секции написано неверно, нужной секции нет в выбранном источнике списков, файл скачался не полностью. Проверять их приходится по очереди — в этом порядке.
  • Лечится это файлом и профилем, а не заменой подписки. Состояние ошибки снимают ровно два события: успешная докачка и удаление проблемного профиля. Перевыпуск ссылки-подписки в этой ошибке не участвует.

Когда клиент перекачивает файлы

Когда у профиля маршрутизации метка времени оказывается свежее прежней — или когда прежней не было вовсе.

  • Загрузкой занимается фоновый менеджер геофайлов. Это часть самого приложения. Официальная документация описывает его работу, но не описывает его экран, поэтому пересказа «какая кнопка где лежит» здесь нет — есть порядок действий.
  • Первый профиль маршрутизации становится активным только после успешной загрузки. Пока файлы не скачались, применять ему нечего.
  • При обновлении профиля ядро продолжает работать на старых правилах. Новые файлы качаются в фоне, а подмена происходит одним действием и только после полной докачки: штатный путь недокачанный файл ядру не подставляет.
  • У загрузки есть предел по времени — три минуты. Не уложилась — процесс останавливается, на главном экране появляется сообщение об ошибке, а у проблемного профиля в списке — красный восклицательный знак.
  • Состояние ошибки снимается двумя событиями: успешной докачкой либо удалением проблемного профиля. Само по себе оно не проходит.
  • Приложение поставляется с предустановленными списками и работоспособно сразу после установки. Их свежесть поддерживается обновлением версии — вместе с ней меняется и ядро; в настольной линии встроенные свежие списки начали класть в сборку с выпуска 3.3.6 от 20.07.2026.
  • Удаление подписки уносит с собой всё: её профили маршрутизации и её кэшированные геофайлы удаляются каскадом, а после повторного добавления файлы качаются с нуля.

И следствие, которое экономит больше всего времени: любое изменение настроек маршрутизации записывается сразу, а применяется только после переподключения. Обновили правила — переподключитесь, иначе ядро продолжит работать на прежних списках, и вы решите, что обновление не помогло.

Откуда берётся «секции нет»

Самый частый и самый неочевидный сюжет: сообщение выглядит как жалоба на конфигурацию, а стоять за ним могут три разные вещи — и различить их по тексту нельзя.

Отсюда и главная ошибка читателя: он идёт перевыпускать ссылку-подписку, хотя чинить нужно имя секции, адрес источника или сам файл на устройстве.

Порядок лечения, если ядро не стартует

Шаги идут от самой частой причины к самой редкой и от самого дешёвого действия к самому тяжёлому. После каждого пробуйте подключиться — дальше идти нужно, только если не помогло.

  1. 1

    Начните с имени секции

    Если правила маршрутизации вы задавали сами, сперва проверьте имена. Самый частый случай — правило geosite:ru: секции с именем ru нет ни в наборе списков по умолчанию, ни в российском наборе, разбор обоих файлов её не находит. Рабочая замена — CATEGORY-RU, она есть в обоих. Секции geolocation-ru там тоже нет.

    Регистр букв роли не играет: имена хранятся заглавными, и запрошенное имя ядро само приводит к верхнему регистру.

  2. 2

    Обновите правила из настроек маршрутизации

    Вторая причина — оборванная загрузка. Запустите обновление правил в настройках маршрутизации и дождитесь конца: у загрузки есть предел в три минуты, а прерванная попытка ничего не чинит. Пока файл не докачан целиком, ядро продолжает работать на прежних списках — подмена происходит только после полной загрузки.

    Обновление правил и обновление подписки — разные вещи с разными кнопками, их часто путают.

  3. 3

    Переподключитесь

    Отключите и включите соединение в самом клиенте: изменения настроек маршрутизации записываются сразу, а применяются только на переподключении. Пока этот шаг не сделан, судить о том, помогло ли обновление правил, рано.

    Перезагружать устройство для этого не требуется.

  4. 4

    Проверьте, есть ли нужная секция в вашем источнике

    Третья причина — секции нет в том наборе, откуда вы качаете. Наборы отличаются составом: в наборе по умолчанию есть CATEGORY-RU, TLD-RU, TELEGRAM, CATEGORY-GOV-RU, но нет RU-BLOCKED, REFILTER и ANTIFILTER-DOWNLOAD — эти живут только в российском наборе. Если правило ссылается на секцию из другого набора, лечит смена адреса источника, а не перекачка того же файла.

    Адреса источников — поля профиля маршрутизации; пустое поле означает файл по умолчанию. В режиме JSON-подписки профиль приходит от продавца доступа и правке не поддаётся.

  5. 5

    Уберите профиль, который ссылается на несуществующую секцию

    Второй и последний способ снять состояние ошибки — удалить проблемный профиль маршрутизации. После этого он придёт заново, если продавец подписки отдаёт профиль вместе с ней, а геофайлы скачаются с нуля.

    Сразу после удаления нужен доступ к источнику списков: пока файлы не загрузились, первый профиль активным не станет.

  6. 6

    Обновите само приложение

    Если загрузка срывается раз за разом, дело может быть не в сети, а в версии: зависавшее обновление геофайлов чинили в настольном выпуске 4.0.5 — там появились ограничение по времени, повтор при возврате сети и сообщение об ошибке. Обновляйтесь тем же путём, каким ставили.

    Что правили в последних выпусках — в разборе примечаний.

Что видно на экране и что это значит

Слева — то, что видит человек. Справа — как это читать и на какую из трёх причин это указывает.

Что видноЧто это значит
Окно «Geo Files Error» и отказ подключитьсяЯдро не поднялось. Оно разбирает конфигурацию до подъёма соединений, и одно неверное имя секции валит запуск целиком — это сознательное решение авторов ядра, а не поломка клиента. «Нет интернета» тут ни при чём
В журнале строка code not found in geosite.dat: ИМЯТо же самое в англоязычном виде: так эту ошибку пишет само ядро. Имя после двоеточия и есть секция, которую оно не нашло, — с него и начинайте разбор
В правилах стоит geosite:ruПервая причина, самая частая. Секции ru нет ни в наборе по умолчанию, ни в российском; рабочая замена — CATEGORY-RU. Та же ловушка у geosite:geolocation-ru
Правило ссылается на RU-BLOCKED или REFILTERВторая причина. Эти секции есть только в российском наборе списков; если качаете набор по умолчанию, их там не будет никогда — меняйте адрес источника, а не файл
У знакомого тот же набор, и всё работаетТретья причина, обрыв закачки. «Почти целый» файл ломается не для всех правил сразу: секции лежат подряд и ищутся просмотром с начала, поэтому пропадают только те, что стоят после точки обрыва
Красный восклицательный знак у профиля в спискеПризнак сбоя загрузки геофайлов. Снимается успешной докачкой либо удалением этого профиля — сам собой не проходит
Ошибка появилась сразу после обновления приложенияВместе с версией меняется и ядро. Зафиксирован реальный случай, когда одна и та же связка падала на новом ядре и работала на предыдущем: причина бывает в ядре, а не в файле
Загрузка «крутится» и ничего не происходитИзвестная ошибка настольных сборок до 4.0.5: там добавили ограничение по времени, повтор при возврате сети и сообщение об ошибке, а застрявшая папка обновления перестала оставаться после сбоя

Почему это тема именно про обновление

Потому что скачиванием правил занимается сама программа, и последние выпуски чинили ровно эту часть.

  • Настольный выпуск 4.0.5. Починено бесконечное зависание обновления геофайлов: добавлены ограничение по времени, повтор при возврате сети и сообщение об ошибке, а застрявшая папка обновления перестала оставаться после сбоя. Заодно вылечен случай, когда подписка с несколькими профилями складывала все геофайлы в папку одного.
  • Настольный выпуск 3.3.6 от 20.07.2026. Во-первых, в сборку начали класть свежие встроенные списки — «как в мобильном приложении». Во-вторых, починили именно непоявление окна «Geo Files Error» при отсутствующей записи. Отсюда важное для диагностики: в сборках до 3.3.6 тот же сбой мог выглядеть как молчаливый отказ подключения без всякого сообщения.
  • Android 4.0.0 от 28.07.2026 — отдельный менеджер загрузки геофайлов появился как функция. До того, в 3.1.1 и 3.1.2, отдельно обрабатывали случаи испорченных файлов маршрутизации.
  • Практический вывод. Если загрузка срывается систематически, а сеть в порядке — сначала посмотрите, насколько стара ваша версия. Разбор номеров и каналов выпусков объясняет, почему ваше число может отставать от того, что называют в статьях.
  • И обратный вывод. Обновление программы приносит свежее ядро и свежие встроенные списки, но файлы, скачанные для вашего профиля, от него не меняются: их перекачку запускает метка времени профиля, а не номер версии.

Короткие вопросы

Как часто обновляются geosite и geoip?

Перекачку запускает не расписание, а метка времени профиля маршрутизации: файлы качаются заново, когда она свежее прежней или её не было вовсе. Английская версия документации разработчика добавляет верхний предел — не чаще раза в неделю, даже если профиль обновляется каждый час; в русской версии этого пункта нет. Сами источники списков при этом пересобираются гораздо чаще: набор по умолчанию — ежедневно, российский — каждые шесть часов.

Что означает сообщение о том, что секция не найдена?

Что ядро не нашло в файле правил секцию, на которую ссылается правило, и поэтому не запустилось вовсе. В англоязычном виде это строка code not found in geosite.dat: ИМЯ, а собственное окно клиента называется «Geo Files Error». Ошибка фатальна по устройству ядра: она возникает на разборе конфигурации, до подъёма соединений, — поэтому приложение не подключается не из-за сети.

Почему не работает правило geosite:ru?

Потому что секции с именем ru нет ни в наборе списков по умолчанию, ни в российском наборе — разбор обоих файлов её не находит. Рабочая замена — CATEGORY-RU, она есть в обоих наборах. Секции geolocation-ru там тоже нет, хотя оба этих имени попадаются в подсказках генераторов профилей.

Ошибка про секцию — значит, подписка сломалась?

Нет. Речь о содержимом файла правил на устройстве и об имени секции в профиле маршрутизации, а не о самой подписке. Перевыпускать ссылку бессмысленно: состояние ошибки снимают только успешная докачка файла и удаление проблемного профиля.

Обновление приложения обновляет и правила?

Частично. Вместе с версией обновляются ядро и встроенные списки, с которыми приложение поставляется. А файлы, скачанные для вашего профиля маршрутизации, живут отдельно: их перекачку запускает метка времени профиля.

Почему у меня ошибка, а у знакомого на том же наборе списков — нет?

Потому что «почти целый» файл ломается не для всех правил сразу. Секции лежат в файле подряд и ищутся просмотром с начала, поэтому обрыв закачки делает недоступными только те, что физически стоят после точки обрыва. Порядок секций не алфавитный, и предсказать, какая уцелеет, нельзя.