bol-van / zapret

DPI bypass multi platform
8.63k stars 646 forks source link

OpenWrt: tpws-socks не использует стратегии из TPWS_SOCKS_OPT #681

Closed vernette closed 1 month ago

vernette commented 1 month ago

При использовании режима tpws-socks используются стратегии не из TPWS_SOCKS_OPT, а из TPWS_OPT

OpenWrt 23.05.5
zapret v.67

Я внёс изменения в TPWS_SOCKS_OPT и всё кроме tpws-socks отключено:

FWTYPE=nftables

SET_MAXELEM=522288

IPSET_OPT="hashsize 262144 maxelem $SET_MAXELEM"

IP2NET_OPT4="--prefix-length=22-30 --v4-threshold=3/4"
IP2NET_OPT6="--prefix-length=56-64 --v6-threshold=5"

AUTOHOSTLIST_RETRANS_THRESHOLD=3
AUTOHOSTLIST_FAIL_THRESHOLD=3
AUTOHOSTLIST_FAIL_TIME=60

AUTOHOSTLIST_DEBUGLOG=0

MDIG_THREADS=30

GZIP_LISTS=1

DESYNC_MARK=0x40000000
DESYNC_MARK_POSTNAT=0x20000000

TPWS_SOCKS_ENABLE=1
TPPORT_SOCKS=987
TPWS_SOCKS_OPT="
--filter-tcp=80 --hostcase --new
--filter-tcp=443 --split-tls=sni --disorder
"

TPWS_ENABLE=0
TPWS_PORTS=80,443
TPWS_OPT="
--filter-tcp=80 --methodeol <HOSTLIST> --new
--filter-tcp=443 --split-tls=sni --disorder <HOSTLIST>
"

NFQWS_ENABLE=0
NFQWS_PORTS_TCP=80,443
NFQWS_PORTS_UDP=443
NFQWS_TCP_PKT_OUT=$((6+$AUTOHOSTLIST_RETRANS_THRESHOLD))
NFQWS_TCP_PKT_IN=3
NFQWS_UDP_PKT_OUT=$((6+$AUTOHOSTLIST_RETRANS_THRESHOLD))
NFQWS_UDP_PKT_IN=0
NFQWS_OPT="
--filter-tcp=80 --dpi-desync=fake,split2 --dpi-desync-fooling=md5sig <HOSTLIST> --new
--filter-tcp=443 --dpi-desync=fake,disorder2 --dpi-desync-fooling=md5sig <HOSTLIST> --new
--filter-udp=443 --dpi-desync=fake --dpi-desync-repeats=6 <HOSTLIST_NOAUTO>
"

MODE_FILTER=none

FLOWOFFLOAD=donttouch

INIT_APPLY_FW=1

DISABLE_IPV6=1

Но из вывода видно, что он использует стратегии из TPWS_OPT:

Clearing nftables
Starting daemon 2: /opt/zapret/tpws/tpws --user=daemon --socks --bind-addr=127.0.0.1 --bind-iface4=br-lan --bind-wait-ifup=30 --bind-wait-ip=30 --port=987
--filter-tcp=80 --methodeol  --new
--filter-tcp=443 --split-tls=sni --disorder
Applying nftables
Creating ip list table (firewall type nftables)
setting high oom kill priority
reloading nftables set backend (no-update)

Если же внести их в TPWS_OPT, а TPWS_SOCKS_OPT вообще закомментировать:

Starting daemon 2: /opt/zapret/tpws/tpws --user=daemon --socks --bind-addr=127.0.0.1 --bind-iface4=br-lan --bind-wait-ifup=30 --bind-wait-ip=30 --port=987
--filter-tcp=80 --hostcase --new
--filter-tcp=443 --split-tls=sni --disorder

Applying nftables
Creating ip list table (firewall type nftables)
setting high oom kill priority
reloading nftables set backend (no-update)
bol-van commented 1 month ago

Да, косяк. Спасибо. Пофиксено