VLESS на роутере OpenWrt — это способ пустить через VPN только заблокированные сайты (YouTube, Discord), а банки и госуслуги оставить на прямом канале. Реализуется это связкой podkop (диспетчер маршрутизации) и sing-box (движок протоколов). В инструкции — установка одной командой, разбор vless://-ссылки, настройка через веб-интерфейс и SSH, диагностика.
Что такое VLESS и podkop
VLESS — современный протокол прокси, а VLESS Reality — его версия, которая маскирует VPN-трафик под обычное посещение реального сайта (например, под HTTPS-запрос к microsoft.com). Для DPI это выглядит как легитимный трафик, поэтому Reality хорошо переживает блокировки.
podkop — надстройка для OpenWrt, которая решает, какой трафик отправить в VPN, а какой — напрямую. Итог настройки: YouTube и Discord работают через VPN-сервер, а российские сайты, банки и госуслуги идут напрямую и на полной скорости. Общее знакомство с инструментом — в статье что такое podkop.
Что понадобится:
- роутер на OpenWrt 23.05 или новее;
- ~50 МБ свободной flash (sing-box + списки);
- рабочая
vless://-ссылка (свой сервер или VPN-сервис); - SSH-доступ (как подключиться).
Как это работает: схема маршрутизации
- podkop = «диспетчер»: держит списки доменов и подсетей, перехватывает DNS и решает судьбу каждого запроса.
- sing-box = «двигатель»: устанавливает само VLESS-соединение с сервером.
Шаг 1. Подготовка роутера
ssh root@192.168.1.1
ubus call system board
df -h /overlay
opkg update # OpenWrt 24.10 (на 25.12: apk update)
Убедитесь, что версия 24.10+ и свободно хотя бы ~50 МБ.
sysupgrade -b /root/backup-before-podkop.tar.gz
Шаг 2. Установка podkop
Установка выполняется одной командой официальным скриптом из репозитория разработчика:
sh <(wget -O - https://raw.githubusercontent.com/itdoginfo/podkop/refs/heads/main/install.sh)
На оба вопроса установщика можно ответить Y. Скрипт поставит:
podkop— сам сервис маршрутизации;luci-app-podkop— веб-интерфейс;sing-box— движок протоколов;dnsmasq-full— вместо обычногоdnsmasq.
dnsmasq в OpenWrt не умеет ipset/nftset, которые нужны podkop для маршрутизации по доменам. Скрипт автоматически удаляет базовый dnsmasq и ставит dnsmasq-full — на короткое время при установке DNS может «моргнуть», это нормально.
Проверьте, что сервис запустился, и при желании включите русский язык интерфейса:
service podkop status
# OpenWRT 25.12+
opkg install luci-i18n-podkop-ru
# OpenWRT 24.10 и ниже
apk add luci-i18n-podkop-ru
Шаг 3. Где взять vless:// ссылку
Варианты:
- Свой сервер: панели 3x-ui, Marzban или x-ui на вашем VPS генерируют
vless://-ссылку в пару кликов. Как поднять такой сервер с нуля — в инструкции по установке и настройке 3X-UI. - Готовый VPN-сервис с поддержкой VLESS выдаёт ссылку в личном кабинете.
Если вместо готовой ссылки на руках только JSON-конфиг sing-box или Xray-core (например, из своей серверной конфигурации) — переведите его в vless:// нашим конвертером JSON → VLESS. Он работает прямо в браузере, сам вычисляет публичный ключ Reality из приватного и ничего не отправляет на сервер.
Разбор структуры ссылки:
vless://UUID@host:port?type=tcp&security=reality&pbk=PUBLICKEY&fp=chrome&sni=SNI&sid=SHORTID&flow=xtls-rprx-vision#Имя
| Параметр | Что означает | Где взять |
|---|---|---|
UUID | идентификатор пользователя | панель сервера |
host:port | адрес и порт сервера | панель сервера |
security=reality | тип защиты | обычно reality |
pbk | публичный ключ Reality | панель сервера |
sni | имя сайта-маскировки | панель сервера |
sid | short id | панель сервера |
flow | режим XTLS | xtls-rprx-vision |
Если поднимаете сервер сами, без готовой панели, — пару pbk/приватный ключ и sid можно
получить в нашем генераторе ключей Reality, а готовую ссылку потом
превратить в QR-код для телефона.
Шаг 4. Добавляем VLESS-ссылку в podkop (через LuCI)
- Откройте LuCI → Services → Podkop (Службы → Podkop).
- В основной секции выберите тип конфигурации Proxy (Proxy Config / URL).
- Вставьте вашу
vless://...строку в поле Proxy String / Config URL. podkop сам распарсит все параметры. - Нажмите Save & Apply.
Шаг 5. Настраиваем, какой трафик пойдёт в VPN
В интерфейсе podkop есть готовые механизмы отбора трафика:
- Community Lists — готовые обновляемые списки:
Youtube,Discord,Meta,Telegram. Отметьте нужные — их трафик пойдёт в туннель. - Custom Domains — свои домены вручную (по одному в строке).
- Custom Subnets — свои IP-подсети.
- Domain lists (remote) — подключение внешних списков по URL.
- Exclusions — что НЕ пускать в туннель (банки, госуслуги, локальные ресурсы). По сути, если домена нет в списке обхода, то он уже не будет идти через туннель. Данным типом можно испоключить какой-то домен, если он есть в уже готовых списках.
| Нужно | Что включить |
|---|---|
| Разблокировать YouTube | список Youtube |
| Разблокировать Discord (текст + голос) | список Discord |
| Открыть Instagram*/Facebook* | список Meta |
| Пустить всё зарубежное | Russia outside |
| Оставить банк напрямую | ничего делать не нужно, если домен отсуствует в секциях, то он пойдет напрямую |
Шаг 6. То же через SSH и UCI
Пример /etc/config/podkop с основной секцией:
config main 'main'
option mode 'proxy'
option proxy_string 'vless://UUID@host:443?type=tcp&security=reality&pbk=...&sni=...&sid=...&flow=xtls-rprx-vision#server'
list community_domains 'youtube'
list community_domains 'discord'
UCI-командами:
uci set podkop.main.proxy_string='vless://UUID@host:443?type=tcp&security=reality&pbk=...&sni=...&sid=...&flow=xtls-rprx-vision#server'
uci commit podkop
service podkop restart
?, &, #, которые shell интерпретирует по-своему. Обязательно оборачивайте всю ссылку в одинарные кавычки, как в примере выше. В двойных кавычках & и # сломают команду.
/etc/config/podkop зависят от версии podkop. Надёжный способ узнать актуальные ключи — настроить одну секцию через LuCI и посмотреть результат: uci show podkop.
Шаг 7. Проверка работоспособности
service podkop status
logread -e podkop | tail -20
logread -e sing-box | tail -20
В логах не должно быть строк failed to start или error. В веб-интерфейсе podkop есть раздел Диагностика с кнопкой проверки соединения. Ещё до этого шага саму ссылку можно проверить снаружи — наш инструмент проверки серверов откроет TCP/TLS-соединение до сервера и покажет задержку и сертификат, не раскрывая UUID.
Проверка на клиентском устройстве:
- заблокированный сайт (например, YouTube) открывается;
- на обычном сайте 2ip.ru показывает ваш российский IP (значит, не всё гонится в VPN);
- нет DNS-утечек (browserleaks.com/dns).
Таблица диагностики:
| Симптом | Причина | Решение |
|---|---|---|
| интернет пропал целиком | ошибка в ссылке/конфиге | service podkop stop, проверить ссылку и перезапустить службу |
| YouTube не открывается | домен не в списке | включить список Youtube |
| сайт идёт мимо VPN | домена нет в списках | добавить в Custom Domains |
| sing-box падает | неверная ссылка | logread -e sing-box |
Типичные проблемы
Podkop установился, но интернет пропал целиком.
Обычно причина — ошибка в ссылке или конфликт DNS. Быстро отключите: service podkop stop. Проверьте vless://-ссылку (скопируйте заново из панели) и логи sing-box.
«sing-box: failed to start».
Неверный конфиг или ссылка. Смотрите точную строку ошибки: logread -e sing-box | tail -30.
Не хватает памяти, роутер перезагружается. sing-box + большие списки требовательны к RAM.
VPN работает, но YouTube не открывается. Чаще всего дело в QUIC (HTTP/3): браузер идёт по UDP/443 мимо правил. Заблокируйте UDP 443, чтобы трафик вернулся на TCP — подробности в статье про обход блокировки Discord и YouTube.
Несколько конфигов и переключение
podkop поддерживает дополнительные секции — можно держать несколько серверов и переключаться между ними. Основная секция — рабочая, дополнительные — как резерв: при падении основного сервера переключаетесь вручную в интерфейсе. Для автоматической подписки с множеством серверов нужен форк — см. подписочную ссылку в podkop.
Часто задаваемые вопросы (FAQ)
Podkop или полный VPN на роутере — что лучше? podkop почти всегда лучше для дома: полная скорость на российских сайтах, банки работают напрямую, в VPN идёт только заблокированное. Полный туннель нужен редко.
Podkop работает с Shadowsocks / Trojan / Hysteria2?
Да, sing-box поддерживает эти протоколы. Вставляйте соответствующую ссылку (ss://, trojan://, hy2://) в то же поле.
Можно ли добавить подписочную ссылку вместо одной vless://? Штатный podkop подписки не поддерживает — нужен форк с этой функцией. См. как добавить подписку в podkop.
Сколько устройств выдержит роутер? На MT7981 — вся домашняя сеть (10–20 устройств). Ограничение — скорость шифрования, упирается в CPU.
Сильно ли падает скорость? В VPN-туннеле — да, зависит от сервера и протокола. Но прямой трафик (российские сайты) идёт на полной скорости, поэтому в быту замедление почти незаметно.
Podkop и AmneziaWG — можно ли вместе? Да: podkop может использовать AmneziaWG-интерфейс как исходящий канал вместо VLESS-сервера. Удобно, когда нет своего VPS, а есть WARP.
Слетит ли podkop после обновления прошивки?
Да, при sysupgrade пакеты удаляются. Переустановите podkop после обновления OpenWrt.
Заключение
VLESS на роутере через podkop — рабочий рецепт умного обхода блокировок: установить podkop одной командой → вставить vless://-ссылку → включить нужные списки → проверить. Дальше стоит настроить голос Discord и YouTube без буферизации, рассмотреть подписочные ссылки для автообновления серверов и не забыть, что после обновления OpenWrt podkop нужно ставить заново.
* Instagram и Facebook принадлежат компании Meta, признанной экстремистской и запрещённой на территории РФ.
Комментарии
💬 Пока нет комментариев. Будьте первым!
Оставить комментарий