Как обновить GEO-файлы
- Автор
- Екатерина Лебедева, редактор раздела knowledge base
- Проверил:
- Артём Волков
- Проверено:
- Опубликовано:
- , обновлено
- Версия гайда:
- 1.0
Коротко
Чтобы принудительно обновить geoip.dat и geosite.dat в Happ, импортируйте профиль маршрутизации с тем же именем, но с более новой датой lastUpdatedDate — это запускает принудительную загрузку файлов; повторное сохранение профиля с прежними стандартными ссылками без такой даты новых файлов не скачивает.
GEO-файлы geoip.dat и geosite.dat обновляются в Happ по-разному в зависимости от того, что именно требуется. Их актуальность в целом поддерживается вместе с обновлением самого приложения — новые версии несут более свежие стандартные ссылки и логику ядра. Принудительно перекачать файлы для конкретного профиля можно, задав в его JSON поле lastUpdatedDate датой позже прежней: документация описывает это как условие Force Download. Если же профиль просто пересохранить со стандартными ссылками без такой даты, приложение не скачивает файлы заново, а лишь пересобирает урезанную выборку из уже имеющихся. Отдельная история — застрявшая загрузка: если она не укладывается в 3 минуты, менеджер загрузки останавливает процесс и показывает ошибку.
Два разных смысла «обновить GEO-файлы»
Задача «обновить GeoIP и GeoSite» распадается на два разных случая, и решение для них разное. Первый — застрявшая или неудачная загрузка, когда рядом с профилем горит красный восклицательный знак. Второй — файлы формально загружены и работают, но вы хотите получить более свежую версию с источника прямо сейчас, не дожидаясь обновления самого приложения.
Для первого случая нужно устранить причину сбоя. Для второго — использовать механизм принудительной загрузки, который документация Happ описывает через поле lastUpdatedDate профиля маршрутизации.
Важная деталь: обычное пересохранение профиля со стандартными ссылками на файлы Loyalsoldier не запускает новую загрузку само по себе — оно лишь пересобирает урезанную выборку тегов из уже имеющихся на устройстве файлов.
Как принудительно обновить geo-файлы
Определите профиль, для которого нужны свежие файлы
Имя должно совпасть с текущим, иначе вместо обновления создастся отдельный новый профиль.
Результат: Вы знаете имя (Name) действующего профиля маршрутизации подписки.
Откройте JSON-профиль на редактирование или в генераторе
Профиль можно взять из routing.happ.su, если он был собран там, либо подготовить вручную по полям из документации.
Результат: У вас открыт текст профиля с текущими настройками.
Укажите поле lastUpdatedDate новой датой
Именно это условие запускает принудительную загрузку — простое изменение других полей его не заменяет.
Результат: Значение поля позже, чем было в прежней версии профиля, либо поле раньше отсутствовало.
При необходимости оставьте ссылки Geoipurl и Geositeurl прежними
Результат: Указаны стандартные или собственные ссылки на geoip.dat и geosite.dat, в зависимости от того, что вам нужно.
Импортируйте обновлённый профиль
Результат: Профиль с тем же именем передан в Happ той же подпиской, ссылкой happ://routing/onadd, буфером обмена или QR-кодом.
Дождитесь фоновой загрузки
Результат: Индикатор загрузки исчез без ошибки, текущее соединение продолжало работать всё это время.
Проверьте, что профиль обновился
Результат: Рядом с профилем нет красного восклицательного знака, а правила, зависящие от новых geo-файлов, работают ожидаемо.
Если загрузка не завершается
Менеджер загрузки geo-файлов работает в фоне и ограничен по времени: если процесс не укладывается в 3 минуты, он останавливается. На главном экране появляется сообщение об ошибке, а рядом с проблемным профилем в списке — красный восклицательный знак. Состояние сбрасывается только после успешной загрузки или удаления самого профиля.
Прежде чем пытаться обновить файлы принудительно, устраните исходную причину сбоя — обычно это нестабильная сеть, а не сам механизм загрузки.
Отличия по платформам
| Платформа | Особенность обновления geo-файлов |
|---|---|
| Windows, macOS, Linux, Android, iOS | Полный механизм: обычные и принудительные (lastUpdatedDate) загрузки, useChunkFiles для урезанной выборки |
| Android TV | Тот же механизм, что и на Android, в рамках одного приложения |
| iOS, Apple TV | Урезанные geo-файлы особенно важны из-за строгого лимита памяти туннеля около 50 МБ — при переполнении система может завершить процесс |
| Apple TV отдельно | Полноценных geo-файлов и профилей маршрутизации нет — только встроённый список правил Direct |
| JSON-подписка (любая платформа) | Обновление geo-файлов доступно только через профиль от провайдера, самостоятельно недоступно |
Проверка результата
- У профиля нет красного восклицательного знака и сообщения об ошибке на главном экране.
- Профиль с обновлённой датой lastUpdatedDate не создал дубликат, а обновил существующий (совпадает имя).
- Соединение оставалось рабочим во время фоновой загрузки новых файлов.
- Правило, зависящее от свежей категории GEO-файла, действительно работает.
- Для JSON-подписки вы не пытались обновить geo-файлы самостоятельно, а обратились к провайдеру.
Типичные ошибки
| Что видно | Возможная причина | Где разбор |
|---|---|---|
| Сообщение об ошибке загрузки geo-файлов | Загрузка не завершилась за 3 минуты, часто из-за сети | Ошибка загрузки GEO-файлов |
| Красный восклицательный знак не пропадает | Профиль так и не докачал файлы; попробуйте удалить и импортировать заново | Решение для Windows |
| Файлы не обновляются после пересохранения профиля | Не было указано более позднее значение lastUpdatedDate | Урезанные GEO-файлы |
| Проблема повторяется только на Android | Загрузка geo-файлов зависит от сети устройства | Решение для Android |
Если ошибка возникает у одной подписки, но не у других, сравните ссылки Geoipurl и Geositeurl в её профиле — если они собственные, а не стандартные от Loyalsoldier, проверьте доступность этого источника отдельно от Happ, например через браузер.
Главное
- Принудительное обновление geoip.dat и geosite.dat запускает поле lastUpdatedDate в профиле маршрутизации: скачивание начнётся, если новая дата позже прежней или прежняя дата отсутствует.
- Простое пересохранение профиля со стандартными ссылками без изменения lastUpdatedDate не скачивает файлы заново — оно только пересобирает урезанную выборку из уже загруженных geo-файлов.
- Общая актуальность geo-файлов поддерживается вместе с обновлением самого приложения Happ, а не отдельным регулярным обновлением файлов в фоне.
- Если загрузка не завершается за 3 минуты, менеджер загрузки останавливает процесс и показывает ошибку на главном экране и у профиля.
- У подписки с JSON-конфигурацией геофайлы обновляет только сам провайдер вместе с профилем — у пользователя такой возможности нет.
Частые вопросы
Как заставить Happ скачать geoip.dat и geosite.dat заново, если старые файлы явно устарели?
Соберите или отредактируйте профиль маршрутизации с тем же именем, что у текущего, и укажите в поле lastUpdatedDate более позднюю дату, чем была раньше. Импортируйте такой профиль обычным способом — ссылкой happ://routing/onadd, буфером обмена или QR-кодом. Условие срабатывания именно такое: новая дата позже прежней или прежняя дата отсутствует вовсе.
Почему повторное сохранение профиля с теми же ссылками не скачивает файлы заново?
Документация описывает это отдельно: при сохранении нового профиля со стандартными ссылками (Loyalsoldier) скачивания не происходит — приложение просто пересобирает урезанную выборку нужных тегов из geo-файлов, которые уже есть на устройстве. Чтобы получить действительно новую версию файлов с источника, нужно именно условие принудительной загрузки через lastUpdatedDate, а не пересохранение без него.
Обновляются ли geo-файлы в Happ сами по себе, без моих действий?
Их общая актуальность поддерживается вместе с обновлением версии ядра внутри самого приложения — то есть обновление Happ до новой версии может принести более свежие стандартные ссылки и логику работы с geo-файлами. Отдельного регулярного фонового обновления именно файлов geoip.dat и geosite.dat независимо от смены версии приложения или профиля документация не описывает.
Что делать, если ошибка загрузки геофайлов повторяется при каждой попытке обновить их?
Сначала проверьте интернет-соединение на устройстве и попробуйте открыть любой сайт в браузере — если сеть работает нестабильно, менеджер загрузки будет обрываться на том же месте. Если сеть исправна, а ошибка повторяется, посмотрите разбор для своей платформы на страницах решений и, если используются собственные ссылки на geo-файлы, проверьте их доступность отдельно.
Нужно ли обновлять geo-файлы вручную сразу после обновления самого приложения Happ?
Обычно нет: обновление приложения само подтягивает актуальные стандартные ссылки и логику работы с geo-файлами. Принудительное обновление через lastUpdatedDate нужно скорее для промежуточных случаев — например, если вы хотите получить свежую версию файлов от источника прямо сейчас, не дожидаясь следующего обновления самого Happ.
Как обновить geo-файлы у подписки с JSON-конфигурацией?
Самостоятельно — никак: у такой подписки профиль маршрутизации, включая ссылки на geo-файлы и дату lastUpdatedDate, может прислать только провайдер вместе с самой подпиской. Если нужны более свежие geo-файлы для JSON-конфигурации, обращайтесь к провайдеру — он должен обновить профиль на своей стороне.
Как понять, что geo-файлы обновились успешно?
Прямого индикатора версии файлов в интерфейсе документация не описывает, поэтому ориентируйтесь на отсутствие ошибок: если рядом с профилем нет красного восклицательного знака и сообщение об ошибке на главном экране исчезло, загрузка завершилась. Дополнительно можно проверить, что правило с новой GEO-категорией из обновлённого файла действительно работает на практике.
Упомянутые темы
Похожие материалы
- Как добавить правило маршрутизации
- Как настроить раздельное туннелирование
- Как импортировать профиль маршрутизации в Happ
- GeoIP в Happ: что это и как используется в маршрутизации
- GeoSite в Happ: что это и как используется в маршрутизации
- GEO-файлы
- Урезанные GEO-файлы (useChunkFiles)
- Ошибка загрузки геофайлов в Happ: что делать
Разделы по теме
Источники
- Документация Happ: геонастройки и маршрутизация — обращение 28 сентября 2026
- Документация Happ: ошибки — обращение 28 сентября 2026
- Loyalsoldier/v2ray-rules-dat на GitHub — обращение 27 сентября 2026