Для дискорда трафик делится на веб и voice части, которая реализована не через http/https.
Веб часть должна обходится стандартным образом.
Если чтобы ее обойти якобы нужны какие-то листы, то значит вы идете в неверном направлении.
ВАЖНО : множественные стратегии создавались только для случаев, когда невозможно обьединить имеющиеся стратегии для разных ресурсов. Копирование стратегий из blockcheck для разных сайтов во множество профилей без понимания как они работают приведет к нагромождению параметров, которые все равно не покроют все возможные заблокированные ресурсы. Вы только увязните в этой каше.
это для меня, есть мысль, что не так уж там и много “стратегий”, то что было до августа идет одним списком, то что вместе с гуглвидео другим, а теперь вот еще UDP добавился.
Как мне кажется с гуглвидео уникальная ситуация. Без каких-либо средств обхода все еще можно еле как-то загрузить видео на 144р, с disorder2 можно достичь 1080p но оно регулярно зависает, и наконец с fake он полностью работоспособен. Учитывая что дискорд заблочили после ютуба и он - помимо войса - у меня обходится простым disorder2, я думаю что-то мутят конкретно с ютубом.
Верно, для ютуба действительно есть особые правила.
Там явно прослеживается запрет SNI, кроме гугловских. Видимо это борьба с фейками от гудбая и от слишком умных провайдеров.
Есть 3 факта
У провайдеров РКН клянчил адреса GGC
Провайдеры , пользуясь отсутствием официального запрета ютубе, пытались надуть РКН путем применения обмана DPI, что заставило РКН реагировать. Провайдеры нихрена не достигли, им погрозили пальчиком, а всем остальным обход усложнился из-за действия этих глупых провайдеров.
Не-гугловские фейки работают везде, кроме GGC гуглевидео. См пункт 1
Ну значит я просто везунчик и новые блокировки просто добавляю к гуглвидео и оно работает. Про ограничение скорости тоже не видел, либо не работает вовсе, либо валит на все деньги.
# this file is included from init scripts
# change values here
# can help in case /tmp has not enough space
#TMPDIR=/opt/zapret/tmp
# redefine user for zapret daemons. required on Keenetic
#WS_USER=nobody
# override firewall type : iptables,nftables,ipfw
FWTYPE=nftables
# options for ipsets
# maximum number of elements in sets. also used for nft sets
SET_MAXELEM=522288
# too low hashsize can cause memory allocation errors on low RAM systems , even if RAM is enough
# too large hashsize will waste lots of RAM
IPSET_OPT="hashsize 262144 maxelem $SET_MAXELEM"
# dynamically generate additional ip. $1 = ipset/nfset/table name
#IPSET_HOOK="/etc/zapret.ipset.hook"
# options for ip2net. "-4" or "-6" auto added by ipset create script
IP2NET_OPT4="--prefix-length=22-30 --v4-threshold=3/4"
IP2NET_OPT6="--prefix-length=56-64 --v6-threshold=5"
# options for auto hostlist
AUTOHOSTLIST_RETRANS_THRESHOLD=3
AUTOHOSTLIST_FAIL_THRESHOLD=3
AUTOHOSTLIST_FAIL_TIME=60
# 1 = debug autohostlist positives to ipset/zapret-hosts-auto-debug.log
AUTOHOSTLIST_DEBUGLOG=0
# number of parallel threads for domain list resolves
MDIG_THREADS=30
# ipset/*.sh can compress large lists
GZIP_LISTS=1
# command to reload ip/host lists after update
# comment or leave empty for auto backend selection : ipset or ipfw if present
# on BSD systems with PF no auto reloading happens. you must provide your own command
# set to "-" to disable reload
#LISTS_RELOAD="pfctl -f /etc/pf.conf"
# override ports
#HTTP_PORTS=80-81,85
#HTTPS_PORTS=443,500-501
#QUIC_PORTS=443,444
# CHOOSE OPERATION MODE
# MODE : nfqws,tpws,tpws-socks,filter,custom
# nfqws : nfqws for dpi desync
# tpws : tpws transparent mode
# tpws-socks : tpws socks mode
# filter : no daemon, just create ipset or download hostlist
# custom : custom mode. should modify custom init script and add your own code
MODE=nfqws
# apply fooling to http
MODE_HTTP=1
# for nfqws only. support http keep alives. enable only if DPI checks for http request in any outgoing packet
MODE_HTTP_KEEPALIVE=1
# apply fooling to https
MODE_HTTPS=1
# apply fooling to quic
MODE_QUIC=1
# none,ipset,hostlist,autohostlist
MODE_FILTER=autohostlist
# CHOOSE NFQWS DAEMON OPTIONS for DPI desync mode. run "nfq/nfqws --help" for option list
# SUFFIX VARS define additional lower priority desync profile. it's required if MODE_FILTER=hostlist and strategy has hostlist-incompatible 0-phase desync methods (syndata,wssize)
DESYNC_MARK=0x40000000
DESYNC_MARK_POSTNAT=0x20000000
NFQWS_OPT_DESYNC="--hostlist=/opt/zapret/zapret_lists/russia-youtubeGV.txt --filter-tcp=443 --dpi-desync=split --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-repeats=10 --dpi-desync-autottl --new
--hostlist=/opt/zapret/zapret_lists/russia-youtube.txt --filter-tcp=443 --dpi-desync=fake,split2 --dpi-desync-split-seqovl=2 --dpi-desync-split-pos=3 --dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin --dpi-desync-ttl=autottl --new
--hostlist=/opt/zapret/zapret_lists/russia-blacklist.txt --filter-tcp=80 --dpi-desync=fake,split2 --dpi-desync-fooling=md5sig --dpi-desync-autottl --new
--hostlist=/opt/zapret/zapret_lists/russia-blacklist.txt --filter-tcp=443 --dpi-desync=fake,split2 --dpi-desync-split-seqovl=1 --dpi-desync-split-tls=sniext --dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin --dpi-desync-skip-nosni=1 --dpi-desync-autottl --new
--dpi-desync=fake,split2 --filter-tcp=443 --dpi-desync=split --dpi-desync-split-pos=1 --dpi-desync-fooling=badseq --dpi-desync-repeats=10 --dpi-desync-autottl"
#NFQWS_OPT_DESYNC_SUFFIX="--dpi-desync=syndata"
#NFQWS_OPT_DESYNC_HTTP=""
#NFQWS_OPT_DESYNC_HTTP_SUFFIX="--dpi-desync=syndata"
#NFQWS_OPT_DESYNC_HTTPS=""
#NFQWS_OPT_DESYNC_HTTPS_SUFFIX="--wssize 1:6"
#NFQWS_OPT_DESYNC_HTTP6=""
#NFQWS_OPT_DESYNC_HTTP6_SUFFIX="--dpi-desync=syndata"
#NFQWS_OPT_DESYNC_HTTPS6=""
#NFQWS_OPT_DESYNC_HTTPS6_SUFFIX="--wssize 1:6"
NFQWS_OPT_DESYNC_QUIC="--dpi-desync=fake --dpi-desync-repeats=10"
#NFQWS_OPT_DESYNC_QUIC_SUFFIX=""
#NFQWS_OPT_DESYNC_QUIC6="--dpi-desync=hopbyhop"
#NFQWS_OPT_DESYNC_QUIC6_SUFFIX=""
# CHOOSE TPWS DAEMON OPTIONS. run "tpws/tpws --help" for option list
# SUFFIX VARS define additional lower priority desync profile. it's required if MODE_FILTER=hostlist and strategy has hostlist-incompatible 0-phase desync methods (mss)
TPWS_OPT="--hostspell=HOST --split-http-req=method --split-pos=3 --oob"
#TPWS_OPT_SUFFIX="--mss 88"
# openwrt only : donttouch,none,software,hardware
FLOWOFFLOAD=donttouch
# openwrt: specify networks to be treated as LAN. default is "lan"
#OPENWRT_LAN="lan lan2 lan3"
# openwrt: specify networks to be treated as WAN. default wans are interfaces with default route
#OPENWRT_WAN4="wan vpn"
#OPENWRT_WAN6="wan6 vpn6"
# for routers based on desktop linux and macos. has no effect in openwrt.
# CHOOSE LAN and optinally WAN/WAN6 NETWORK INTERFACES
# or leave them commented if its not router
# it's possible to specify multiple interfaces like this : IFACE_LAN="eth0 eth1 eth2"
# if IFACE_WAN6 is not defined it take the value of IFACE_WAN
#IFACE_LAN=eth0
#IFACE_WAN=eth1
#IFACE_WAN6="ipsec0 wireguard0 he_net"
# should start/stop command of init scripts apply firewall rules ?
# not applicable to openwrt with firewall3+iptables
INIT_APPLY_FW=1
# firewall apply hooks
#INIT_FW_PRE_UP_HOOK="/etc/firewall.zapret.hook.pre_up"
#INIT_FW_POST_UP_HOOK="/etc/firewall.zapret.hook.post_up"
#INIT_FW_PRE_DOWN_HOOK="/etc/firewall.zapret.hook.pre_down"
#INIT_FW_POST_DOWN_HOOK="/etc/firewall.zapret.hook.post_down"
# do not work with ipv4
#DISABLE_IPV4=1
# do not work with ipv6
DISABLE_IPV6=0
# select which init script will be used to get ip or host list
# possible values : get_user.sh get_antizapret.sh get_combined.sh get_reestr.sh get_hostlist.sh
# comment if not required
#GETLIST=
Как-то там все не очень хорошо с этим родительским контролем, я изучал вопрос уже:
Гугл - очень душный однозначно нет!
Встроенный в андроид - возможно, но очень жидкий функционал по сути ограничение времени работы приложений и блокировка запуска приложений хорошо но недостаточно
Сторонние приложения - однозначно нет, все они платные и крайне низкого качества…
Может как-то можно изготовить параметр для тестирования чего-то там --drop-all например
Можно даже в документацию ничего не писать
я даже готов оказать посильную финансовую помощь javoroleg@yandex.ru
Спасибо.
Потому что начинать надо с наименее инвазивных техник.
Можно чуток кожу надрезать. Можно отрезать палец. потом руку. Потом голову.
Если можно мелким разрезом вылечить, зачем сразу секир бошка ?
Чем сильнее порежешь, тем скорее пациент где-нибудь споткнется или умрет.
А потом будете писать крокодила с 20 профилями и листами и потом обсуждать здесь что не работает на 200 постов.
Если надо лишь управлять проксированием в зависимости от домена, то уже давно существует универсальное готовое решение. xray. Велик изобретать смысла нет. Составить список разрешенных, которые запустить на свободный выход. Остальные в унитаз
xray можно даже запустить в режиме прозрачного прокси
вопрос такой этот репозиторий можно юзать или нет с запретом? Потому что как я понял это форк от запрета bolvan, но хотелось бы быть уверенным в том немножко что человеку можно довериться юзать его форк, никто не знает?
Я думаю можно просто флаги вытащить из батников и к себе применить ради теста…ну и листы посмотреть вдруг у себя какой то сайт пропустили. Вирус-то так не словить, а сама репа наверное для удобства. (Ну чтобы простой человек нажал 1 кнопку и все и не думал о том какие где параметры применяются).