Zapret: обсуждение

как я уже писал выше, метод тыка прикольный, но тратит чужое время, когда начинаются проблемы

Это значит должен быть нолик в flow_offloading в /etc/config/firewall, а в LUCI снята галка

config defaults
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option drop_invalid '0'
        option flow_offloading_hw '1'
        option flow_offloading '0'

Если надо, включать в /opt/zapret/config или в install_easy.sh

# openwrt only : donttouch,none,software,hardware
FLOWOFFLOAD=software

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

а если не используешь вай фай то что тогда лучше включать в FLOWOFFLOAD= ?
и я так так понимаю что редактировать параметр FLOWOFFLOAD можно ведь через обычный редактор vi или только при установке ?

Если процессор способен справиться с нагрузкой и не порезать при этом скорость, оффлоад лучше вообще не использовать. Например, он несовместим с шейпингом и приоритезацией трафика.
Если hardware offload, в tcpdump тоже будешь видеть огрызки.

Если скорость режется, надо иметь в виду, что hardware вариант ничего не даст для wifi.
Проверил только что. fw4 добавляет в flowtable только порты свитча.
Собственно, свитч это и есть аппаратный модуль, реализующий оффлоад.
wifi не связан со свитчом никак. Он управляется процессором роутера и ОС. Отдельное устройство.
SFO не исключает трафик из ОС, а лишь сокращает путь обработки, исключая из него стандартные цепочки netfilter. На этом экономится процессор. Но остальное все задействуется. Поэтому SFO будет работать для любых вариантов.

Редактировать config можно и редактором, но придется потом перезапустить /etc/init.d/zapret restart.
Правильно будет сначала остановить /etc/init.d/zapret stop, потом редактировать, потом запустить /etc/init.d/zapret start

приоритезация трафика у меня всё равно не работает, минимальная сборка, нет нужных для этого пакетов, та я и раньше с ней игрался и отказался от этого, нашел другое решение для темы которую мутил

роутеры с 8 мгб памяти, много туда не засунешь, я понимаю что для полноценной работы проги нужен другой роутер где есть память, для работы полного функционала, та и проц чтоб был нормальный, тогда да, а так, на минималках, но работает, прикольно

Есть вариант затянуть все зависимости в squashfs через image builder.
Да и скачивалка в openwrt вебовская уже дает возможность запихать указанные пакеты в образ

так я так и сделал, все пакеты установлены, сами файлы запрета занимают где то 400 килобайт и у меня впритык со всеми пакетами

от luci еще можно отказаться. кучу места освободит

не, от люси никак, визуально бывает виднее, я такие пакеты, если динамический нэт, то удаляю ppp ppp-mod-pppoe, а если вай фай не нужен, то удаляю wpad-basic-mbedtls, сразу места много становится, можно и дрова наверно вай фай, не пробовал и ещё будет место
раньше сносил ipv6, нормально место освобождалось, а с час они намутили, там что то максимум 200 килобайт всего свободных, толку удалять ipv6 нету

И как это сделать?

А по итогу то инсту и фэйсбук побороли?

так они борятся через hosts
просто стратегии не помогут из за блока ip

Люся на 8 мб правда уже жмёт. Можно ещё сделать костыль, чтобы запрет ставить только в /tpm и каждый раз автоматически скачивать его при загрузке. opkg может ставить в рам, значит и люсю можно качать каждый раз заново.

Спасибо, с этим разобрался!

Но возник другой вопрос.
NFQWS_OPT_DESYNC="-dpi-desync=fake,split2 --dpi-desync-ttl=7 --dpi-desync-fooling=badseq" - так работает контрабанда (ntc.party, rezka.ag, флибуста, рутрекер и т.п)

NFQWS_OPT_DESYNC="--dpi-desync=split --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq" - так работает ютуб по tls 1.2 (нужно для андроида, по другому не хочет)

Совместить нормально не получилось, решил попробовать разделить так:
NFQWS_OPT_DESYNC="-dpi-desync=fake,split2 --dpi-desync-ttl=7 --dpi-desync-fooling=badseq --new --dpi-desync=split --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --hostlist=/opt/zapret/ipset/zapret-hosts-user-yt.txt", где zapret-hosts-user-yt.txt - хосты ютуба. Так же пробовал и 2 отдельных хостлиста задавать. Но не работает ютуб.
Потратил кучу времени уже, но так и не смог пока понять, что делаю не так.

в целом конфиг такой:

...
MODE=nfqws
MODE_HTTP=1
MODE_HTTP_KEEPALIVE=0
MODE_HTTPS=1
MODE_QUIC=1
MODE_FILTER=hostlist

DESYNC_MARK=0x40000000
DESYNC_MARK_POSTNAT=0x20000000

#NFQWS_OPT_DESYNC="--dpi-desync=fake,split2 --dpi-desync-ttl=7 --dpi-desync-fooling=badseq"
NFQWS_OPT_DESYNC="--dpi-desync=split --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq"

NFQWS_OPT_DESYNC_HTTP="--dpi-desync=fake --dpi-desync-ttl=7 --dpi-desync-fake-http=0x00000000"
NFQWS_OPT_DESYNC_QUIC="--dpi-desync=fake --dpi-desync-repeats=6"
...

на полшишки рабочий)

Каким образом возможно обойти блок по ip через hosts мм? :grinning:
Вот же туркмены, не додумались…

Хочу вернуться к теме курла с поддержкой http3. А можно его как-то скомпилировать вместе с openwrt. Чтобы получился не статический файл, а с зависимостями openssl, который заменит mbedtls? И всё это в squashfs.

Можно. Берёте сорцы отсюда: GitHub - sbwml/openwrt-curl-prebuilt: Building libcurl with HTTP/3 and QUIC support
И собираете OpenWrt сами с этими сорцами.