Netshift на OpenWrt — это форк популярного инструмента podkop с поддержкой подписок и автообновления серверов. Он подойдёт новичку, у которого один роутер и один VPN: удобный веб-интерфейс, выборочная маршрутизация и подписки «из коробки». В этой инструкции — установка, подключение VPN-конфигурации, настройка маршрутизации и DNS, диагностика и удаление.
Что такое Netshift простыми словами
Netshift — «диспетчер» трафика на роутере: он держит списки заблокированных доменов, перехватывает DNS и отправляет нужный трафик в VPN-туннель, а остальное — напрямую. Движком под ним работает sing-box. От оригинального podkop Netshift отличается поддержкой подписочных ссылок.
| Инструмент | Подписки | UI | Сложность |
|---|---|---|---|
| podkop | нет | простой | низкая |
| Netshift | да | простой | низкая |
| passwall/homeproxy | да | сложный | высокая |
Кому подойдёт: домашнему пользователю с одним VPN (ссылка или подписка), которому нужен обход блокировок для всей сети без глубокого погружения.
Что понадобится: OpenWrt 23.05/24.10, свободная flash (~50 МБ), SSH-доступ, VLESS-ссылка или подписка.
Как работает Netshift: архитектура на пальцах
Компоненты:
- ядро sing-box — устанавливает VPN-соединение;
- DNS-перехват через
dnsmasq-full— чтобы маршрутизировать по доменам; - списки маршрутизации — какие домены/подсети в туннель;
- LuCI-интерфейс — управление.
Шаг 1. Подготовка роутера
ssh root@192.168.1.1
ubus call system board
df -h /overlay
sysupgrade -b /root/backup-$(date +%F).tar.gz
Подключение по SSH для новичков разобрано в отдельной статье. Обязательно удалите конфликтующие прокси-решения, если они стоят:
# OpenWrt 24.10 (opkg)
opkg remove luci-app-podkop podkop 2>/dev/null
opkg remove luci-app-passwall passwall 2>/dev/null
# OpenWrt 25.12 (apk)
# apk del luci-app-podkop podkop 2>/dev/null
# apk del luci-app-passwall passwall 2>/dev/null
Шаг 2. Установка Netshift
Способ 1: установочный скрипт
sh <(wget -O - https://raw.githubusercontent.com/yandexru45/netshift/refs/heads/main/install.sh)
Скрипт сам определит версию OpenWrt, поставит sing-box, dnsmasq-full и настроит firewall.
Способ 2: ручная установка .ipk/.apk
Скачайте пакеты из раздела Releases репозитория Netshift и установите:
cd /tmp
wget https://github.com/yandexru45/netshift/releases/download/.../netshift_....ipk
wget https://github.com/yandexru45/netshift/releases/download/.../luci-app-netshift_....ipk
# OpenWrt 24.10 (opkg)
opkg install ./netshift_*.ipk ./luci-app-netshift_*.ipk
# OpenWrt 25.12 (apk): скачивайте .apk-пакеты
# apk add --allow-untrusted ./netshift_*.apk ./luci-app-netshift_*.apk
Проверка установки:
service netshift status
Плюс должен появиться пункт в меню LuCI (Services → Netshift). Если пакет не ставится — проверьте зависимости (sing-box, dnsmasq-full) и что версия пакета соответствует вашей сборке OpenWrt.
Шаг 3. Первичная настройка через LuCI
- LuCI → Services → Netshift.
- Обзор вкладок: основная конфигурация, маршрутизация (списки), DNS, диагностика.
- Включите сервис и автозапуск.
Шаг 4. Подключаем VPN-конфигурацию
- Вариант А — одиночная ссылка: вставьте
vless://,ss://,trojan://илиhy2://в поле конфигурации. Перед этим стоит проверить сервер на доступность в инструменте проверки серверов. - Вариант Б — подписка: вставьте subscription URL и выберите сервер из списка (см. отдельную статью про подписки в podkop/Netshift). Ту же ссылку на подписку можно проверить целиком — инструмент проверки серверов сам скачает и разберёт список серверов.
- Вариант В — свой JSON-конфиг sing-box (для продвинутых): вставьте outbound-секцию. Пример структуры:
{
"type": "vless",
"tag": "proxy",
"server": "example.com",
"server_port": 443,
"uuid": "ВАШ-UUID",
"flow": "xtls-rprx-vision",
"tls": {
"enabled": true,
"server_name": "microsoft.com",
"reality": { "enabled": true, "public_key": "PUBKEY", "short_id": "SHORTID" }
}
}
Такой блок можно собрать из готовой ссылки (и наоборот) в конвертере JSON ↔ ссылка,
а PUBKEY/SHORTID для Reality — получить в генераторе ключей Reality.
Так выглядит подключение подписки в LuCI: сначала выбирается тип конфигурации, затем вводится сама ссылка и частота автообновления.
Какой протокол выбрать:
| Протокол | Когда выбрать |
|---|---|
| VLESS Reality | лучший баланс скорости и незаметности, нужен свой сервер |
| Hysteria2 | быстрый на нестабильных каналах (UDP), хорош для игр/голоса |
| Shadowsocks | простой и лёгкий, но легче детектируется DPI |
Шаг 5. Маршрутизация: что пойдёт через VPN
Готовые списки: Russia inside/outside, Youtube, Discord, Meta, Twitter/X, Telegram. Плюс — свои домены и подсети, и исключения (банки, госуслуги, локальные сети).
Практические пресеты:
- «только YouTube+Discord» — включить списки
YoutubeиDiscord, остальное напрямую; - «всё зарубежное» — список
Russia outside; - «всё кроме РФ» — полный туннель с исключением российских подсетей.
Форк поддерживает маршрутизацию по устройствам (IP) — можно пустить в VPN только телевизор, а остальное оставить напрямую.
Шаг 6. Настройка DNS
Без правильного DNS маршрутизация по доменам не работает: именно ответ DNS определяет, куда пойдёт трафик. Netshift перехватывает DNS-запросы клиентов и резолвит заблокированные домены через туннель (DoH/DoT, UDP внутри VPN), что заодно защищает от DNS-утечек.
Если DNS-перехват конфликтует с вашими настройками, правки вносятся в /etc/config/dhcp (секция dnsmasq). Обычно установщик настраивает это сам — вручную лезть туда не нужно.
На вкладке Настройки → Дополнительно — тонкие параметры: отключение QUIC (иногда помогает с видеостримингом), блокировка публичных DoH-серверов (Cloudflare, Google, Quad9, OpenDNS, Yandex), исключение NTP из туннеля, поддержка IPv6 и путь к файлу конфигурации sing-box.
Шаг 7. Конфигурация через SSH
Пример /etc/config/netshift (структура зависит от версии — сверяйтесь с uci show netshift):
config main 'main'
option enabled '1'
option mode 'proxy'
option proxy_string 'vless://UUID@host:443?security=reality&...'
list community_domains 'youtube'
list community_domains 'discord'
UCI-командами:
uci set netshift.main.enabled='1'
uci set netshift.main.proxy_string='vless://UUID@host:443?security=reality&...'
uci commit netshift
service netshift restart
Оборачивайте ссылку в одинарные кавычки — символы ?, &, # иначе сломают команду.
Шаг 8. Проверка работоспособности
service netshift status
logread -e netshift | tail -20
curl --interface <vpn-iface> ifconfig.me # IP через туннель
curl ifconfig.me # прямой IP
Быстрее это делает встроенная вкладка Диагностика — одной кнопкой запускает автоматические проверки DNS, sing-box, nftables, outbound-серверов и FakeIP:
На клиентском устройстве: 2ip.ru (проверка IP), browserleaks.com/dns (DNS-утечки), открытие заблокированного сайта, проверка, что банковский сайт идёт напрямую.
Чек-лист «всё настроено правильно»:
- сервис запущен и в автозапуске;
- заблокированный сайт открывается;
- на обычных сайтах виден российский IP;
- банки и госуслуги работают напрямую;
- нет DNS-утечек.
Оптимизация и производительность
- Замерьте скорость до/после (speedtest на клиенте).
- CPU грузят inline-sniffing и режим TUN. Если роутер не тянет — уменьшите объём трафика в туннеле (меньше списков).
- На MT7981-роутере Netshift спокойно обслуживает домашнюю сеть; на старых MT7621 возможны просадки на высоких скоростях.
Типичные проблемы
После установки пропал интернет.
Быстрый откат: service netshift stop. Затем проверьте конфигурацию VPN и логи.
Сервис не запускается.
logread -e netshift | tail -30 — ищите строку ошибки. Частые причины: неверная ссылка, устаревший sing-box, нехватка места.
Работает на роутере, но не на клиентах. Проблема в firewall или DNS: клиенты не перенаправляются на перехват DNS роутера. Проверьте, что DNS-перехват включён и firewall-правила Netshift на месте.
Не хватает памяти. Сократите списки, обновите sing-box, рассмотрите роутер с бóльшим объёмом RAM/flash.
Конфликт с podkop / passwall. Держите только одно решение (см. шаг 1).
Обновление и удаление Netshift
Обновление — тем же скриптом установки (он подтянет новую версию), настройки при этом обычно сохраняются, но бэкап всё равно сделайте.
Полное удаление и возврат dnsmasq:
service netshift stop
# OpenWrt 24.10 (opkg)
opkg remove luci-app-netshift netshift
# при желании вернуть обычный dnsmasq:
opkg remove dnsmasq-full && opkg install dnsmasq
# OpenWrt 25.12 (apk)
# apk del luci-app-netshift netshift
# apk del dnsmasq-full && apk add dnsmasq
service dnsmasq restart
Часто задаваемые вопросы (FAQ)
Netshift или podkop — что выбрать новичку? Если нужна подписочная ссылка — Netshift. Если один статичный сервер — проще оригинальный podkop.
Можно ли поставить оба одновременно? Нет. Они конфликтуют за DNS-перехват и nftables. Только одно решение.
Нужен ли свой VPS? Не обязательно: подойдёт готовый VPN-сервис с VLESS-ссылкой или подпиской. Свой VPS даёт больше контроля и стабильности.
Работает ли Netshift на роутере с 16 МБ flash? Нет. Singbox займет больше 16 МБ памяти.
Netshift бесплатный? Сам инструмент бесплатный и открытый. Платить нужно только за VPN-сервер/сервис, если у вас нет своего.
Слетит ли Netshift после обновления OpenWrt? Да, как и все пакеты. Переустановите после обновления OpenWrt.
Видит ли провайдер, что я использую VPN? При VLESS Reality трафик маскируется под обычный HTTPS — провайдер видит соединение с «сайтом», но не может определить, что это VPN.
Заключение
Netshift даёт удобный обход блокировок с подписками: снести конфликтующие решения → поставить Netshift → подключить ссылку или подписку → выбрать списки → проверить IP и DNS. Если подписка не нужна — сравните с обычным podkop. Подробнее про подписочные ссылки и про обновление движка sing-box — в отдельных статьях.
Комментарии
💬 Пока нет комментариев. Будьте первым!
Оставить комментарий