mirror of
https://github.com/bol-van/zapret.git
synced 2024-12-22 22:35:54 +00:00
31 lines
898 B
Plaintext
31 lines
898 B
Plaintext
|
# this custom script runs desync to all wireguard handshake initiation packets
|
||
|
|
||
|
# can override in config :
|
||
|
NFQWS_OPT_DESYNC_WG="${NFQWS_OPT_DESYNC_WG:---dpi-desync=fake --dpi-desync-any-protocol}"
|
||
|
|
||
|
alloc_dnum DNUM_WG4ALL
|
||
|
alloc_qnum QNUM_WG4ALL
|
||
|
|
||
|
zapret_custom_daemons()
|
||
|
{
|
||
|
# stop logic is managed by procd
|
||
|
|
||
|
local opt="--qnum=$QNUM_WG4ALL $NFQWS_OPT_BASE $NFQWS_OPT_DESYNC_WG"
|
||
|
do_nfqws $1 $DNUM_WG4ALL "$opt"
|
||
|
}
|
||
|
# size = 156 (8 udp header + 148 payload) && payload starts with 0x01000000
|
||
|
zapret_custom_firewall()
|
||
|
{
|
||
|
# $1 - 1 - run, 0 - stop
|
||
|
|
||
|
local f='-p udp -m u32 --u32'
|
||
|
fw_nfqws_post $1 "$f 0>>22&0x3C@4>>16=0x9c&&0>>22&0x3C@8=0x01000000" "$f 44>>16=0x9c&&48=0x01000000" $QNUM_WG4ALL
|
||
|
}
|
||
|
zapret_custom_firewall_nft()
|
||
|
{
|
||
|
# stop logic is not required
|
||
|
|
||
|
local f="udp length 156 @th,64,32 0x01000000"
|
||
|
nft_fw_nfqws_post "$f" "$f" $QNUM_WG4ALL
|
||
|
}
|