Skip to content

Repository files navigation

🛡️ PinRouting

Build and Update Routing GitHub Release License: MIT Clients

Поддержать

Оптимизированные конфигурации маршрутизации (роутинга) для клиентов Happ, INCY и Shadowrocket на базе кастомных легковесных баз GeoIP и Geosite.

Проект автоматически собирает компактные бинарные базы правил (geoip.dat и geosite.dat), исключает рекламу, телеметрию, трекеры и обеспечивает прямое соединение (Direct) с российскими сервисами без задержек VPN, направляя заблокированные и зарубежные ресурсы в прокси-туннель.


📱 Быстрая установка

Для Happ

ПрофильФайл диплинка (.DEEPLINK)JSON-конфиг (для подписки)Описание
DEFAULT DEFAULT.DEEPLINK DEFAULT.JSON Основной профиль: RU/BY, банки, гос. сервисы, Steam, Twitch напрямую. YouTube, Telegram, GitHub и зарубежный интернет — через прокси. Реклама и телеметрия заблокированы.
WHITELIST WHITELIST.DEEPLINK WHITELIST.JSON Белый список: Напрямую идут только проверенные ресурсы из geosite:whitelist и geoip:whitelist (банки, Госуслуги и др.). Весь остальной интернет — через прокси.
BASIC BASIC.DEEPLINK BASIC.JSON Базовый профиль: Настроены DoH DNS, ссылки на кастомные базы geodata и прямой доступ для системных пуш-уведомлений (geosite:apple-push, geosite:android-push), без других правил (для ручной настройки).

Для INCY

ПрофильФайл диплинка (.DEEPLINK)JSON-конфиг (для подписки)Описание
DEFAULT DEFAULT.DEEPLINK DEFAULT.JSON Основной профиль: Полная маршрутизация с разделением RU-трафика и зарубежных ресурсов.
WHITELIST WHITELIST.DEEPLINK WHITELIST.JSON Белый список: Прямой доступ только к доверенным белым спискам РФ, остальное через прокси.
BASIC BASIC.DEEPLINK BASIC.JSON Базовый профиль: DNS + базы геоданных + прямой доступ для системных пуш-уведомлений (geosite:apple-push, geosite:android-push).

Для Shadowrocket

ПрофильКонфигурационный файл (.CONF)Ссылка для импорта в один кликОписание
DEFAULT DEFAULT.CONF Импорт в Shadowrocket Основной профиль: Полный аналог DEFAULT.JSON. Российский трафик (RU/BY, банки, Госуслуги, Steam, Twitch) напрямую. Заблокированные ресурсы и остальной интернет — через прокси. Реклама и телеметрия заблокированы.
WHITELIST WHITELIST.CONF Импорт в Shadowrocket Белый список: Полный аналог WHITELIST.JSON. Напрямую идут только проверенные ресурсы РФ и 17 900+ банковских IP. Весь остальной трафик — через прокси.
BASIC BASIC.CONF Импорт в Shadowrocket Базовый профиль: DoH DNS + прямой доступ для системных пуш-уведомлений (Apple APNs/iCloud). Остальной трафик через прокси.
EXTENDED EXTENDED.CONF Пользовательский файл: Подключается через include = EXTENDED.CONF. Добавленные в него личные правила имеют наивысший приоритет и не затираются при автообновлении.

Tip

