Добро пожаловать в Univista — мы рады, что вы здесь. Если что-то неясно, откройте «Справку» или свяжитесь с нами через службу поддержки на этом сайте, и мы поможем вам подключиться.
OpenWRT и VLESS-подписка: как настроить роутер для обхода блокировок через подписку
Обновлено
Проблема
У вас есть VLESS-подписка (ссылка вида https://.../sub?token=... или vless://...), которая отлично работает в приложении на телефоне, но вы хотите, чтобы обход блокировок работал на уровне всей домашней сети — без клиентов на каждом устройстве. Smart TV, игровые приставки и гости должны выходить в интернет через защищённое соединение автоматически. Решение — поднять VLESS-клиент прямо на роутере с OpenWRT и подключить туда вашу подписку.
Обзор решения
Голый OpenWRT не умеет работать с VLESS «из коробки». Протокол VLESS (особенно с XTLS-Reality или TLS-Vision) обслуживается ядрами Xray-core или sing-box. Чтобы не настраивать их вручную через конфиги, ставят надстройку с веб-интерфейсом в LuCI, которая умеет импортировать подписку, обновлять список узлов и строить правила маршрутизации:
PassWall / PassWall 2 — самый популярный пакет, поддерживает Xray и sing-box, удобный импорт подписки и гибкие правила.
HomeProxy — встроен в ImmortalWrt, работает на sing-box, легче и современнее, хорошо дружит с Reality.
OpenClash — если ваша подписка в формате Clash/Mihomo.
Ниже — универсальный сценарий на примере PassWall (он чаще встречается на готовых сборках). Шаги для HomeProxy в конце отмечены отдельно.
Важно про железо. VLESS с шифрованием TLS даёт ощутимую нагрузку на процессор. Для комфортной скорости нужен роутер с архитектурой aarch64 или мощным MIPS, минимум 128 МБ RAM и свободное место под пакеты (либо USB-extroot). На дешёвых роутерах с 8–16 МБ флеша Xray просто не поместится.
Пошаговая настройка
Проверьте роутер. Зайдите в LuCI → Status → Overview и посмотрите свободную память и место в /overlay. Узнайте архитектуру: opkg print-architecture по SSH. Без 64–128 МБ свободного RAM дальше идти смысла мало.
Обновите списки пакетов. Подключитесь по SSH (ssh [email protected]) и выполните:
opkg update
Если используете ImmortalWrt — у вас уже подключены нужные репозитории.
Установите PassWall и ядро Xray. Проще всего — через LuCI: System → Software, найдите luci-app-passwall и установите. Если пакета нет в списке, добавьте репозиторий PassWall (ключ и feed с официального GitHub проекта) и снова выполните opkg update. Обязательно поставьте бэкенд для VLESS:
opkg install xray-core
# или, для sing-box:
opkg install sing-box
Без ядра подписка импортируется, но узлы работать не будут.
Откройте PassWall. После установки в меню LuCI появится раздел Services → PassWall. Перейдите на вкладку Node List → Subscribe (Подписки).
Добавьте URL подписки. Нажмите Add, вставьте вашу ссылку-подписку целиком в поле Subscription URL. Дайте подписке понятное имя. Сохраните и нажмите «Manual subscription / Обновить подписку». Через несколько секунд в списке узлов появятся серверы из подписки (VLESS-узлы с пометкой протокола).
Выберите рабочий узел. На главной вкладке PassWall в поле Main switch переключите режим в Enable, а в TCP Node и UDP Node выберите конкретный VLESS-сервер из подписки. Для VLESS-Reality убедитесь, что в карточке узла заполнены поля Flow (например xtls-rprx-vision), publicKey и shortId — обычно подписка их подставляет автоматически.
Настройте маршрутизацию и DNS. На вкладке Rule Settings выберите режим: «Bypass mainland / обход по списку» (китайско-российские сайты идут напрямую, остальное — через узел) либо «Global / всё через прокси». Чтобы избежать утечек и подмены DNS, включите DNS через узел и режим FakeIP или DoH (например 1.1.1.1).
Примените и проверьте. Нажмите Save & Apply. С любого устройства в сети откройте сайт проверки IP — должен показываться адрес и страна вашего VLESS-сервера, а не провайдера. Проверьте утечку DNS на профильном тесте.
Включите автообновление подписки. В настройках подписки задайте интервал обновления (раз в сутки) — узлы и параметры будут подтягиваться сами, если на сервере сменится ключ Reality или адрес.
Вариант с HomeProxy (ImmortalWrt): откройте Services → HomeProxy → Node Settings → Subscriptions, вставьте ту же ссылку, нажмите Update nodes, затем на вкладке Routing выберите узел и режим маршрутизации. Ядро sing-box ставить отдельно не нужно — оно уже встроено.
FAQ
Чем VLESS отличается от VMess и почему его сложнее настроить на роутере? VLESS — это «лёгкий» протокол без встроенного шифрования на уровне самого протокола; стойкость даёт транспорт TLS/Reality. Именно поэтому ему нужно ядро Xray или sing-box, а старые пакеты вроде ShadowSocksR Plus+ его не поддерживают.
Подписка добавилась, но список узлов пустой. Что делать? Чаще всего не установлено ядро (xray-core / sing-box) или у роутера нет времени по NTP — TLS-рукопожатие падает из-за неверной даты. Проверьте date по SSH и переустановите бэкенд.
Скорость заметно ниже, чем на телефоне. Почему? Шифрование VLESS-TLS упирается в процессор роутера. На слабом железе это потолок в 20–50 Мбит/с. Помогает выбор узла с xtls-rprx-vision (меньше накладных расходов) и роутер с аппаратным AES.
Поддерживается ли Reality? Да, но только на свежих версиях Xray-core (≥1.8) и sing-box. Если в подписке узлы Reality, а узел не подключается — обновите ядро через opkg.
Материал носит технический характер. Соблюдайте местные законы при использовании сетевых инструментов. Univista не отвечает за ваш сценарий использования.
Поддержка
Univista · Подключайтесь к миру
Привет, я помощник службы поддержки Univista. Как я могу помочь?