Как правильно настроить маршрутизацию трафика в Android‑приложении v2rayNG?

В связи с последними новостями мне нужно настроить клиент v2rayNG так, чтобы при заходе на российские сайты соединение шло напрямую, а не через прокси. В разделе маршрутизация я в поле «домен» добавил <i>geosite:ru</i>, а в поле «IP» — <i>geoip:ru</i>. После этого клиент перестал устанавливать соединение; когда я удалил <i>geosite:ru</i>, соединение с сервером восстановилось, но доступ к русским сайтам всё равно шёл через прокси. В разделе «Файлы ресурсов» я пробовал другие геофайлы (runetfreedom), но безрезультатно. Что можно сделать, чтобы решить эту проблему?
  • 7 апреля 2026 г. 22:02
Ответы на вопрос 4
Коротко — проблема почти наверняка в ресурсах (geosite/geoip) и/или в имени категории, которую вы указали. Когда v2ray видит в правиле ссылку на несуществующий набор (geosite:... или geoip:...), ядро завершается с ошибкой и клиент не подключается. Когда вы удалили geosite — ядро пошло, но у вас не было правильного правила/ресурса, поэтому трафик всё равно шёл через прокси.

Что сделать — пошагово

1) Обновите/установите geosite.dat и geoip.dat
  - В v2rayNG зайдите в «Файлы / Resources» (или похожий раздел) и нажмите «Обновить ресурсы» (Update resources). Если нет — скачайте вручную:
    - Репозиторий с наборами доменов: https://github.com/v2fly/domain-list-community
    - Скомпилированные dat-файлы иногда выкладывают в релизах или можно собрать самому. Нужны geosite.dat и geoip.dat.
  - Поместите эти файлы в каталог ресурсов приложения (в UI v2rayNG обычно показывается путь) и перезапустите приложение.

2) Убедитесь в правильном имени категории
  - Названия категорий в geosite/geoip не всегда «ru». В официальном наборе чаще встречается «geolocation-ru» и т. п. Поэтому правило типа geosite:ru выдаст ошибку, если такой категории нет в geosite.dat.
  - Проверьте содержимое geosite.dat/geoip.dat (или список категорий в репозитории domain-list-community) и используйте точное имя. Например, в актуальных списках для геолокации часто используется:
    - geosite:geolocation-ru
    - geoip:ru
  - Если не уверены — откройте geosite.dat (или список на GitHub) и найдите нужную запись.

3) Правильное правило маршрутизации (пример)
  - В конфиге/GUI добавьте правило, которое идёт выше остальных (порядок важен):
    - domain: ["geosite:geolocation-ru"]
    - ip: ["geoip:ru"]
    - action / outboundTag: направлять в «direct» (в v2ray это обычно outbound tag свободы/прямого выхода, например "direct" или "freedom")
  - В формате JSON (пример):
    {
      "type": "field",
      "domain": ["geosite:geolocation-ru"],
      "ip": ["geoip:ru"],
      "outboundTag": "direct"
    }
  - В v2rayNG в UI это может быть форма «Routing -> Add -> Domain / IP -> Outbound = Direct».

4) Проверьте логи, если клиент не стартует
  - Если после добавления правила клиент не подключается — откройте логи (в v2rayNG есть лог) и найдите ошибку. Обычно там будет сообщение «unknown geosite:…» или «unknown geoip:…». Это подтвердит, что имя категории отсутствует в ресурсах.
  - Если ошибка про outboundTag — убедитесь, что такой outbound существует в конфиге (тег для «direct»).

5) Если geosite/geoip вам не подходят — добавьте явные домены/суффиксы
  - Можно в обход geosite добавить список доменных суффиксов или отдельных доменов (*.ru, *.рф, список крупных .ru сайтов) в поле Domain маршрута. Это менее удобно, но работает без dat-файлов.

6) Проверка
  - После настроек перезапустите клиент и проверьте по логам, что соединение с сервером устанавливается, и что для сайтов .ru используется outboundTag direct.
  - Можно проверить внешний IP на ru-сайтах (или через сервис whatismyip) — должен показывать ваш локальный провайдер, а не прокси.

Коротко: загрузите/обновите geosite.dat и geoip.dat, убедитесь, что используете точные имена категорий (возможно geosite:geolocation-ru, а не просто geosite:ru), поставьте правило выше остальных и укажите выход «direct». Логи подскажут точную причину, если всё ещё не стартует. Если хотите — пришлите скрин/текст вашего правила и фрагмент лога — помогу конкретнее.
Если это приложение для ПК то там в самом клиенте есть Локализация маршрутов, активируешь для РФ и все. Ничего руками прописывать не надо. <br/> А если хочешь руками писать маршруты то начинать надо с гугла. Это первая же ссылка <a href="https://github.com/2dust/v2rayNG/discussions/4761" rel="nofollow">https://github.com/2dust/v2rayNG/discussions/4761</a>
Проблема в неправильном поле: geosite:ru и geoip:ru нужно ставить в "Прямые" (direct), а не в outbound прокси или домен/IP случайно. <br/> <br/> Стандартные geo файлы v2ray не всегда распознают geosite:ru полностью, отсюда сбои <br/> <br/> Правильная настройка: <br/> Скачай geoip.dat и geosite.dat с <a href="https://github.com/runetfreedom/russia-v2ray-rules-dat/releases" rel="nofollow">https://github.com/runetfreedom/russia-v2ray-rules...</a> (runetfreedom). <br/> В v2rayNG > Настройки > Файлы ресурсов > 3 точки > Добавить файлы > Загрузи их. <br/> Маршрутизация > Пользовательские правила > Прямые: geoip:ru,ru,su,xn--p1ai (через запятую). <br/> Доменная стратегия: IPOnDemand. <br/> Проксируемые: оставь пусто или только заблокированные (geosite:ru-blocked, если нужно). <br/> Перезапусти подключение. RU сайты пойдут напрямую, остальное - через прокси
Смена на runetfreedom не помогла. Но помогло сменить значение с <i>geosite:ru</i> , на <i>geosite:category-ru</i> и смена доменной стратегии на IPOnDemand. Однако (возможно не из-за этого) одни и те же конфигурации начали работать по-разному на разных устройствах. Имею ввиду не заход на ру сайты, а вообще, где-то есть соединение, где-то нету. А так вроде бы работает :D
Похожие вопросы