Тот самый момент, когда простой VPN на роутере уже не спасает. Всё или едет через туннель и ломает банки с играми, или идёт напрямую и внезапно упирается в блокировки. На OpenWrt это особенно болезненно: вариантов много, готовых решений мало, а собирать «велосипед» из iptables, policy based routing и скриптов хочется далеко не всем.
Podkop решает эту боль довольно изящно. Это надстройка над sing-box с удобным веб-интерфейсом, которая превращает роутер в нормальный диспетчер трафика: нужные домены уезжают в VPN или прокси, остальное живёт своей прямой жизнью. При этом не нужно устраивать шаманство с конфигами и вручную выверять правила в firewall — всё крутится в одном месте, наглядно и предсказуемо.
Зачем вообще нужен Podkop
Классическая схема «поднять VPN на OpenWrt и отправить туда весь трафик» перестаёт работать, как только в картине мира появляются банки, госуслуги, игры с региональной привязкой и пара корпоративных VPN от работодателя.
Хочется, чтобы:
- блокировки и геоограничения исчезли для «человеческих» сервисов вроде мессенджеров, соцсетей, ИИ и стримингов;
- банки, игры, рабочие ресурсы шли напрямую и не пытались авторизоваться из условной «Исландии»;
- всё это переключалось в одном месте — на роутере, а не руками на каждом устройстве.
Podkop как раз про такую точечную маршрутизацию: не «всё в VPN» и не «ничего в VPN», а «вот эти домены и сети — туда, остальные — сюда». Внутри за это отвечает sing-box и FakeIP, а на поверхности — аккуратный интерфейс в LuCI, который прячет всю сложность.
Как это устроено в общих чертах
Под капотом Podkop делает три вещи.
Во-первых, управляет выходами. Он не поднимает туннель сам, но умеет использовать уже настроенные:
- WireGuard / AmneziaWG;
- OpenVPN или OpenConnect;
- VLESS и Shadowsocks в виде прокси.
Для него это просто разные «выходы», между которыми можно переключаться и которые можно комбинировать в разных профилях.
Во-вторых, работает со списками. Именно списки задают логику:
- какие домены и подсети должны уходить в туннель;
- что всегда идёт напрямую и никогда не попадает под проксирование.
Можно опираться на готовые наборы (например, списки запрещённых доменов), а можно вести полностью свои, точечно под свою инфраструктуру.
В-третьих, крутит DNS и FakeIP. Podkop завязан на split-DNS: часть доменов резолвится через особую схему с FakeIP, остальное — как обычно. Это позволяет маршрутизировать по доменам, а не пытаться ловить ускользающие IP руками.
Установка на OpenWrt без шаманства
Ниже — актуальная установка по официальной документации: https://podkop.net/docs/install/
Официальный репозиторий: github.com/itdoginfo/podkop
Релизы (ipk): https://github.com/itdoginfo/podkop/releases
Podkop собирается автоматически; готовые пакеты лежат в релизах.
Пакет написан на ash, поэтому podkop_*.ipk и luci-app-podkop_*.ipk подходят для всех архитектур.
Тестировался на ванильной OpenWrt 24.10.
Важно: поддержка apk на данный момент отсутствует.
Требования
- OpenWrt 24.10.
- Минимум 20MB свободного места на NAND (как зависимость ставится
sing-box).
Автоматическая установка и обновление
Официальная команда из документации:
sh <(wget -O - https://raw.githubusercontent.com/itdoginfo/podkop/refs/heads/main/install.sh)
Если podkop уже установлен — произойдёт обновление.
Если у вас shell не поддерживает синтаксис <(...), используйте эквивалентный вариант:
wget -O - https://raw.githubusercontent.com/itdoginfo/podkop/refs/heads/main/install.sh | sh
Ручная установка из пакетов
- Обновить индексы пакетов, чтобы корректно подтянулись зависимости:
opkg update
Скачать из релиза пакеты
podkop_*.ipkиluci-app-podkop_*.ipk.Установить (порядок важен): сначала
podkop, затемluci-app-podkop.
# Install podkop first
opkg install /tmp/podkop_*.ipk
# Then LuCI UI
opkg install /tmp/luci-app-podkop_*.ipk
Установка на 23.05
OpenWrt 23.05 официально не рекомендуется для Podkop: версии 0.5.0+ требуют sing-box 1.12 и jq 1.7.1.
Варианты:
- Установить вручную релиз
v0.4.11(последний, который работает со старымsing-box/jq): https://github.com/itdoginfo/podkop/releases/tag/v0.4.11 - Установить вручную
sing-boxиjqиз пакетов для 24.10 и затем вручную поставить Podkop из релизов.
Первый запуск и базовая настройка
После установки в веб-интерфейсе OpenWrt появляется раздел Podkop (Services → Podkop). Дальше последовательность примерно такая:
- Добавить конфигурацию прокси. В настройках вставить строку конфига VLESS:
vless://your-uuid@server.example.com:443?encryption=none&security=tls&type=tcp&host=server.example.com#MyVLESS
- Включить сервис и дождаться, пока он поднимет sing-box.
- Проверить логи: убедиться, что лог не сыплется ошибками по DNS, интерфейсам и конфигурации.
- Выбрать выход — туннель или прокси, который уже настроен на роутере.
После этого можно переходить к сути — настройке, что именно нужно отправлять через этот выход.
Маршрутизация по доменам и сетям
Сердце Podkop — списки. На практике их удобно делить на три группы.
Первая — то, что обязательно должно идти через туннель. Сюда попадают:
- заблокированные домены и сервисы;
- платформы с жёсткой геопривязкой контента;
- зарубежные ИИ, dev-сервисы и прочие штуки, которые любят «нормальный мир» снаружи.
Вторая — то, что принципиально не должно трогаться.
Это:
- банки и платёжки;
- госуслуги и похожие государственные порталы;
- игры и игровые лаунчеры, которые орют, увидев страну не из списка.
Третья — сетевые исключения.
Иногда проще указать подсеть или конкретный IP, чем пытаться поддерживать десятки доменов. Особенно это касается внутренней инфраструктуры (NAS, VPN от работодателя, собственные сервисы) и странноведущих себя сторонних решений.
Комбинация этих списков и даёт тот самый «эффект незаметности»: пользователь просто живёт в интернете, а роутер сам решает, что куда вести, не ломая то, что и так нормально работает напрямую.
DNS, FakeIP и подводные камни
Раз уж Podkop во многом держится на DNS, тут важно не стрелять себе в ногу. Основных правил всего несколько:
- не ставить поверх него агрессивные DNS-демоны, которые переписывают запросы по-своему;
- аккуратно относиться к AdGuard Home и похожим решениям — либо интегрировать, либо развести зоны ответственности;
- не смешивать кучу разных DoH/DoT-клиентов, если нет чёткого плана, что кто делает.
Что такое FakeIP
FakeIP — технология, которая присваивает доменам «фиктивные» IP-адреса из специального диапазона (обычно 198.18.0.0/15). Когда приложение обращается к домену, DNS возвращает такой фейковый адрес, а sing-box перехватывает запросы к нему и маршрутизирует на основе доменного имени, а не реального IP.
Это решает проблему сервисов с постоянно меняющимися IP (CDN, облачные платформы) и позволяет точно контролировать маршрутизацию. Снаружи это практически не видно: всё просто работает, если не вмешиваться в процесс лишними «улучшайзерами».
Проверка и отладка
После базовой настройки всегда полезно пройтись по чек-листу.
Что имеет смысл проверить:
- открываются ли заблокированные или геозависимые сайты так, как задумано;
- не сломались ли банки, платёжки и рабочие сервисы;
- не полезли ли странные предупреждения в играх и клиентах, чувствительных к региону.
Если что-то ведёт себя не так:
- заглянуть в логи sing-box и системный лог OpenWrt;
- проверить, жив ли туннель и не упал ли он в момент теста;
- убедиться, что никакой сторонний DNS-клиент не перепиливает запросы мимо Podkop.
В большинстве случаев проблема оказывается довольно приземлённой: старый мусор в конфигурации роутера, забытый «экспериментальный» пакет или не до конца настроенный VPN.
На чём всё это жить будет
Podkop не привязан к какой-то одной железке, ему достаточно адекватного OpenWrt и минимального запаса по ресурсам.
На современных роутерах и небольших ARM-платах он ведёт себя вполне спокойно:
- CPU почти не напрягается на типичной домашней нагрузке;
- память не раздувается из-за какой-то экзотики в реализации;
- обновления ставятся штатно и не пытаются сломать остальную систему.
Главное условие — не превращать OpenWrt в свалку.
Если за плечами десятки экспериментов, старые репозитории и полусломанные конфиги, есть смысл однажды остановиться, сделать бэкап, пересобрать систему в чистом виде и уже поверх неё поставить Podkop.
В итоге
Podkop — это по сути недостающий слой здравого смысла между OpenWrt и вашим VPN/прокси. Он не пытается стать ещё одной «чёрной коробкой», а просто аккуратно решает конкретную задачу: развести трафик по разным выходам так, чтобы обойти блокировки и не сломать то, что критично работает только напрямую.
Если есть роутер на OpenWrt, нормальный туннель и немного желания потратить вечер на наводку порядка, Podkop позволяет в итоге забыть о том, куда именно ходит какой домен. Всё это остаётся заботой роутера, а пользователю возвращается нормальный, предсказуемый интернет — без плясок с настройками на каждом устройстве и без «всё в VPN, а там будь что будет».
