Вступление

В стандартных клиентах, таких как v2rayN, используются специальные (geo) файлы, которые позволяют проксировать, блокировать трафик, а также пропускать его напрямую в зависимости от домена/IP адреса назначения. Пользователь @runetfreedomсоздал такие файлы для российских пользователей, за что ему большое спасибо. В теории, настроив маршрутизацию с этими файлами один раз, не нужно постоянно включать/выключать VPN или прокси при пользовании интернетом, так как клиент вроде v2rayN проксирует только заблокированные сайты. На практике же у меня при настроенной маршрутизации некоторые и зарубежные, и российские сайты не загружались: из того что помню сайт pogodaiklimat.ru; сайты, связанные с разработкой на python вроде pip.pypa.io. То есть с одной стороны, в этих geo файлах (@runetfreedom/russia-v2ray-rules-dat) список заблокированных сайтов/IP неполный, а с другой, есть лишние записи, которые блокируют загрузку незаблокированных сайтов. Также в этих файлах очень много категорий (рекламные сайты, яндекс, гугл, блок-лист1, блок-лист2, ...), записи между которыми дублируются. Я хотел сделать так, чтобы при включенном VPN/прокси клиенте все сайты и сервисы работали, а сами geo файлы (geosite.dat и geoip.dat) имели минимальный размер без дублирования записей, чтобы в итоге с помощью этих файлов можно было настроить маршрутизацию на роутере с OpenWrt.

Идем противоположным путем

Абсолютно все geo файлы, которые я встречал, подразумевают такое использование: если домен/IP сервиса есть в файле, подключаемся через прокси, иначе напрямую. Собрал новые geo файлы, в которых, наоборот, хранятся разрешенные домены и IP для подключения из России: по ним переход напрямую, а подключение по умолчанию проксируется.

GeoSite.dat

Ссылка на репозиторий: @golukon/russia-only-geosite.
Категория: geosite:ru-inside — домены, доступные внутри РФ (в т.ч. недоступные из-за границы, белые списки, гос сервисы). Дублирование доменов отсутствует.

Используемые источники данных:

GeoIP.dat

Ссылка на репозиторий: @golukon/russia-only-geoip.

Категории:

  • geoip:ru — список всех российских IPv4-адресов,

  • geoip:private — приватные и зарезервированные сети, например 10.0.0.0/8, 127.0.0.0/8, 192.168.0.0/16.

Используемые источники данных:

Пример конфигурации для v2rayA

default: proxy
ip(geoip:private)->direct

# write your own rules below
ip(geoip:ru)->direct
domain(geosite:ru-inside)->direct

Пример конфигурации для v2rayN/v2rayNG

[
    {
        "enabled": true,
        "ip": [
            "geoip:private"
        ],
        "locked": false,
        "outboundTag": "direct",
        "remarks": "RU-0 [Приватные сети напрямую]"
    },
    {
        "enabled": true,
        "ip": [
            "geoip:ru"
        ],
        "locked": false,
        "outboundTag": "direct",
        "remarks": "RU-0 [Российские IPv4 напрямую]"
    },
    {
        "domain": [
            "geosite:ru-inside"
        ],
        "enabled": true,
        "locked": false,
        "outboundTag": "direct",
        "remarks": "RU-0 [Российские домены напрямую]"
    },
    {
        "enabled": true,
        "locked": false,
        "outboundTag": "proxy",
        "port": "0-65535",
        "remarks": "RU-0 [Остальное прокси]"
    }
]

Чтобы применить данную конфигурацию

  • в v2rayN: перейдите в настройки->настройки маршрутизации->расширенная функция->добавить (из файла/буфера обмена),

  • в v2rayNG: перейдите в маршрутизация->импорт набора правил (из буфера обмена).

Заключение

Размер geo файлов измеряется килобайтами, по субъективным ощущениям скорость загрузки увеличилась. Понятно, что добавление всех российских IPv4 не обеспечивает стопроцентную правильную маршрутизацию при блокировках, однако все сайты, с которыми раньше были проблемы при включенном VPN, теперь работают.

