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

Потому что

  • Система может вносить некоторые модификации
  • Провайдер мог поставить ещё фильтра
  • Упали некоторые CDN

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

PS Все же на винде и линуксе немного разный инструментарий и окружение

ну в любом случае там написано not recommended
Видимо просто как крайний случай, который все пробивает по аналогии с wssize
(это я просто предполагаю логику автора)

Опа…
Тогда он используется только в листах дискорда(должен быть там). Дальше бесполезен
Просто он выбрал у себя режим ведения автохостлист.
Если сайт не отвечает несколько раз, то он заноситься в список и потом на нем применяется та или иная стратегия дурения

Где? В месте, на которое не наткнешься, если даже специально искать? ) В ридми нет, на гитхабе нигде нет, где может посмотреть обычный пользователь. Если честно, я вообще не нашел у него там слов not recommended

Спойлер

изображение

РЕЖИМ SYNDATA
Тут все просто. Добавляются данные в пакет SYN. Все ОС их игнорируют, если не используется TCP fast open (TFO), а DPI может воспринять, не разобравшись есть там TFO или нет. Оригинальные соединения с TFO не трогаются, поскольку это их точно сломает. Без уточняющего параметра добавляются 16 нулевых байтов.

Гитхаб Запрета

@uwu

да пусть он там хоть обпишеться. Это форк

Охренеть. И кто туда полезет, когда написано - пробуйте по порядку все ALT? Я этот батник за последние 30 минут раз 10 открыл и то не заметил )

@Hentay Я знаю что такое автохостлист ) Не буду напоминать сборку, где он впервые появился и какие при этом вылезали проблемы :upside_down_face:

Заметил что когда перезапускаю zapret то пишет !!! REFUSING TO USE BAD OPTIONS :

Summary

root@OpenWrt:~# /etc/init.d/zapret restart
Clearing nftables
net.netfilter.nf_conntrack_tcp_be_liberal = 0
!!! REFUSING TO USE BAD OPTIONS :
–filter-tcp=80 --dpi-desync=disorder2 --new
–filter-udp=50000-50100 --ipset=/opt/zapret/ipset/ipset-discord.txt --dpi-desync=fake --dpi-desync-any-protocol --dpi-desync-cutoff=d3 --dpi-desync-repeats=6 --new
–filter-tcp=443 --hostlist=/opt/zapret/ipset/list-general.txt --dpi-desync=fake,split2 --dpi-desync-autottl=2 --dpi-desync-fooling=md5sig --new --dpi-desync=syndata,split2 --new
–filter-udp=443 --hostlist=/opt/zapret/ipset/list-general.txt --dpi-desync=fake --dpi-desync-repeats=10 --dpi-desync-fake-quic=/opt/zapret/files/fake/quic_initial_www_google_com.bin

Applying nftables
Creating ip list table (firewall type nftables)
setting high oom kill priority
reloading nftables set backend (no-update)
Inserting nftables ipv4 rule for nfqws postrouting (qnum 200) : tcp dport {80,443} ct original packets 1-9
Inserting nftables ipv4 rule for nfqws prerouting (qnum 200) : tcp sport {80,443} ct reply packets 1-3
Inserting nftables ipv4 rule for nfqws postrouting (qnum 200) : udp dport {443,50000-50100} ct original packets 1-9
net.netfilter.nf_conntrack_tcp_be_liberal = 1
root@OpenWrt:~#

На что то ругается :thinking:

ipset убирайте, он через ip/nftables делается
Если у вас там большие листы, то только iptables

И маленькая ремарка

Дискорд идет через 50-discord кустом скрипт
Так что лист дискорда можно удалить, как и саму всю строчку связанную с 50000 портами

PS Только в автохост потребуется прописать домены дискорда … Поиск рулит
PS2 открой мой предыдущее сообщение тебе со спойлером. Там есть некоторые изменения

я писал без иронии, мне понравился ваш скрипт с переменными, проверками и оформлением

wssize не работает с хостлистом. если он так нужен, надо написать
–new –filter-tcp=443 --wssize 1:6
или туда, где приземляется весь трафик tcp 443

Для udp n и d - одно и то же, потому что не бывает пустых udp.
Отличия есть на tcp.
Кто-то придумал cutoff d4. Я спросил их у вас с d2 не работает ? сказали нет
не проверял, не пользуюсь, ставить и разбираться тоже не хочу. Тем более, что на провайдерах может быть по-разному.
просто добавил в настройки. сильно хуже не станет. 18 unknown фейков по 64 байта - ни о чем для современной сети

–dpi-desync=syndata,split2 пойдет на udp, что полностью лишено смысла
–new в конце не нужен

Нет, в SYN пакете сплитов быть не может в принципе.
Сплит идет во 2-ю фазу.
1 фаза - реакция перед основным пакетом данных (fake, например)
2 фаза - действие над основным пакетом данных (split2, disorder2)

Все зависит от размера памяти.
Под 128M nft выдерживает около 20K без проблем.
Чтобы загнать 100K, нужно ~384 Mb
Причем это пиковое значение. Основную часть жрет не контент в ядре, который уже загружен.
Жрет алгоритм merge в программе nft. Его задача - убрать перекрытия диапазонов, поскольку nf-сеты не могут работать с перекрытиями. И он сильно жрет память.

Я пробовал как-то cutoff d2, оно и правда не работает (судя по всему из-за кибера), nfqws после 1го пакета перестает реассемблить и отстает от соединения. С d4 такого нет соответственно. Но я особо там не вглядывался в логи

cutoff делался только для портов udp 50000-50099
Там же не quic ходит ? Если нет, то никакого реассембле не будет

а, тогда извиняюсь, я про 443 порты говорил

Ох, сколько нюансов, спасибо за пояснение, буду раскуривать мануалы дальше :slight_smile: