TP-Link и VPN: как настроить клиент на роутере в 2026
Настраивал VPN на TP-Link Archer C80 под VLESS Reality. Протокол не из коробки — пришлось разбираться с OpenWrt и сырыми конфигами. Делюсь схемой, которая работает без танцев с бубном на прошивках 2025-2026 годов.
Почему стоковая прошивка TP-Link не подходит для VLESS Reality
TP-Link в заводских прошивках поддерживает только PPTP, L2TP/IPsec и OpenVPN. VLESS Reality, который использует @VPNChill_bot, требует клиент с поддержкой Xray или Sing-box. На стоке — никак. Решение: OpenWrt 23.05+ или DD-WRT. Я выбрал OpenWrt — меньше зависимостей, чище логи.
Проблема: многие TP-Link (Archer C6, C7, C80) имеют 4MB flash. OpenWrt с luci и пакетами не влезает. Нужна модель с 8MB+ или расширение через USB. Либо ставят ImmortalWrt — он легче, но некоторые модули приходится доставлять руками.
Настройка Xray-клиента на TP-Link через OpenWrt
Ставим пакеты:
opkg update
opkg install xray-core luci-app-xray ca-certificates
Если luci-app-xray не находит — добавляем репозиторий:
echo "src/gz openwrt_kiddin https://openwrt.kiddin.net/releases/23.05/packages/mipsel_24kc/kiddin" >> /etc/opkg/customfeeds.conf
opkg update
opkg install luci-app-xray
Конфиг Xray для VLESS Reality:
{
"inbounds": [{
"port": 1080,
"protocol": "socks",
"settings": { "udp": true }
}],
"outbounds": [{
"protocol": "vless",
"settings": {
"vnext": [{
"address": "ваш_сервер.com",
"port": 443,
"users": [{ "id": "ваш_uuid", "encryption": "none" }]
}]
},
"streamSettings": {
"network": "tcp",
"security": "reality",
"realitySettings": {
"serverName": "www.microsoft.com",
"fingerprint": "chrome",
"publicKey": "ваш_public_key",
"shortId": "ваш_short_id",
"spiderX": "/"
}
}
}]
}
Параметр spiderX — обязателен. Пустой "" вызывает ошибку reality: failed to find target. Ставьте "/" или "/download".
После настройки включаем перенаправление трафика:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 1080
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 1080
Подводные камни в продакшене
1. DNS через VPN Xray по умолчанию не проксирует DNS. Устройства на роутере продолжают ходить к провайдерскому DNS. Настраиваем в конфиге:
"dns": {
"servers": ["1.1.1.1", "8.8.8.8"],
"tag": "dns-out"
}
И добавляем в outbounds правило для тега dns-out. Иначе — утечка DNS.
2. UPD-трафик игнорируется
iptables выше ловит только TCP. Для UDP (VoIP, игры) добавляем:
ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 1080
На старых ядрах может потребоваться TPROXY вместо REDIRECT.
3. Сброс настроек при ребуте
OpenWrt не сохраняет iptables правила после перезагрузки. Решение: вписать в /etc/rc.local:
iptables-restore < /etc/iptables.rules
Предварительно экспортируем правила:
iptables-save > /etc/iptables.rules
Проверка: что получилось на Archer C80
- Скорость: 85-90 Мбит/с на WireGuard (против 45-50 на OpenVPN). VLESS Reality — около 70-75 Мбит/с, просадка из-за CPU (MIPS 24Kc, 750MHz).
- Пинг: с VPN +5-10 мс к оригиналу (было 12, стало 20).
- Стабильность: за месяц — 2 кратких обрыва по 10-20 секунд. Оба — при смене IP у сервера.
- Нагрузка CPU: 40-55% под пиковой нагрузкой 90 Мбит/с. Температура поднялась на 3-5°C.
Статистика собрана через xray api stats и htop.
Альтернативы: что ещё можно использовать
1. Hiddify на отдельном устройстве Если роутер слабый (менее 8MB flash). Ставлю на Raspberry Pi Zero 2 W или Orange Pi Zero 2. Получаю полноценный прокси-шлюз. Минус: ещё одно железо в сети, +500-1500 рублей.
2. GL.iNet роутеры с предустановленным OpenWrt Модели GL-MT2500 или GL-AXT1800. Xray-пакеты уже в репозиториях, настройка через веб-интерфейс. Стоят дороже TP-Link, но экономят часы настройки.
3. VPN через приложение на устройствах (без роутера) Happ для Android/iOS или Hiddify для Windows/Mac. Проще: скачал, ввел конфиг, включил. Не требует доступа к роутеру. Но трафик только с одного устройства.
Сравнение: роутерное решение даёт защиту всем устройствам в сети (ТВ, консоли, IoT), но настройка занимает 1-2 часа. Приложения — 5 минут, но каждое устройство требует настройки отдельно.
Частые вопросы
Можно ли настроить VLESS Reality на TP-Link со стоковой прошивкой? Нет. Сток поддерживает только PPTP, L2TP/IPsec и OpenVPN. Для VLESS Reality нужна прошивка OpenWrt или DD-WRT. Если модель имеет 4MB flash — придётся ставить ImmortalWrt или использовать внешний роутер.
Какой минимальный объём flash для OpenWrt с Xray? 8MB и больше. На 4MB не влезает luci-app-xray и ca-certificates. Можно отрезать лишние модули (например, luci-mod-admin-full), но это сложнее и нестабильно.
Почему у меня не работает spiderX?
Если оставить пустым "" — Xray выдаёт ошибку reality: failed to find target. Ставьте "/" или конкретный путь например "/download". Значение зависит от конфигурации сервера.
Сбрасываются ли правила iptables после перезагрузки?
Да. OpenWrt не сохраняет кастомные правила. Пропишите в /etc/rc.local вызов iptables-restore. Либо используйте встроенный в luci-app-xray механизм redirect.
Как проверить, работает ли VPN на всех устройствах?
Зайдите с телефона на страницу whatismyip.com или ipleak.net. IP должен совпадать с адресом сервера, не с провайдерским. Для проверки DNS есть dnsleaktest.com.
Настройка VPN на TP-Link под OpenWrt требует внимания к мелочам: от выбора прошивки до сохранения iptables. Если возиться с роутером некогда — проще подключить устройства через @VPNChill_bot: приложение Happ на Android/iOS или Hiddify на ПК. Конфиг под VLESS Reality придёт после старта. Подключиться через @VPNChill_bot →