Комментарии (20)


  1. MAXH0
    02.07.2026 17:40

    То, что у Вас до сих пор что-то работает — не Ваша заслуга, а их недоработка.


    1. Terimoun
      02.07.2026 17:40

      Эта фраза применима к любому работающему софту в энтерпрайзе


  1. max9
    02.07.2026 17:40

    как плохо не читать документацию, V2RAY_CONF_GEOLOADER=memconservative решает все проблемы с памятью.

    и да, "port": "0-65535" - это же нейрослоп вам написал?


    1. lukon Автор
      02.07.2026 17:40

      На роутерах в целом мало места для хранения файлов. В мой конечно 150 Мб влезет, но зачем, есть можно отделаться сотней килобайт?

      и да, "port": "0-65535" - это же нейрослоп вам написал?

      За основу брал конфиг из интернета, вроде бы от runetfreedom


      1. vl12
        02.07.2026 17:40

        port - это официальное решение: https://github.com/2dust/v2rayNG/discussions/3658


  1. TitaniumLexa
    02.07.2026 17:40

    В базовых наборах правил V2RayN тоже встречается "port": "0-65535"


  1. lalazina891
    02.07.2026 17:40

    Интересный подход!


  1. MountainGoat
    02.07.2026 17:40

    Очень плохой подход с этой геолокацией. Достаточно арендовать VPS в европе, забанить его на ТСПУ, поместить пиксель с него на главной Озона - и вот список всех самодельных VPNов в кармане, выходных нод хотя бы.


    1. lukon Автор
      02.07.2026 17:40

      Не вижу разницы. Во-первых, можно арендовать сервер с уже забаненным IP (список правил же в открытом доступе). Во-вторых, с чего бы вдруг Озон будет на своей странице размещать ссылки на левые ресурсы? Обычные пользователи тут ничего не сделают


      1. Z55
        02.07.2026 17:40

        с чего бы вдруг Озон будет на своей странице размещать ссылки на левые ресурсы? 

        Как один из метода детектирования КВН (вы же помните про методичку от минцифры), почему нет?


        1. lukon Автор
          02.07.2026 17:40

          У необычных пользователей возможностей много, см. комментарий 1


  1. hphphp
    02.07.2026 17:40

    поместить пиксель с него на главной Озона - и вот список всех самодельных VPNов в кармане,

    это как? Направьте на пусть истинный почитать практику?


    1. MiracleUsr
      02.07.2026 17:40

      А что тут непонятного?

      Самый обычный трекинг, что один и тот же пользователь на хосты в пределах РФ заходит с одного IP (с российской AS), а на хосты вне РФ - с другого IP (с нероссийской AS) позволяет довольно определено сказать, что у него прокси/впн со правилами по geoip и увидеть IP его выходной ноды (второй адрес).


  1. NikaLapka
    02.07.2026 17:40

    Кто может объяснить, вот есть список делегированных адресов RIPE NCC https://ftp.ripe.net/ripe/stats/2026/ обновляется ежедневно, можно сделать выборку по 'RU' и посчитать маску, всего получается 11 тыс. адресов. Но почему-то адептов роутеров с openwrt так тянет в wget ttp://imnotvirus.net/vasya_geoip.sh && chmod +x vasya_geoip.sh && ./vasya_geoip.sh . Просто какая-то безграмотность.. с годами всё больше и чаще начинаю понимать профессора Преображенского :) .


    1. Terimoun
      02.07.2026 17:40

      Адептов OpenWrt тянет туда, где уже кто-то пострадал до них и выложил готовое решение на гитхаб


  1. r23232r
    02.07.2026 17:40

    так уже есть же профиль bypass Russia

    Скрытый текст


    1. lukon Автор
      02.07.2026 17:40

      Не подскажите название программы? Интересно что за профили такие, откуда они скачиваются


      1. igotherback
        02.07.2026 17:40

        Похоже на Nekobox


  1. Terimoun
    02.07.2026 17:40

    Наконец-то до кого-то дошло, что качать мегабайтные списки блокировок на дохлый роутер это путь в никуда


  1. 4385708alex91
    02.07.2026 17:40

    А сам хабр или 4pda получается тоже находятся внутри ru? Просто на эти ресурсы тоже имеет смысл ходить через vps, иначе будут не доступны некоторые статьи