← К библиотеке
Каскады Теория

Гео-разделение трафика: зачем маршрутизация

Наивный VPN гонит весь трафик через ноду — и клиент теряет банки, маркетплейсы, ловит «VPN detected» и уходит. Правильный сервис маршрутизирует: заблокированное — через ноду, российское — напрямую. Разберу, зачем это, почему антифрод сидит на зарубежных доменах и почему порядок правил важнее их списка. Без конфигов.

Перейти к практике

Почему «всё через ноду» — это плохо

Самый простой VPN заворачивает весь трафик в туннель. Работает, но для российского клиента это прямой путь к оттоку. С 2025–2026 российские сервисы по требованию регулятора режут доступ через VPN: маркетплейсы, кинотеатры, платёжки, банки, госуслуги, операторы. Если весь трафик клиента идёт через заграничную ноду — он теряет к ним доступ, видит «вход из-за рубежа», ловит капчи и уходит.

Решение — сплит-роутинг: делить трафик по назначению.

text
РФ-сайты/сервисы  ──▶  direct   (с домашнего IP клиента, быстро и не блокируется)
Всё остальное     ──▶  proxy    (через ноду — то, что заблокировано в РФ)

Бонусом РФ-сайты грузятся быстрее (без крюка за границу), а нагрузка на ноды падает. Но главное — клиент получает «невидимый» VPN: заблокированное открывается, а российские сервисы и IP-проверки ведут себя так, будто VPN выключен.

Что даёт роутинг через ядро Xray

Ключевая идея: сплит живёт в ядре Xray на клиенте, и это даёт то, чего «тупой» полный туннель не может в принципе.

  • YouTube отдельным маршрутом. Его можно увести на российский выход отдельно от остального. С РФ-IP реклама почти не крутится — и при этом видео не тащит крюк за границу. (Про механику «почему РФ-IP убирает рекламу, но не снимает замедление» — отдельный разговор в разделе про Google.)
  • Обход «VPN detected» у банков и соцсетей. Их отправляешь в direct → они видят реальный домашний IP клиента → работают штатно, без плашек и капч.
  • Настоящий IP везде, где не нужен обход. Ядро трогает только заблокированное; всё остальное идёт напрямую с реальным адресом. Поэтому анти-фрод и геолокация видят настоящего клиента, а не «человека из другой страны».
  • Быстрее и дешевле. РФ-трафик не делает крюк, на платные ноды идёт только реально заблокированное.

Как читать правила: сверху вниз, первое совпадение

Это основа всего, без неё роутинг превращается в лотерею. Правила выполняются по порядку, и выигрывает первое совпадение. Как только пакет подошёл под правило — он уходит по нему, остальные правила уже не смотрятся.

Из этого следует, что порядок важнее списка. Один и тот же набор правил, переставленный местами, даёт разное поведение. Классическая база выглядит так:

  1. IP из РФ и приватныеdirect. Ловит РФ-сервисы по IP, даже если домена нет в списке.
  2. РФ-доменыdirect. Встроенный список тысяч RU-доменов плюс явный список критичных (банки, госуслуги, маркетплейсы, операторы).
  3. Реклама/трекерыblock (приятный бонус клиенту, опционально).
  4. Всё остальноеproxy. Сюда попадает то, что заблокировано в РФ.

Меняешь порядок — меняешь логику. Поставишь proxy выше РФ-правил — весь трафик уйдёт в туннель, и весь смысл потерян.

Неочевидное: антифрод сидит на зарубежных доменах

Самый ценный и самый контринтуитивный момент. Кажется логичным: российский сервис — российский домен — отправляем в direct по .ru. Но РФ-сервисы палят VPN не по своему домену, а через анти-фрод-движки, которые живут на зарубежных доменах. Магнит, крупные банки, сети магазинов, почти все мобильные приложения проверяют «VPN ли это» через сторонние домены аналитики и атрибуции — а они не .ru.

И вот в чём ловушка: если гнать такой зарубежный анти-фрод-домен через российскую ноду, то по гео назначения он уйдёт за границу → движок увидит датацентровый IP → «VPN detected». Даже если сам сервис ты вроде бы отправил напрямую.

Вывод, который многие пропускают: в direct кладут не только .ru-домены, но и зарубежные домены РФ-сервисов (их анти-фрод, аналитику, атрибуцию мобильных аппов). Только выход с домашнего резидентного IP клиента убеждает эти движки, что VPN нет. Домашний IP для анти-фрода лучше любого датацентрового.

Ещё три вещи, ломающие наивную схему

Из боевого опыта, чтобы не наступить:

  • geosite/geoip могут уронить клиента. Правила выполняются на клиенте его файлами geo-баз, и у части юзеров они урезаны — ядро падает («нет секции YOUTUBE»). Держать geo-файлы на нодах бесполезно: правила-то на клиенте. Надёжнее geo-dat-free — явные регэкспы, домены и CIDR вместо ссылок на geo-базы.
  • Порядок частных случаев. Сервисы, замедленные в РФ (тот же TikTok), надо ставить выше РФ-правил, иначе они уйдут в direct и не откроются. А сайты-проверки IP, наоборот, гонят на российский выход, чтобы клиент видел РФ-IP и не пугался «мой VPN палится».
  • QUIC на 443 глушат. Иначе видео «залипает» в туннеле — застрявший QUIC через высоколатентный канал даёт симптом «скачивание идёт, а видео нет».

Итог

Сплит-роутинг — это не «настройка для галочки», а разница между VPN, от которого уходят, и VPN, который клиент не замечает в быту. Заблокированное открывается через ноду, российское живёт с домашним IP, анти-фрод молчит, проверки видят настоящий адрес. Сложность прячется в двух местах: порядке правил и понимании, что российские сервисы палятся через зарубежные домены.

Дальше — в практике: готовый конфиг сплит-роутинга, список критичных доменов, geo-dat-free подход и доставка правил клиенту через шаблон подписки. Пошагово — в статье «Правила маршрутизации: настройка».

Следующий гайд Правила маршрутизации: настройка → Не понравилась статья или что-то непонятно? Напишите мне — помогу или поправлю. @notrealvpn →
Материал носит образовательный характер и посвящён инженерии сетевой инфраструктуры. Вы отвечаете за соблюдение законов своей юрисдикции.