February 18

Установка Zapret на OpenWRT 24.10 на примере роутера Netgear WNR3500Lv1

Надоело мне, что одно популярное расширение для браузера Chrome/Chromium приводит к тому, что при открытии ролика возникает сообщение "Our systems have detected unusual traffic from your computer network. Please try your request again later." Если зайти на главную страницу видеосервиса и воспользоваться поиском по заголовку видео, то ролик открыть всё же можно. Но для открытых по старинке нескольких вкладок стало некомфортно смотреть.

Также подбешивало то, что магазин мобильных приложений не открывается в браузере, а открывается только на телефоне. Из браузера есть возможность устанавливать приложения на одно из выбранных устройств, что бывает намного удобнее.

Оригинальный Zapret не может порадовать лёгкой и доступной для простого пользователя установкой и конфигурированием. А общая инструкция тем более не подходит для устройств с небольшим количеством свободной памяти.

К счастью появился zapret-openwrt, который легко устанавливается прямо из панели управления роутера OpenWRT (https://openwrt.lan или https://192.168.1.1)

Для этого в панели управления обновляем список пакетов (packages) в разделе System -> Software .

После обновления смотрим какую архитектуру использует процессор роутера. Например, Netgear WNR3500Lv на чипе Broadcom BCM4718 использует архитектуру mipsel_74kc.

Далее со страницы releases скачиваем архив именно для вашей архитектуры.

В моём случае zapret_v70.20250213_mipsel_74kc.zip для версии zapret v70.20250213 был видео только после нажатия на ссылку "Show all assets".

Скаченный архив нужно распаковать в какую-нибудь папку на компьютере.

Далее в разделе Software нажимаем на кнопку "Upload package..." и загружаем скаченные для вашей архитектуры пакеты. Для OpenWRT 24.10 нужно закачать IPK файлы, не трогая папку с APK файлами.

Начинать рекомендуется с файла zapret_$$$.ipk. Помимо него достаточно установать ещё ipk пакет luci-app-zapret_$$$.ipk, который позволит менять настройки zapret в панели управления OpenWRT.

На Netgear WNR3500Lv1 установка не прошла слишком легко. При загрузке первого же пакета возникла ошибка JSON. Далее пакеты то плохо загружались, то при попытке установить их выдывали ошибку об отсутствии директори на роутере. Но повторная установка IPK пакетов всё же увенчалась успехом.

Подробнее об установке написано в инструкции к zapret-openwrt.

После тестирования обнаружил несколько проблем. В том числе не хотелось добавлять исключения для Google Play, Google Family Link, Госуслуг,.... Решил изменить конфиг на Zapret -> Settings -> NFQWS options -> NFQWS_OPT -> Edit

--filter-tcp=443
--hostlist=/opt/zapret/ipset/zapret-hosts-google.txt
--dpi-desync=fake,multidisorder
--dpi-desync-split-pos=1,midsld
--dpi-desync-repeats=11
--dpi-desync-fooling=md5sig
--dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin
--new
--filter-udp=443
--hostlist=/opt/zapret/ipset/zapret-hosts-google.txt
--dpi-desync=fake
--dpi-desync-repeats=11
--dpi-desync-fake-quic=/opt/zapret/files/fake/quic_initial_www_google_com.bin
--new
--filter-tcp=80
--hostlist=/opt/zapret/ipset/zapret-hosts-user.txt
--hostlist-exclude=/opt/zapret/ipset/zapret-hosts-user-exclude.txt
--dpi-desync=fake,fakedsplit 
--dpi-desync-autottl=2 
--dpi-desync-fooling=md5sig 
--new
--filter-udp=443 
--hostlist=/opt/zapret/ipset/zapret-hosts-user.txt 
--hostlist-exclude=/opt/zapret/ipset/zapret-hosts-user-exclude.txt 
--dpi-desync=fake 
--dpi-desync-repeats=11 
--new 
--filter-tcp=443 
--hostlist=/opt/zapret/ipset/zapret-hosts-user.txt 
--hostlist-exclude=/opt/zapret/ipset/zapret-hosts-user-exclude.txt 
--dpi-desync=fake,multidisorder 
--dpi-desync-split-pos=midsld 
--dpi-desync-repeats=6 
--dpi-desync-fooling=badseq,md5sig

В отличии от конфигурации по умолчанию, обработка идёт не для всех хостов, так что нагрузка на роутер снижается. Но для работы нужно составлять списки хостов Zapret -> Settings -> Host lists.

Google Hostname entries:

googlevideo.com youtubei.googleapis.com ytimg.com yt3.ggpht.com yt4.ggpht.com youtube.com youtubeembeddedplayer.googleapis.com ytimg.l.google.com jnn-pa.googleapis.com youtube-nocookie.com youtube-ui.l.google.com yt-video-upload.l.google.com wide-youtube.l.google.com

User Hostname entries:

play.google.com x.com twitter.com t.co api.tweetdeck.com twimg.com instagram.com cdninstagram.com igcdn-photos-e-a.akamaihd.net instagramstatic.com fb.me facebook.com fbcdn.net discord.com discord.gg discord.media discordapp.com discordapp.net rutracker.net nnmclub.to m2.boominfo.org ntc.party