- Почему YouTube тормозит и что такое DPI
- Какие роутеры Mikrotik поддерживают контейнеры и зачем они нужны
- Как установить контейнеры на Mikrotik
- Быстрая настройка контейнеров для обхода DPI и ускорения YouTube
- Настройка DNS с DoH для безопасности и обхода блокировок
- Как проверить, что контейнеры и обход DPI работают
- Альтернативный способ обхода DPI на роутерах с OpenWrt и Zyxel Keenetic
- Таблица сравнения подходов обхода DPI на роутерах
- Полезные советы
- Заключение
- Полезные ссылки
Если YouTube вдруг начал тормозить, а VPN — не вариант, не спешите сдаваться! В этом посте вы узнаете, как настроить роутер так, чтобы YouTube работал быстро и без блокировок, обходя надоедливый DPI (Deep Packet Inspection) прямо на уровне домашней сети. Мы разберёмся, какие роутеры подходят, как включить контейнеры, настроить DNS с DoH и даже как использовать специальные сервисы для обхода блокировок. Готовы? Поехали!
Почему YouTube тормозит и что такое DPI
Представьте, что ваш интернет-провайдер — это строгий охранник, который внимательно смотрит на каждый пакет данных, проходящий через сеть. DPI — это как его сверхмощные очки, позволяющие видеть, какие сайты вы посещаете, и при необходимости замедлять или блокировать доступ к ним. Особенно часто страдает YouTube, потому что его видео-сервера распознаются по доменам вроде googlevideo.com.
Если вы замечаете, что видео грузится с паузами, а скорость скачивания падает — скорее всего, именно DPI режет трафик по домену.
Какие роутеры Mikrotik поддерживают контейнеры и зачем они нужны
Для обхода DPI на уровне роутера отлично подходят контейнеры — это как мини-компьютеры внутри вашего роутера, которые могут запускать специальные программы для маскировки трафика.
Поддерживают контейнеры роутеры Mikrotik с архитектурами ARM, ARM64 и x86 (CHR). Если у вас hAP ax3 или похожая модель, скорее всего, вы в игре.
Проверить поддержку контейнеров можно командой:
/system/device-mode print
Если увидите container: yes
— отлично! Если нет, включите режим контейнеров:
/system/device-mode/update container=yes
После этого потребуется перезагрузка.
Как установить контейнеры на Mikrotik
Контейнеры не любят внутреннюю память роутера — она слишком скромная. Лучше использовать внешний USB-накопитель (желательно USB 3.0), отформатированный в ext3/ext4. Форматировать можно прямо в разделе System → Disks.
Если USB нет, можно установить контейнеры в RAM-память, но это временное решение — при перезагрузке всё пропадёт.
Для установки пакетов Extra packages - Container скачайте нужный пакет с официального сайта Mikrotik, например:
/tool fetch https://upgrade.mikrotik.com/routeros/7.16/container-7.16-arm64.npk
/system/reboot
Быстрая настройка контейнеров для обхода DPI и ускорения YouTube
Вот краткий набор команд, который поможет быстро запустить контейнер и настроить обход DPI:
/tool fetch https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem
/certificate import file-name=DigiCertGlobalRootG2.crt.pem passphrase=""
/ip dns set use-doh-server=https://1.1.1.1/dns-query verify-doh-cert=yes
/interface/bridge add name=Bridge-Docker port-cost-mode=short
/ip/address add address=192.168.254.1/24 interface=Bridge-Docker network=192.168.254.0
/interface/veth add address=192.168.254.2/24 gateway=192.168.254.1 name=BYEDPI-TUN
/interface/bridge/port add bridge=Bridge-Docker interface=BYEDPI-TUN
/container/config set registry-url=https://registry-1.docker.io tmpdir=/usb1/docker/pull
/container/add remote-image=wiktorbgu/byedpi-hev-socks5-tunnel:mikro interface=BYEDPI-TUN cmd="--disorder 1 --auto=torst --tlsrec 1+s" root-dir=/usb1/docker/byedpi-hev-socks5-tunnel start-on-boot=yes
/ip/dns set address-list-extra-time=0s
/ip/dns/static/ add address-list=za_dpi_FWD forward-to=localhost match-subdomain=yes name=youtube.com type=FWD
/ip/dns/static/ add address-list=za_dpi_FWD forward-to=localhost match-subdomain=yes name=googlevideo.com type=FWD
## Добавьте остальные домены из списка, чтобы весь трафик YouTube шел через контейнер
/routing table add disabled=no fib name=dpi_mark
/ip route add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.254.2%Bridge-Docker routing-table=dpi_mark
/ip firewall mangle add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-list=za_dpi_FWD in-interface-list=LAN new-connection-mark=to_dpi passthrough=yes
/ip firewall mangle add action=mark-routing chain=prerouting connection-mark=to_dpi in-interface-list=LAN new-routing-mark=dpi_mark passthrough=no routing-mark=!dpi_mark
/ip firewall filter set [find action=fasttrack-connection] packet-mark=no-mark connection-mark=no-mark
/ip/firewall/address-list/ add address=10.0.0.0/8 list=local
/ip/firewall/address-list/ add address=172.16.0.0/12 list=local
/ip/firewall/address-list/ add address=192.168.0.0/16 list=local
/ip firewall nat add action=redirect chain=dstnat dst-address-list=!local dst-port=53 in-interface-list=LAN protocol=udp
/ip firewall nat add action=redirect chain=dstnat dst-address-list=!local dst-port=53 in-interface-list=LAN protocol=tcp
/container start [find interface=BYEDPI-TUN]
Не забудьте заменить /usb1
на путь к вашему USB-накопителю.
Настройка DNS с DoH для безопасности и обхода блокировок
Для корректной работы DNS и обхода DPI важно использовать DNS over HTTPS (DoH). Mikrotik поддерживает это начиная с версии прошивки 7.16.
Для настройки DNS 1.1.1.1 (Cloudflare) достаточно импортировать один сертификат:
/tool fetch https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem
/certificate import file-name=DigiCertGlobalRootG2.crt.pem passphrase=""
/ip dns set use-doh-server=https://1.1.1.1/dns-query verify-doh-cert=yes
Для DNS 9.9.9.9 (Quad9) потребуется импортировать целый набор сертификатов:
/tool fetch url=https://curl.se/ca/cacert.pem
/certificate import file-name=cacert.pem passphrase=""
/ip dns set use-doh-server=https://9.9.9.9/dns-query verify-doh-cert=yes
Как проверить, что контейнеры и обход DPI работают
- Перезагрузите роутер и устройства.
- В браузере отключите DoH, чтобы DNS-запросы шли через роутер (например, в Firefox).
- Проверьте скорость загрузки YouTube — видео должно идти без тормозов.
- Используйте плагин FoxyProxy для браузера, чтобы быстро переключаться между прокси и обычным режимом.
Альтернативный способ обхода DPI на роутерах с OpenWrt и Zyxel Keenetic
Если у вас не Mikrotik, а, например, Zyxel Keenetic Giga III, можно использовать проект TPWS — сервис, который "извращает" TCP-пакеты, чтобы обмануть DPI.
Пример запуска сервиса TPWS:
## opkg update
## opkg install iptables
## mkdir git
## cd git
## git clone https://github.com/bol-van/zapret.git
## cd zapret
## ./install_bin.sh
## Создайте скрипт запуска /opt/etc/init.d/S51tpws с содержимым:
#!/bin/sh
SCRIPT=/opt/root/git/zapret/tpws/tpws
PIDFILE=/var/run/tpws.pid
ARGS="--daemon --bind-addr 192.168.0.1 --port 999 --disorder --tlsrec=sni --split-pos=2 --pidfile $PIDFILE"
start() {
if [ -f $PIDFILE ] && kill -0 $(cat $PIDFILE); then
echo 'Service TPWS is already running' >&2
return 1
fi
$SCRIPT $ARGS
iptables -t nat -A PREROUTING -i br0 -p tcp --dport 80 -j REDIRECT --to-port 999
iptables -t nat -A PREROUTING -i br0 -p tcp --dport 443 -j REDIRECT --to-port 999
echo 'Started TPWS service'
}
stop() {
if [ ! -f "$PIDFILE" ] || ! kill -0 $(cat "$PIDFILE"); then
echo 'Service TPWS is not running' >&2
return 1
fi
echo 'Stopping TPWS service...'
kill -15 $(cat "$PIDFILE") && rm -f "$PIDFILE"
iptables -t nat -D PREROUTING -i br0 -p tcp --dport 80 -j REDIRECT --to-port 999
iptables -t nat -D PREROUTING -i br0 -p tcp --dport 443 -j REDIRECT --to-port 999
}
status() {
if [ -f $PIDFILE ] && kill -0 $(cat $PIDFILE); then
echo 'Service TPWS is running'
else
echo 'Service TPWS is stopped'
fi
}
case "$1" in
start) start ;;
stop) stop ;;
status) status ;;
restart) stop; start ;;
*) echo "Usage: $0 {start|stop|restart|status}" ;;
esac
## chmod +x /opt/etc/init.d/S51tpws
## /opt/etc/init.d/S51tpws start
Этот сервис будет обманывать DPI, ускоряя загрузку YouTube и других сервисов.
Таблица сравнения подходов обхода DPI на роутерах
Метод | Подходит для | Плюсы | Минусы |
---|---|---|---|
Контейнеры Mikrotik BYEDPI | Mikrotik ARM/ARM64/x86 | Полный контроль, работает на уровне роутера | Требует USB и прошивки >=7.16 |
TPWS на OpenWrt/Keenetic | OpenWrt, Keenetic | Легко установить, работает с iptables | Требует настройки и знаний Linux |
VPN | Любой роутер | Простота использования | Замедляет скорость, платно |
Полезные советы
- Всегда делайте бэкап конфигурации роутера перед экспериментами.
- Используйте USB 3.0 для контейнеров — скорость важна!
- Отключайте DoH в браузерах, чтобы DNS-запросы шли через роутер.
- Следите за обновлениями прошивки — новые версии Mikrotik улучшают поддержку DoH и контейнеров.
- Для проверки скорости используйте
curl
с указанием домена, чтобы увидеть влияние DPI.
Заключение
Настроить роутер так, чтобы YouTube работал без VPN и без тормозов — вполне реально! Главное — использовать возможности современных роутеров, такие как контейнеры Mikrotik или сервисы типа TPWS на OpenWrt. Это позволит обойти DPI на уровне всей домашней сети, а не только на одном устройстве.
Не бойтесь экспериментировать, и пусть ваш YouTube летает, как ракета!
Полезные ссылки
- Официальная вики Mikrotik по контейнерам
- Проект BYEDPI на GitHub
- Статья на Habr о настройке Mikrotik для обхода DPI
- Обход блокировок с TPWS на Zyxel Keenetic
Теперь вы вооружены знаниями и готовы сделать свой интернет свободным от блокировок!