Как подключить в приложении:

  1. Через диплинк: откройте ссылку на файл .DEEPLINK, скопируйте текстовую строку схемы (happ://routing/onadd/... или incy://routing/onadd/...) и откройте её в адресной строке браузера на устройстве (браузер предложит открыть клиент).
  2. Через URL подписки: скопируйте прямую ссылку на .JSON файл и укажите её в клиенте как внешний URL правил маршрутизации (с поддержкой автообновления).
  3. В Shadowrocket: нажмите «Импорт в Shadowrocket» или скопируйте URL .CONF файла, перейдите в Config«+», вставьте ссылку и нажмите Download. Включите автообновление: SettingsUpdateConfig (или через параметр update-url).

🗺 Маршрутизация в профиле DEFAULT

Порядок применения правил (RouteOrder): block-proxy-direct.

🔴 BLOCK (блокировка)

КатегорияЗачем
🚫 geosite:win-spyОтключение телеметрии и слежки компонентов ОС Windows
🚫 geosite:torrentБлокировка публичных BitTorrent DHT-серверов и трекеров (защита VPS от абуз хостера)
🚫 geosite:category-adsБлокировка рекламы (Google Ads, РСЯ, AdFox, MyTarget, VK, Sber Ads, агрессивные баннерные сети и попандеры)

🔵 PROXY (через VPN)

Сервис / НаправлениеЗачем
🌐 geosite:category-geoblock-ruЗарубежные сервисы с геоблокировкой пользователей из РФ (Gemini, AI Studio, ChatGPT, Claude, Notion, Canva и др.)
🌐 geosite:youtubeОбход замедлений ТСПУ и стабильное воспроизведение YouTube
🌐 geosite:telegramСтабильное подключение к дата-центрам Telegram в обход блокировок
🌐 geosite:githubОбход фильтрации ресурсов и ассетов GitHub
🌐 Весь остальной зарубежный трафикВсе сайты и сервисы, не вошедшие в Direct-списки, направляются через прокси

🟢 DIRECT (напрямую без VPN)

Сервис / ДоменыЗачем
geosite:category-ru + geoip:directВсе российские и белорусские сайты, порталы и сервисы
geosite:apple-push + geosite:android-pushДоставка push-уведомлений Apple (APNs/iCloud), Android (Google FCM, Xiaomi, Huawei, Samsung) и проверка сетевого подключения (captive portal)
geosite:whitelistГосуслуги, все банки РФ (реестр ЦБ РФ), критически важные ресурсы и сервисы Google
geosite:domains-geo-detect225 сервисов проверки IP и сетевой геолокации (2ip, whoer, browserleaks, bgp.tools и др.) напрямую в обход VPN
geosite:microsoftWindows Update, Xbox и сервисы Microsoft без расхода трафика сервера
geosite:steamИгровой трафик Steam напрямую (максимальная скорость загрузки игр)
geosite:twitchВидеопотоки Twitch напрямую (экономия трафика сервера)
geosite:pinterestПрямой доступ к сервису Pinterest
geosite:private + geoip:privateЛокальные сети (RFC 1918, 127.0.0.0/8, 192.168.x.x, роутер, локальные устройства)

Note

Приоритет Google vs Gemini: Домен google.com включён в whitelist для быстрого прямого поиска без задержек VPN. При этом сервисы Gemini и AI Studio (gemini.google.com, generativelanguage.googleapis.com) гарантированно направляются в прокси, так как правило geosite:category-geoblock-ru имеет более высокий приоритет исполнения (RouteOrder: block-proxy-direct).


🛡️ Маршрутизация в профиле WHITELIST (Белый список)

Профиль предназначен для режима максимальной приватности или работы в небезопасных сетях: весь интернет-трафик по умолчанию направляется в зашифрованный VPN-туннель, за исключением критически важных российских сервисов, блокирующих зарубежные IP.

Порядок применения правил (RouteOrder): block-proxy-direct.

🔴 BLOCK (блокировка)

  • 🚫 geosite:win-spy — телеметрия и слежка компонентов ОС Windows
  • 🚫 geosite:torrent — публичные BitTorrent трекеры и DHT (защита VPS)
  • 🚫 geosite:category-ads — реклама и трекеры

🟢 DIRECT (напрямую без VPN — только доверенные ресурсы)

Категория / СписокЧто входит
geosite:whitelist860+ проверенных корневых доменов ключевых российских сервисов (банки, Госуслуги, суды, ФНС, ЕМИАС, аптеки, маркетплейсы, доставка, транспорт, авиация, телеком, облака)
geoip:whitelist17 900+ доверенных IP-диапазонов РФ для гарантированной работы банковских приложений и государственных порталов
geosite:apple-push + geosite:android-pushPush-уведомления Apple (APNs/iCloud), Android (Google FCM, Xiaomi, Huawei, Samsung) и проверка сетевого подключения (captive portal)
geosite:private + geoip:privateЛокальные сети (RFC 1918, роутер, домашние устройства)

🔵 PROXY (через VPN)

  • 🌐 geosite:category-geoblock-ru — зарубежные сервисы с геоблокировкой пользователей из РФ
  • 🌐 Весь остальной трафик — все поисковики, зарубежные сайты, социальные сети, медиа и сервисы, не входящие в белый список, идут через защищённый туннель.

🔒 DNS и защита от утечек

В конфигурациях используется защищённый протокол DNS-over-HTTPS (DoH):

НаправлениеПротокол и серверКак работает
🏠 Domestic (Direct) Яндекс DNS (DoH)
https://common.dot.dns.yandex.net/dns-query
Используется для прямого мгновенного резолвинга российских сайтов через локального провайдера. Минимальный пинг в РФ.
🌍 Remote (Proxy) Quad9 DNS (DoH)
https://dns.quad9.net/dns-query
Резолвинг зарубежных и заблокированных сайтов. Запросы шифруются и идут через зашифрованный VPN-туннель (не перехватываются ТСПУ). Не ведет логов, юрисдикция Швейцарии, фильтрация фишинга.

Статические записи (DnsHosts / [Host])

Для гарантированного доступа к Личному кабинету налогоплательщика ФНС РФ в конфигах заданы статические сопоставления:

  • lkfl2.nalog.ru213.24.64.175
  • lknpd.nalog.ru213.24.64.181

⚙️ Особенности кастомных баз данных

🌎 GeoIP (geoip.dat)

Сборка базы выполняется с помощью утилиты Loyalsoldier на основе конфигурации geoip/config.json:

  • Включает подсети РФ и РБ из трёх авторитетных источников: MaxMind GeoLite2 ASN, IPinfo и DB-IP. Базы GeoLite2 и DB-IP конвертируются автономным скриптом geoip/buildtools/parse_country_db.py напрямую из выгрузок @ip-location-db без сторонних промежуточных сервисов.
  • Кастомные списки (geoip/CUSTOM-LIST-ADD.txt):
    • Инфраструктура Yandex Cloud / HLL LLC (AS51115);
    • Зарубежные точки присутствия Яндекса (Yandex Oy Финляндия, Yandex Europe B.V., серверы в США, Казахстане, Беларуси);
    • Зарубежные серверы ВКонтакте и Mail.ru Games;
    • Официальные диапазоны шлюзов Apple Push Notification Service (APNs) для решения проблем с доставкой уведомлений на iPhone и Mac.
  • Кастомный белый список (geoip/CUSTOM-WHITELIST.txt): 17 900+ доверенных диапазонов для профиля WHITELIST.
  • Точечные исправления (geoip/CUSTOM-FIX-ADD.txt): принудительное возвращение в direct адресов, ошибочно заблокированных РКН (например, images.biggeek.ru).
  • Исключение блокировок и CDN:
    • Вычитание списков блокировок РКН: Re:filter + Antifilter.Network;
    • Вычитание зарубежных CDN, а также европейских хостингов (Hetzner, ZeroCDN) для исключения утечек прокси-трафика в прямой канал.

🌐 Geosite (geosite.dat)

Сборка базы выполняется компилятором domain-list-community из файлов правил geosite/data/:

  • Очистка от мусора: включены только категории, реально используемые в роутинге (category-ru, category-geoblock-ru, whitelist, apple-push, android-push, youtube, telegram, github, microsoft, steam, twitch, pinterest, domains-geo-detect, category-ads, torrent, win-spy, private).
  • База whitelist: более 850 проверенных корневых доменов по 13 жизненно важным отраслям РФ (госуслуги, суды, банки, медицина, ритейл, доставка, транспорт, образование, страхование, телеком, облака, медиа), агрегированных из открытых белых списков, pincetgore/amnezia-app-ru-list и официального реестра ЦБ РФ.
  • Утилиты валидации и дедупликации (geosite/buildtools/):
    • lint_rules.py: статический анализатор синтаксиса, дубликатов, избыточных поддоменов и валидации CIDR в CI/CD:
      python3 geosite/buildtools/lint_rules.py --fail-on-error
    • deduplicate.py: автоматическая проверка доступности доменов через российские и зарубежные DNS-ноды для исключения доменов, чьи IP уже полностью входят в Direct-диапазоны. Поддерживает запуск как с удаленной загрузкой, так и с локальным файлом:
      python3 geosite/buildtools/deduplicate.py -f release/text/direct.txt geosite/data/category-ru

🔄 Автоматическая сборка и раздача геоданных

Пайплайн GitHub Actions (.github/workflows/build-and-update.yml):

  1. Параллельно загружает актуальные выгрузки блокировок и геобаз (Re:filter, Antifilter, IPinfo, DB-IP, MaxMind GeoLite2).
  2. Компилирует бинарные файлы geoip.dat и geosite.dat.
  3. Пушит результаты в изолированную ветку release (без засорения ветки main тяжелыми бинарными diff'ами).
  4. Раздаёт файлы через Anycast CDN jsDelivr:
    • https://cdn.jsdelivr.net/gh/pincetgore/PinRouting@release/geoip.dat
    • https://cdn.jsdelivr.net/gh/pincetgore/PinRouting@release/geosite.dat
  5. Публикует GitHub Releases с бинарниками, контрольными суммами (.sha256) и архивом текстовых списков (text.tar.gz).
  6. Обновляет таймстемп LastUpdated в JSON-конфигах, перегенерирует диплинки и собирает конфигурации Shadowrocket.
  7. Очищает кэш CDN jsDelivr через Purge API.

Расписание запуска: ежедневно в 04:00 UTC, при каждом коммите в репозиторий или вручную через вкладку Actions.


📂 Структура репозитория

├── .github/workflows/
│   └── build-and-update.yml   # Автоматизированный CI/CD пайплайн сборки
├── HAPP/                      # Конфигурации и диплинки для клиента Happ
│   ├── DEFAULT.JSON / .DEEPLINK
│   ├── WHITELIST.JSON / .DEEPLINK
│   └── BASIC.JSON / .DEEPLINK
├── INCY/                      # Зеркальные конфигурации для клиента INCY
│   ├── DEFAULT.JSON / .DEEPLINK
│   ├── WHITELIST.JSON / .DEEPLINK
│   └── BASIC.JSON / .DEEPLINK
├── SHADOWROCKET/              # Конфигурации и списки правил для Shadowrocket
│   ├── DEFAULT.CONF           # Основной профиль маршрутизации
│   ├── WHITELIST.CONF         # Профиль белого списка РФ
│   ├── BASIC.CONF             # Базовый профиль для подписки
│   ├── EXTENDED.CONF          # Шаблон пользовательских правил (include)
│   ├── rules/                 # Сгенерированные списки правил (.list)
│   └── tools/                 # Скрипты генерации конфигураций и правил
│       └── build_shadowrocket.py
├── geoip/                     # Конфигурация и кастомные списки GeoIP
│   ├── buildtools/            # Скрипты генерации IP-списков по странам
│   ├── config.json            # Правила объединения баз и вычитания списков РКН
│   ├── CUSTOM-FIX-ADD.txt     # Точечные фиксы ложных блокировок
│   ├── CUSTOM-LIST-ADD.txt    # Зарубежная инфраструктура Yandex, VK, Apple APNs
│   └── CUSTOM-WHITELIST.txt   # Кастомный белый список подсетей
├── geosite/
│   ├── buildtools/            # Скрипты тестирования и дедупликации доменов
│   └── data/                  # Текстовые списки доменов по категориям
├── .gitignore                 # Исключение временных файлов и build artifacts (release/)
├── LICENSE                    # Лицензия MIT
└── README.md                  # Документация проекта

🔗 Источники и благодарности

Проект агрегирует данные, списки и инструменты из следующих открытых источников:

🛠 Инструменты сборки

🌍 Базы IP-геолокации (GeoIP)

  • @ip-location-db — ежедневные выгрузки сопоставления IP и стран (GeoLite2, DB-IP Lite).
  • Davoyan/ipinfo — ежедневные списки IP-диапазонов IPinfo Lite для России и Беларуси.
  • Netsyms / MaxMind — зеркало базы GeoLite2 ASN для фильтрации подсетей по номерам автономных систем (ASN).

🛡 Списки блокировок РКН (для исключения из прямого трафика)

  • Re:filter — актуальные списки заблокированных ресурсов (ipsum, community).
  • Antifilter.Network — выгрузка заблокированных IP-адресов.
  • Antifilter Community — общественный список блокировок.

🌐 Исключение зарубежных CDN и хостингов

📋 Белые списки и правила маршрутизации


📄 Лицензия

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


☕ Поддержка автора

Если проект оказался вам полезен и помогает удобно маршрутизировать трафик, вы можете поддержать его развитие и поблагодарить автора:

Поддержать проект

About

Правила маршрутизации для Happ, INCY и Shadowrocket

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages