@<config_file>|$<config_file> ; ΡΠΈΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π°. ΠΎΠΏΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ. ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ ΠΈΠ³Π½ΠΎΡΠΈΡΡΡΡΡΡ.
--debug=0|1 ; 1=Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
--dry-run ; ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΎΠΏΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈ Π²ΡΠΉΡΠΈ. ΠΊΠΎΠ΄ 0 - ΡΡΠΏΠ΅ΡΠ½Π°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°.
--version ; Π²ΡΠ²Π΅ΡΡΠΈ Π²Π΅ΡΡΠΈΡ ΠΈ Π²ΡΠΉΡΠΈ
--comment ; Π»ΡΠ±ΠΎΠΉ ΡΠ΅ΠΊΡΡ (ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ)
--daemon ; Π΄Π΅ΠΌΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³Ρ
--pidfile=<file> ; ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ PID Π² ΡΠ°ΠΉΠ»
--user=<username> ; ΠΌΠ΅Π½ΡΡΡ uid ΠΏΡΠΎΡΠ΅ΡΡΠ°
--uid=uid[:gid] ; ΠΌΠ΅Π½ΡΡΡ uid ΠΏΡΠΎΡΠ΅ΡΡΠ°
--qnum=N ; Π½ΠΎΠΌΠ΅Ρ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ N
--bind-fix4 ; ΠΏΡΡΠ°ΡΡΡΡ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅Π²Π΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ±ΠΎΡΠ° ΠΈΡΡ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π΄Π»Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ipv4 ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
--bind-fix6 ; ΠΏΡΡΠ°ΡΡΡΡ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅Π²Π΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ±ΠΎΡΠ° ΠΈΡΡ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π΄Π»Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ipv6 ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
--ctrack-timeouts=S:E:F[:U] ; ΡΠ°ΠΉΠΌΠ°ΡΡΡ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ conntrack Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΡΡ
SYN, ESTABLISHED, FIN, ΡΠ°ΠΉΠΌΠ°ΡΡ udp. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 60:300:60:60
--ctrack-disable=[0|1] ; 1 ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ conntrack
--ipcache-lifetime=<int> ; Π²ΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½ΠΈ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΊΡΡΠ° IP Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
. 0 - Π±Π΅Π· ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ.
--ipcache-hostname=[0|1] ; 1 ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ Ρ
ΠΎΡΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΡ
Π½ΡΠ»Π΅Π²ΠΎΠΉ ΡΠ°Π·Ρ
--wsize=<winsize>[:<scale_factor>] ; ΠΌΠ΅Π½ΡΡΡ tcp window size Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π² SYN,ACK. Π΅ΡΠ»ΠΈ Π½Π΅ Π·Π°Π΄Π°Π½ scale_factor, ΡΠΎ ΠΎΠ½ Π½Π΅ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ (ΡΡΡΠ°ΡΠ΅Π»ΠΎ !)
--wssize=<winsize>[:<scale_factor>] ; ΠΌΠ΅Π½ΡΡΡ tcp window size Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
. scale_factor ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 0. (ΡΠΌ. conntrack !)
--wssize-cutoff=[n|d|s]N ; ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ server window size Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
(n), ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
(d), ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
sequence (s) ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ N
--wssize-forced-cutoff=0|1 ; 1(default)=Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡ wssize Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°
--synack-split=[syn|synack|acksyn] ; Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ tcp split handshake. Π²ΠΌΠ΅ΡΡΠΎ SYN,ACK ΠΎΡΡΡΠ»Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ SYN, SYN+ACK ΠΈΠ»ΠΈ ACK+SYN
--orig-ttl=<int> ; ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ TTL ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ°
--orig-ttl6=<int> ; ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ipv6 hop limit ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ --orig-ttl
--orig-autottl=[<delta>[:<min>[-<max>]]|-] ; ΡΠ΅ΠΆΠΈΠΌ auto ttl Π΄Π»Ρ ipv4 ΠΈ ipv6. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: +5:3-64. "0:0-0" ΠΈΠ»ΠΈ "-" ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ
--orig-autottl6=[<delta>[:<min>[-<max>]]|-] ; ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ ipv6
--orig-tcp-flags-set=<int|0xHEX|flaglist> ; ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ tcp ΡΠ»Π°Π³ΠΈ (flags |= value). ΡΠΈΡΠ»ΠΎ , Π»ΠΈΠ±ΠΎ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ : FIN,SYN,RST,PSH,ACK,URG,ECE,CWR,AE,R1,R2,R3
--orig-tcp-flags-unset=<int|0xHEX|flaglist> ; ΡΠ΄Π°Π»ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ tcp ΡΠ»Π°Π³ΠΈ (flags &= ~value)
--orig-mod-start=[n|d|s]N ; ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ orig-mod ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
(n), ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
(d), ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
sequence (s) ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΠΎ N
--orig-mod-cutoff=[n|d|s]N ; ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ orig-mod ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
(n), ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
(d), ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
sequence (s) ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ N
--dup=<int> ; Π²ΡΡΡΠ»Π°ΡΡ N Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π΄ΠΎ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°
--dup-replace=[0|1] ; 1 ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°. ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ.
--dup-ttl=<int> ; ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ TTL Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
--dup-ttl6=<int> ; ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ipv6 hop limit Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ². Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ --dup-ttl
--dup-autottl=[<delta>[:<min>[-<max>]]|-] ; ΡΠ΅ΠΆΠΈΠΌ auto ttl Π΄Π»Ρ ipv4 ΠΈ ipv6. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: +1:3-64. "0:0-0" ΠΈΠ»ΠΈ "-" ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ
--dup-autottl6=[<delta>[:<min>[-<max>]]|-] ; ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ ipv6
--dup-tcp-flags-set=<int|0xHEX|flaglist> ; ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ tcp ΡΠ»Π°Π³ΠΈ (flags |= value). ΡΠΈΡΠ»ΠΎ , Π»ΠΈΠ±ΠΎ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ : FIN,SYN,RST,PSH,ACK,URG,ECE,CWR,AE,R1,R2,R3
--dup-tcp-flags-unset=<int|0xHEX|flaglist> ; ΡΠ΄Π°Π»ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ tcp ΡΠ»Π°Π³ΠΈ (flags &= ~value)
--dup-fooling=<fooling> ; Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊΠΈ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎΠ±Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°Ρ Π½Π΅ Π΄ΠΎΡΠ΅Π» Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°. none md5sig badseq badsum datanoack ts hopbyhop hopbyhop2
--dup-ts-increment=<int|0xHEX> ; ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ TSval Π΄Π»Ρ ts. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -600000
--dup-badseq-increment=<int|0xHEX> ; ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ sequence number Π΄Π»Ρ badseq. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -10000
--dup-badack-increment=<int|0xHEX> ; ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ ack sequence number Π΄Π»Ρ badseq. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -66000
--dup-ip-id=same|zero|seq|rnd ; ΡΠ΅ΠΆΠΈΠΌ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ip_id Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² dup
--dup-start=[n|d|s]N ; ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ dup ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
(n), ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
(d), ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
sequence (s) ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΠΎ N
--dup-cutoff=[n|d|s]N ; ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ dup ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
(n), ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
(d), ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
sequence (s) ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ N
--hostcase ; ΠΌΠ΅Π½ΡΡΡ ΡΠ΅Π³ΠΈΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° "Host:" ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π° "host:".
--hostnospace ; ΡΠ±ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π΅Π» ΠΏΠΎΡΠ»Π΅ "Host:" ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ Π΅Π³ΠΎ Π² ΠΊΠΎΠ½Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ "User-Agent:" Π΄Π»Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π»ΠΈΠ½Ρ ΠΏΠ°ΠΊΠ΅ΡΠ°
--methodeol ; Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ Π² unix ΡΡΠΈΠ»Π΅ ('\n') ΠΏΠ΅ΡΠ΅Π΄ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΈ ΡΠ±ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π΅Π» ΠΈΠ· Host: : "GET / ... Host: domain.com" => "\nGET / ... Host:domain.com"
--hostspell=HoST ; ΡΠΎΡΠ½ΠΎΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Host (ΠΌΠΎΠΆΠ½ΠΎ "HOST" ΠΈΠ»ΠΈ "HoSt"). Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠΌ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ --hostcase
--domcase ; Π΄ΠΎΠΌΠ΅Π½ ΠΏΠΎΡΠ»Π΅ Host: ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊΠΈΠΌ : TeSt.cOm
--ip-id=seq|seqgroup|rnd|zero ; ΡΠ΅ΠΆΠΈΠΌ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ip_id Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
--dpi-desync=[<mode0>,]<mode>[,<mode2] ; Π°ΡΠ°ΠΊΠ° ΠΏΠΎ Π΄Π΅ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ DPI. mode : synack syndata fake fakeknown rst rstack hopbyhop destopt ipfrag1 multisplit multidisorder fakedsplit hostfakesplit fakeddisorder ipfrag2 udplen tamper
--dpi-desync-fwmark=<int|0xHEX> ; Π±ΠΈΡ fwmark Π΄Π»Ρ ΠΏΠΎΠΌΠ΅ΡΠΊΠΈ Π΄Π΅ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΡΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ Π½Π΅ ΠΏΠ°Π΄Π°Π»ΠΈ Π² ΠΎΡΠ΅ΡΠ΅Π΄Ρ. default = 0x40000000
--dpi-desync-ttl=<int> ; ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ttl Π΄Π»Ρ Π΄Π΅ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΡΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
--dpi-desync-ttl6=<int> ; ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ipv6 hop limit Π΄Π»Ρ Π΄Π΅ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΡΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ --dpi-desync-ttl
--dpi-desync-autottl=[<delta>[:<min>[-<max>]]|-] ; ΡΠ΅ΠΆΠΈΠΌ auto ttl Π΄Π»Ρ ipv4 ΠΈ ipv6. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: 1:3-20. "0:0-0" ΠΈΠ»ΠΈ "-" ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ
--dpi-desync-autottl6=[<delta>[:<min>[-<max>]]|-] ; ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ ipv6
--dpi-desync-tcp-flags-set=<int|0xHEX|flaglist> ; ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ tcp ΡΠ»Π°Π³ΠΈ (flags |= value). ΡΠΈΡΠ»ΠΎ , Π»ΠΈΠ±ΠΎ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ : FIN,SYN,RST,PSH,ACK,URG,ECE,CWR,AE,R1,R2,R3
--dpi-desync-tcp-flags-unset=<int|0xHEX|flaglist> ; ΡΠ΄Π°Π»ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ tcp ΡΠ»Π°Π³ΠΈ (flags &= ~value)
--dpi-desync-fooling=<fooling> ; Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊΠΈ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎΠ±Ρ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ Π½Π΅ Π΄ΠΎΡΠ΅Π» Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°. none md5sig badseq badsum datanoack ts hopbyhop hopbyhop2
--dpi-desync-repeats=<N> ; ΠΏΠΎΡΡΠ»Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ Π² nfqws ΠΏΠ°ΠΊΠ΅Ρ N ΡΠ°Π· (Π½Π΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ)
--dpi-desync-skip-nosni=0|1 ; 1(default)=Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ dpi desync Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π±Π΅Π· hostname Π² SNI, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ESNI
--dpi-desync-split-pos=N|-N|marker+N|marker-N ; ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ ΠΌΠ°ΡΠΊΠ΅ΡΠΎΠ² Π΄Π»Ρ tcp ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π² ΡΠ΅ΠΆΠΈΠΌΠ°Ρ
split ΠΈ disorder
--dpi-desync-split-seqovl=N|-N|marker+N|marker-N ; Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΉ ΠΌΠ°ΡΠΊΠ΅Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΠΏΠ΅ΡΠ΅ΠΊΡΡΡΠΈΡ sequence Π² ΡΠ΅ΠΆΠΈΠΌΠ°Ρ
split ΠΈ disorder. Π΄Π»Ρ split ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ.
--dpi-desync-split-seqovl-pattern=[+ofs]@<filename>|0xHEX ; ΡΠ΅ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΡ ΡΠ°ΡΡΡ overlap
--dpi-desync-fakedsplit-pattern=[+ofs]@<filename>|0xHEX ; ΡΠ΅ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ ΡΠ΅ΠΉΠΊΠΈ Π² fakedsplit/fakeddisorder
--dpi-desync-fakedsplit-mod=mod[,mod] ; ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ none, altorder=0|1|2|3 + 0|8|16
--dpi-desync-hostfakesplit-midhost=marker+N|marker-N ; ΠΌΠ°ΡΠΊΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ΅Π·Π° ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ° Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΠΌ Ρ
ΠΎΡΡΠΎΠΌ. Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² ΠΏΡΠ΅Π΄Π΅Π»Ρ Ρ
ΠΎΡΡΠ°.
--dpi-desync-hostfakesplit-mod=mod[,mod] ; ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ none, host=<hostname>, altorder=0|1
--dpi-desync-ts-increment=<int|0xHEX> ; ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ TSval Π΄Π»Ρ ts. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -600000
--dpi-desync-badseq-increment=<int|0xHEX> ; ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ sequence number Π΄Π»Ρ badseq. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -10000
--dpi-desync-badack-increment=<int|0xHEX> ; ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ ack sequence number Π΄Π»Ρ badseq. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ -66000
--dpi-desync-any-protocol=0|1 ; 0(default)=ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎ http request ΠΈ tls clienthello 1=ΠΏΠΎ Π²ΡΠ΅ΠΌ Π½Π΅ΠΏΡΡΡΡΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌ Π΄Π°Π½Π½ΡΡ
--dpi-desync-fake-tcp-mod=mod[,mod] ; ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² runtime ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ tcp ΡΠ΅ΠΉΠΊΠΎΠ² (Π»ΡΠ±ΡΡ
) : none, seq
--dpi-desync-fake-http=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ http Π·Π°ΠΏΡΠΎΡ Π΄Π»Ρ dpi-desync=fake, Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌΡ www.iana.org
--dpi-desync-fake-tls=[+ofs]@<filename>|0xHEX|![+offset] ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ tls clienthello Π΄Π»Ρ dpi-desync=fake, Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌΡ. '!' = ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠ΅ΠΉΠΊ
--dpi-desync-fake-tls-mod=mod[,mod] ; ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² runtime ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ΅ΠΉΠΊΠΎΠ² : none,rnd,rndsni,sni=<sni>,dupsid,padencap
--dpi-desync-fake-unknown=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π΄Π»Ρ dpi-desync=fake, Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ Π½ΡΠ»ΡΠΌ 256 Π±Π°ΠΉΡ
--dpi-desync-fake-syndata=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄ ΠΏΠ°ΠΊΠ΅ΡΠ° SYN Π΄Π»Ρ ΡΠ΅ΠΆΠΈΠΌΠ° Π΄Π΅ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ syndata
--dpi-desync-fake-quic=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ QUIC Initial
--dpi-desync-fake-wireguard=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ wireguard handshake initiation
--dpi-desync-fake-dht=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄ DHT ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π΄Π»Ρ dpi-desync=fake, Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ Π½ΡΠ»ΡΠΌ 64 Π±Π°ΠΉΡ
--dpi-desync-fake-discord=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄ Discord ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π½Π°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΡ IP Π°Π΄ΡΠ΅ΡΠ° Π΄Π»Ρ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΡΡ
ΡΠ°ΡΠΎΠ² Π΄Π»Ρ dpi-desync=fake, Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ Π½ΡΠ»ΡΠΌ 64 Π±Π°ΠΉΡ
--dpi-desync-fake-stun=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄ STUN ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π΄Π»Ρ dpi-desync=fake, Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ Π½ΡΠ»ΡΠΌ 64 Π±Π°ΠΉΡ
--dpi-desync-fake-unknown-udp=[+ofs]@<filename>|0xHEX ; ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ΅ΠΉΠΊΠΎΠ²ΡΠΉ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠ³ΠΎ udp ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π΄Π»Ρ dpi-desync=fake, Π½Π° Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ Π½ΡΠ»ΡΠΌ 64 Π±Π°ΠΉΡ
--dpi-desync-udplen-increment=<int> ; Π½Π° ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ Π΄Π»ΠΈΠ½Ρ udp ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄Π° Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ udplen
--dpi-desync-udplen-pattern=[+ofs]@<filename>|0xHEX ; ΡΠ΅ΠΌ Π΄ΠΎΠ±ΠΈΠ²Π°ΡΡ udp ΠΏΠ°ΠΊΠ΅Ρ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ udplen. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ - Π½ΡΠ»ΠΈ
--dpi-desync-start=[n|d|s]N ; ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ dpi desync ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
(n), ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
(d), ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
sequence (s) ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΠΎ N
--dpi-desync-cutoff=[n|d|s]N ; ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ dpi desync ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
(n), ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
(d), ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
sequence (s) ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ N
--hostlist=<filename> ; Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°Π΄ Π΄ΠΎΠΌΠ΅Π½Π°ΠΌΠΈ, Π²Ρ
ΠΎΠ΄ΡΡΠΈΠΌΠΈ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ· filename. ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ, Π΅ΡΠ»ΠΈ Ρ
ΠΎΡΡ Π½Π΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ '^'.
; Π² ΡΠ°ΠΉΠ»Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Ρ
ΠΎΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅.
; ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΡΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΡΡΠ°ΡΡΠ΅ ΠΈ Ρ
ΡΠ°Π½ΠΈΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΈΠ΅ΡΠ°ΡΡ
ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ°.
; ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ°ΠΉΠ»Π° ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΡΠΈΡΡΠ²Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ
; ΡΠΏΠΈΡΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΠ°ΠΊΠΎΠ²Π°Π½ Π² gzip. ΡΠΎΡΠΌΠ°Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π΅ΡΡΡ ΠΈ ΡΠ°Π·ΠΆΠΈΠΌΠ°Π΅ΡΡΡ
; ΡΠΏΠΈΡΠΊΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ. ΠΏΡΡΡΠΎΠΉ ΠΎΠ±ΡΠΈΠΉ Π»ΠΈΡΡ = Π΅Π³ΠΎ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅
; Ρ
ΠΎΡΡΡ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡΡΡ ΠΈΠ· Host: Ρ
Π΅Π΄Π΅ΡΠ° ΠΎΠ±ΡΡΠ½ΡΡ
http Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΈΠ· SNI Π² TLS ClientHello.
--hostlist-domains=<domain_list> ; ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΡΠ΅ΡΠ΅Π· Π·ΡΠΏΡΡΡΡ. ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ # Π² Π½Π°ΡΠ°Π»Π΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
Π΄ΠΎΠΌΠ΅Π½ΠΎΠ².
--hostlist-exclude=<filename> ; Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΄ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ Π΄ΠΎΠΌΠ΅Π½Π°ΠΌ ΠΈΠ· Π»ΠΈΡΡΠ°. ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π»ΠΈΡΡΠΎΠ². ΡΡ
Π΅ΠΌΠ° Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½Π° include Π»ΠΈΡΡΠ°ΠΌ.
--hostlist-exclude-domains=<domain_list> ; ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΡΠ΅ΡΠ΅Π· Π·ΡΠΏΡΡΡΡ. ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ # Π² Π½Π°ΡΠ°Π»Π΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
Π΄ΠΎΠΌΠ΅Π½ΠΎΠ².
--hostlist-auto=<filename> ; ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ hostlist (ΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Ρ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°)
--hostlist-auto-fail-threshold=<int> ; ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΏΠΎΡ
ΠΎΠΆΡΡ Π½Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Ρ
ΠΎΡΡ Π² Π»ΠΈΡΡ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: 3)
--hostlist-auto-fail-time=<int> ; Π²ΡΠ΅ ΡΡΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ
ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΠ½Π΄ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: 60)
--hostlist-auto-retrans-threshold=<int> ; ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΡΠ°Π½ΡΠΌΠΈΡΡΠΈΠΉ Π·Π°ΠΏΡΠΎΡΠ° ΡΡΠΈΡΠ°ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΎΠΉ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: 3)
--hostlist-auto-debug=<logfile> ; Π»ΠΎΠ³ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎ autohostlist. ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΌ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Ρ
ΠΎΡΡΡ.
--new ; Π½Π°ΡΠ°Π»ΠΎ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ (Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠΈΠ»Ρ)
--skip ; Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΡΠΎΡΠΈΠ»Ρ . ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π΅Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΠΏΡΠΎΡΠΈΠ»Ρ Π±Π΅Π· ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².
--filter-l3=ipv4|ipv6 ; ΡΠΈΠ»ΡΡΡ Π²Π΅ΡΡΠΈΠΈ ip Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ
--filter-tcp=[~]port1[-port2]|* ; ΡΠΈΠ»ΡΡΡ ΠΏΠΎΡΡΠΎΠ² tcp Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ. ~ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡ. ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΈΠ»ΡΡΡΠ° tcp ΠΈ Π½Π΅ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΈΠ»ΡΡΡΠ° udp Π·Π°ΠΏΡΠ΅ΡΠ°Π΅Ρ udp. ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ.
--filter-udp=[~]port1[-port2]|* ; ΡΠΈΠ»ΡΡΡ ΠΏΠΎΡΡΠΎΠ² udp Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ. ~ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡ. ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΈΠ»ΡΡΡΠ° udp ΠΈ Π½Π΅ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΈΠ»ΡΡΡΠ° tcp Π·Π°ΠΏΡΠ΅ΡΠ°Π΅Ρ tcp. ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ.
--filter-l7=<proto> ; ΡΠΈΠ»ΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° L6-L7. ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ. proto : http tls quic wireguard dht discord stun unknown
--filter-ssid=ssid1[,ssid2,ssid3,...] ; ΡΠΈΠ»ΡΡΡ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ wifi ΡΠ΅ΡΠΈ (ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ linux)
--ipset=<filename> ; Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ip list. Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΡΠΊΠ΅ ip ΠΈΠ»ΠΈ cidr ipv4 ΠΈΠ»ΠΈ ipv6. ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π»ΠΈΡΡΠΎΠ² ΠΈ gzip. ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΊΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ.
--ipset-ip=<ip_list> ; ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ΄ΡΠ΅ΡΠ΅ΠΉ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ. ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ # Π² Π½Π°ΡΠ°Π»Π΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΠ΄ΡΠ΅ΡΠ΅ΠΉ.
--ipset-exclude=<filename> ; ΠΈΡΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ip list. Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΡΠΊΠ΅ ip ΠΈΠ»ΠΈ cidr ipv4 ΠΈΠ»ΠΈ ipv6. ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π»ΠΈΡΡΠΎΠ² ΠΈ gzip. ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΊΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ.
--ipset-exclude-ip=<ip_list> ; ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ΄ΡΠ΅ΡΠ΅ΠΉ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ. ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ # Π² Π½Π°ΡΠ°Π»Π΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΠΏΠΎΠ΄ΡΠ΅ΡΠ΅ΠΉ.π Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² nfqws v72.2
π§ ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅
@<file> | $<file> # ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ ΠΈΠ· ΡΠ°ΠΉΠ»Π° (Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΌ)
--debug=0|1 # ΠΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
--dry-run # ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈ Π²ΡΠΉΡΠΈ
--version # ΠΠΎΠΊΠ°Π·Π°ΡΡ Π²Π΅ΡΡΠΈΡ
--comment # ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ (ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ)
--daemon # ΠΠ°ΠΏΡΡΡΠΈΡΡ ΠΊΠ°ΠΊ Π΄Π΅ΠΌΠΎΠ½
--pidfile=<file> # Π€Π°ΠΉΠ» PID
--user=<username> # Π‘ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
--uid=uid[:gid] # Π‘ΠΌΠ΅Π½ΠΈΡΡ UID:GID
--qnum=N # ΠΠΎΠΌΠ΅Ρ NFQUEUEΠ‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ
--bind-fix4 # Π€ΠΈΠΊΡ Π²ΡΠ±ΠΎΡΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° IPv4
--bind-fix6 # Π€ΠΈΠΊΡ Π²ΡΠ±ΠΎΡΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° IPv6
--ctrack-timeouts=S:E:F[:U] # Π’Π°ΠΉΠΌΠ°ΡΡΡ conntrack (ΠΏΠΎ ΡΠΌΠΎΠ»Ρ: 60:300:60:60)
--ctrack-disable=[0|1] # ΠΡΠΊΠ»ΡΡΠΈΡΡ conntrack
--ipcache-lifetime=<int> # ΠΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½ΠΈ IP-ΠΊΡΡΠ° (ΡΠ΅ΠΊ), 0=β
--ipcache-hostname=[0|1] # ΠΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π° Ρ
ΠΎΡΡΠΎΠ²π― ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (orig)
--orig-ttl=<int> # TTL Π΄Π»Ρ IPv4
--orig-ttl6=<int> # Hop limit Π΄Π»Ρ IPv6
--orig-autottl=[<delta>[:<min>[-<max>]]|-] # AutoTTL IPv4/6 (Π΄Π΅ΡΠΎΠ»Ρ: +5:3-64)
--orig-autottl6=[...] # AutoTTL ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ IPv6
--orig-tcp-flags-set=<flags> π # Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ TCP ΡΠ»Π°Π³ΠΈ
--orig-tcp-flags-unset=<flags> π # Π‘Π½ΡΡΡ TCP ΡΠ»Π°Π³ΠΈ
--orig-mod-start=[n|d|s]N # ΠΠ°ΡΠ°ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Ρ ΠΏΠ°ΠΊΠ΅ΡΠ° N
--orig-mod-cutoff=[n|d|s]N # ΠΡΠ΅ΠΊΡΠ°ΡΠΈΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠ°ΠΊΠ΅ΡΠ° Nπ₯ ΠΡΠ±Π»ΠΈΠΊΠ°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (dup)
--dup=<int> # ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
--dup-replace=[0|1] # ΠΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ (Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»)
--dup-ttl=<int> # TTL Π΄Π»Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
--dup-ttl6=<int> # Hop limit Π΄Π»Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² IPv6
--dup-autottl=[<delta>[:<min>[-<max>]]|-] # AutoTTL (Π΄Π΅ΡΠΎΠ»Ρ: +1:3-64)
--dup-autottl6=[...] # AutoTTL Π΄Π»Ρ IPv6
--dup-tcp-flags-set=<flags> π # Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ TCP ΡΠ»Π°Π³ΠΈ
--dup-tcp-flags-unset=<flags> π # Π‘Π½ΡΡΡ TCP ΡΠ»Π°Π³ΠΈ
--dup-fooling=<method> # ΠΠ΅ΡΠΎΠ΄ "ΠΎΠ±ΠΌΠ°Π½Π°": md5sig, badseq, badsum, datanoack, ts, hopbyhop, hopbyhop2
--dup-ts-increment=<int> # ΠΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ TSval (Π΄Π΅ΡΠΎΠ»Ρ: -600000)
--dup-badseq-increment=<int> # ΠΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ SEQ (Π΄Π΅ΡΠΎΠ»Ρ: -10000)
--dup-badack-increment=<int> # ΠΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ ACK (Π΄Π΅ΡΠΎΠ»Ρ: -66000)
--dup-ip-id=same|zero|seq|rnd π # Π Π΅ΠΆΠΈΠΌ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ IP_ID
--dup-start=[n|d|s]N # ΠΠ°ΡΠ°ΡΡ Ρ ΠΏΠ°ΠΊΠ΅ΡΠ° N
--dup-cutoff=[n|d|s]N # ΠΡΠ΅ΠΊΡΠ°ΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠ°ΠΊΠ΅ΡΠ° Nπ‘οΈ DPI Desync (ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ)
Π Π΅ΠΆΠΈΠΌΡ Π΄Π΅ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ
--dpi-desync=[mode0,]mode[,mode2]Π Π΅ΠΆΠΈΠΌΡ TCP: synack, syndata, fake, fakeknown, rst, rstack, multisplit, multidisorder, fakedsplit, hostfakesplit, fakeddisorder, ipfrag1, ipfrag2, hopbyhop, destopt
Π Π΅ΠΆΠΈΠΌΡ UDP: udplen, tamper
TTL ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠΊΠ°
--dpi-desync-ttl=<int> # TTL Π΄Π»Ρ Π΄Π΅ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΡΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
--dpi-desync-ttl6=<int> # Hop limit IPv6
--dpi-desync-autottl=[<delta>[:<min>[-<max>]]|-] # AutoTTL (Π΄Π΅ΡΠΎΠ»Ρ: 1:3-20)
--dpi-desync-autottl6=[...] # AutoTTL Π΄Π»Ρ IPv6
--dpi-desync-tcp-flags-set=<flags> π # Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ TCP ΡΠ»Π°Π³ΠΈ
--dpi-desync-tcp-flags-unset=<flags> π # Π‘Π½ΡΡΡ TCP ΡΠ»Π°Π³ΠΈΠΠ΅ΡΠΎΠ΄Ρ βΠΎΠ±ΠΌΠ°Π½Π°β ΡΠ΅ΠΉΠΊΠΎΠ²
--dpi-desync-fooling=<method> # none, md5sig, badseq, badsum, datanoack, ts, hopbyhop, hopbyhop2
--dpi-desync-repeats=<N> # ΠΠΎΠ²ΡΠΎΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅ΠΉΠΊ N ΡΠ°Π·
--dpi-desync-skip-nosni=0|1 # ΠΡΠΎΠΏΡΡΠΊΠ°ΡΡ ESNI (Π΄Π΅ΡΠΎΠ»Ρ: 1)TCP ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
--dpi-desync-split-pos=N|-N|marker+N|marker-N # ΠΠΎΠ·ΠΈΡΠΈΠΈ ΡΠ°Π·ΡΠ΅Π·Π°
--dpi-desync-split-seqovl=N|-N|marker+N|marker-N # ΠΠ΅Π»ΠΈΡΠΈΠ½Π° sequence overlap
--dpi-desync-split-seqovl-pattern=[+ofs]@file|0xHEX # Π§Π΅ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ overlapΠΠ°ΡΠΊΠ΅ΡΡ: method, host, endhost, sld, endsld, midsld, sniext
ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π»Ρ split ΡΠ΅ΠΆΠΈΠΌΠΎΠ²
--dpi-desync-fakedsplit-pattern=[+ofs]@file|0xHEX # ΠΠ°ΡΡΠ΅ΡΠ½ ΡΠ΅ΠΉΠΊΠΎΠ²
--dpi-desync-fakedsplit-mod=mod[,mod] # altorder=0-3 + 0|8|16
--dpi-desync-hostfakesplit-midhost=markerΒ±N # ΠΠΎΠΏ. ΡΠ°Π·ΡΠ΅Π· Π² Ρ
ΠΎΡΡΠ΅
--dpi-desync-hostfakesplit-mod=mod[,mod] # host=<hostname>, altorder=0|1ΠΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΡ Π΄Π»Ρ fooling
--dpi-desync-ts-increment=<int> # TSval (Π΄Π΅ΡΠΎΠ»Ρ: -600000)
--dpi-desync-badseq-increment=<int> # SEQ (Π΄Π΅ΡΠΎΠ»Ρ: -10000)
--dpi-desync-badack-increment=<int> # ACK (Π΄Π΅ΡΠΎΠ»Ρ: -66000)ΠΡΠΎΡΠΎΠΊΠΎΠ»Ρ ΠΈ ΡΠ΅ΠΉΠΊΠΈ
--dpi-desync-any-protocol=0|1 # 1=ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°ΠΌΠΈ
--dpi-desync-fake-tcp-mod=mod[,mod] # seqΠ€Π΅ΠΉΠΊΠΎΠ²ΡΠ΅ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄Ρ
--dpi-desync-fake-http=[+ofs]@file|0xHEX
--dpi-desync-fake-tls=[+ofs]@file|0xHEX|![+ofs]
--dpi-desync-fake-tls-mod=mod[,mod] # none, rnd, rndsni, sni=<sni>, dupsid, padencap
--dpi-desync-fake-unknown=[+ofs]@file|0xHEX
--dpi-desync-fake-syndata=[+ofs]@file|0xHEX
--dpi-desync-fake-quic=[+ofs]@file|0xHEX
--dpi-desync-fake-wireguard=[+ofs]@file|0xHEX
--dpi-desync-fake-dht=[+ofs]@file|0xHEX
--dpi-desync-fake-discord=[+ofs]@file|0xHEX
--dpi-desync-fake-stun=[+ofs]@file|0xHEX
--dpi-desync-fake-unknown-udp=[+ofs]@file|0xHEXUDP ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎΠ΅
--dpi-desync-udplen-increment=<int> # Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ UDP
--dpi-desync-udplen-pattern=[+ofs]@file|0xHEX # Π§Π΅ΠΌ Π΄ΠΎΠ±ΠΈΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ
--dpi-desync-start=[n|d|s]N # ΠΠ°ΡΠ°ΡΡ Ρ ΠΏΠ°ΠΊΠ΅ΡΠ° N
--dpi-desync-cutoff=[n|d|s]N # ΠΡΠ΅ΠΊΡΠ°ΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠ°ΠΊΠ΅ΡΠ° N
--dpi-desync-fwmark=<int|0xHEX> # ΠΠ΅ΡΠΊΠ° fwmark (Π΄Π΅ΡΠΎΠ»Ρ: 0x40000000)π ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ HTTP/TLS Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ²
--hostcase # "Host:" β "host:"
--hostnospace # Π£Π±ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π΅Π» ΠΏΠΎΡΠ»Π΅ "Host:"
--methodeol # ΠΠΎΠ±Π°Π²ΠΈΡΡ \n ΠΏΠ΅ΡΠ΅Π΄ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ
--hostspell=HoST # Π’ΠΎΡΠ½ΠΎΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ "Host"
--domcase # ΠΠΎΠΌΠ΅Π½: example.com β ExAmPlE.cOmπ Window Size
--wsize=<size>[:<scale>] # Π SYN,ACK (ΡΡΡΠ°ΡΠ΅Π»ΠΎ!)
--wssize=<size>[:<scale>] # Π ΠΈΡΡ
ΠΎΠ΄ΡΡΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
--wssize-cutoff=[n|d|s]N # ΠΡΠ΅ΠΊΡΠ°ΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΏΠ°ΠΊΠ΅ΡΠ° N
--wssize-forced-cutoff=0|1 π # 1=Π°Π²ΡΠΎ-ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ HTTP/TLS (Π΄Π΅ΡΠΎΠ»Ρ)π Π Π΅ΠΆΠΈΠΌ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ IP_ID
--ip-id=seq|seqgroup|rnd|zero # ΠΠ»Ρ Π²ΡΠ΅Ρ
Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
--dup-ip-id=same|zero|seq|rnd π # ΠΠ»Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² (Π΄Π΅ΡΠΎΠ»Ρ: same)π Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΈ Π»ΠΈΡΡΡ
Π₯ΠΎΡΡ-Π»ΠΈΡΡΡ
--hostlist=<file> # ΠΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²
--hostlist-domains=<domain,domain> # Π€ΠΈΠΊΡ. ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²
--hostlist-exclude=<file> # ΠΡΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ
--hostlist-exclude-domains=<list> # Π€ΠΈΠΊΡ. ΡΠΏΠΈΡΠΎΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ hostlist
--hostlist-auto=<file> # ΠΠ²ΡΠΎΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ
--hostlist-auto-fail-threshold=<int> # ΠΠΎΡΠΎΠ³ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΡ (Π΄Π΅ΡΠΎΠ»Ρ: 3)
--hostlist-auto-fail-time=<int> # ΠΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ (Π΄Π΅ΡΠΎΠ»Ρ: 60 ΡΠ΅ΠΊ)
--hostlist-auto-retrans-threshold=<int> # ΠΠΎΡΠΎΠ³ ΡΠ΅ΡΡΠ°Π½ΡΠΌΠΈΡΡΠΈΠΉ (Π΄Π΅ΡΠΎΠ»Ρ: 3)
--hostlist-auto-debug=<logfile> # ΠΠΎΠ³ ΡΠ΅ΡΠ΅Π½ΠΈΠΉIP-Π»ΠΈΡΡΡ
--ipset=<file> # ΠΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ IP/CIDR ΡΠΏΠΈΡΠΎΠΊ
--ipset-ip=<ip,ip,cidr> # Π€ΠΈΠΊΡ. ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ΄ΡΠ΅ΡΠ΅ΠΉ
--ipset-exclude=<file> # ΠΡΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ
--ipset-exclude-ip=<list> # Π€ΠΈΠΊΡ. ΡΠΏΠΈΡΠΎΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉπ ΠΡΠΎΡΠΈΠ»ΠΈ ΠΈ ΡΠΈΠ»ΡΡΡΡ
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠΈΠ»ΡΠΌΠΈ
--new # ΠΠ°ΡΠ°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠΈΠ»Ρ
--skip # ΠΡΠΎΠΏΡΡΡΠΈΡΡ ΠΏΡΠΎΡΠΈΠ»ΡΠ€ΠΈΠ»ΡΡΡΡ
--filter-l3=ipv4|ipv6 # ΠΠΎ Π²Π΅ΡΡΠΈΠΈ IP
--filter-tcp=[~]port[-port]|* # ΠΠΎ TCP ΠΏΠΎΡΡΠ°ΠΌ
--filter-udp=[~]port[-port]|* # ΠΠΎ UDP ΠΏΠΎΡΡΠ°ΠΌ
--filter-l7=<proto> # ΠΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ L7: http, tls, quic, wireguard, dht, discord, stun, unknown
--filter-ssid=ssid1,ssid2 # ΠΠΎ WiFi SSID (ΡΠΎΠ»ΡΠΊΠΎ Linux)π ΠΠΎΠ²ΠΎΠ΅ Π² Zapret v72.2
--wssize-forced-cutoff=0|1- ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π°Π²ΡΠΎ-ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ wssize- ΠΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΡ TCP ΡΠ»Π°Π³Π°ΠΌΠΈ:
--orig-tcp-flags-set/unset--dup-tcp-flags-set/unset--dpi-desync-tcp-flags-set/unset- Π€ΠΎΡΠΌΠ°Ρ: ΡΠΈΡΠ»ΠΎ, 0xHEX ΠΈΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ:
FIN,SYN,RST,PSH,ACK,URG,ECE,CWR,AE,R1,R2,R3
--dup-ip-id=same|zero|seq|rnd- ΡΠ΅ΠΆΠΈΠΌ IP_ID Π΄Π»Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²
π‘ ΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ
Π€ΠΎΡΠΌΠ°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²:
[n|d|s]N- n=Π½ΠΎΠΌΠ΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠ°, d=ΠΏΠ°ΠΊΠ΅Ρ Π΄Π°Π½Π½ΡΡ , s=sequence numbermarkerΒ±N- ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΎΡ ΠΌΠ°ΡΠΊΠ΅ΡΠ°[+ofs]@file|0xHEX- Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΡΠΎ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ hex-ΡΡΡΠΎΠΊΠ°#Π² Π½Π°ΡΠ°Π»Π΅ Π΄ΠΎΠΌΠ΅Π½Π°/IP - ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ (ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ)
TCP ΡΠ»Π°Π³ΠΈ (12 Π±ΠΈΡ):
- Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅: FIN, SYN, RST, PSH, ACK, URG, ECE, CWR
- Reserved: AE (Accurate ECN), R1, R2, R3
π Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² nfqws ΠΏΠΎ ΡΠΈΠΏΠ°ΠΌ ΡΡΠ°ΡΠΈΠΊΠ°
π HTTPS (TLS over TCP, ΠΏΠΎΡΡ 443)
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅ΠΆΠΈΠΌΡ Π΄Π΅ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ
--dpi-desync=fake,split # Π€Π΅ΠΉΠΊΠΎΠ²ΡΠΉ TLS ClientHello + ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
--dpi-desync=fakedsplit # ΠΠ°ΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΉΠΊΠΎΠ² ΠΈ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°
--dpi-desync=multisplit # ΠΠ°ΡΠ΅Π·ΠΊΠ° Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΎΠ²
--dpi-desync=multidisorder # ΠΠ°ΡΠ΅Π·ΠΊΠ° + ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ
--dpi-desync=hostfakesplit # Π€Π΅ΠΉΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΈΠΌΠ΅Π½ΠΈ Ρ
ΠΎΡΡΠ° (SNI)ΠΠΎΠ·ΠΈΡΠΈΠΈ ΡΠ°Π·ΡΠ΅Π·Π° (ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ TLS)
--dpi-desync-split-pos=sni # Π Π°Π·ΡΠ΅Π· Π² Π½Π°ΡΠ°Π»Π΅ SNI extension
--dpi-desync-split-pos=sniext # Π Π°Π·ΡΠ΅Π· Π² Π½Π°ΡΠ°Π»Π΅ Π΄Π°Π½Π½ΡΡ
SNI
--dpi-desync-split-pos=host # Π Π°Π·ΡΠ΅Π· Π² Π½Π°ΡΠ°Π»Π΅ hostname Π² SNI
--dpi-desync-split-pos=midsld # Π Π°Π·ΡΠ΅Π· Π² ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅ Π΄ΠΎΠΌΠ΅Π½Π° 2-Π³ΠΎ ΡΡΠΎΠ²Π½Ρ
--dpi-desync-split-pos=sld # Π Π°Π·ΡΠ΅Π· Π² Π½Π°ΡΠ°Π»Π΅ SLDΠ€Π΅ΠΉΠΊΠΎΠ²ΡΠ΅ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄Ρ Π΄Π»Ρ TLS
--dpi-desync-fake-tls=@tls_clienthello.bin # ΠΠ°ΡΡΠΎΠΌΠ½ΡΠΉ TLS ClientHello
--dpi-desync-fake-tls=! # Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠ΅ΠΉΠΊ
--dpi-desync-fake-tls=0xHEX # Hex-Π΄Π°Π½Π½ΡΠ΅
# ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ TLS ΡΠ΅ΠΉΠΊΠΎΠ²
--dpi-desync-fake-tls-mod=rnd # Π Π°Π½Π΄ΠΎΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ random ΠΈ session_id
--dpi-desync-fake-tls-mod=rndsni # Π‘Π»ΡΡΠ°ΠΉΠ½ΡΠΉ SNI
--dpi-desync-fake-tls-mod=dupsid # ΠΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ session_id ΠΈΠ· ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°
--dpi-desync-fake-tls-mod=sni=google.com # ΠΠ°ΠΌΠ΅Π½ΠΈΡΡ SNI
--dpi-desync-fake-tls-mod=padencap # ΠΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π² padding extension
--dpi-desync-fake-tls-mod=rnd,dupsid,rndsni # ΠΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ (ΠΏΠΎ ΡΠΌΠΎΠ»Ρ.)Π€ΠΈΠ»ΡΡΡΡ Π΄Π»Ρ HTTPS
--filter-tcp=443 # Π’ΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΡ 443
--filter-l7=tls # Π’ΠΎΠ»ΡΠΊΠΎ TLS ΠΏΡΠΎΡΠΎΠΊΠΎΠ»
--dpi-desync-skip-nosni=1 # ΠΡΠΎΠΏΡΡΠΊΠ°ΡΡ ESNI (ΠΏΠΎ ΡΠΌΠΎΠ»Ρ.)Π’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ HTTPS
# ΠΠ°ΡΠΈΠ°Π½Ρ 1: ΠΡΠΎΡΡΠΎΠΉ split Π½Π° SNI
--filter-tcp=443 --dpi-desync=split --dpi-desync-split-pos=sniext
# ΠΠ°ΡΠΈΠ°Π½Ρ 2: Π€Π΅ΠΉΠΊ + split Ρ TTL
--filter-tcp=443 --dpi-desync=fake,split \
--dpi-desync-fooling=badsum --dpi-desync-split-pos=midsld
# ΠΠ°ΡΠΈΠ°Π½Ρ 3: AutoTTL ΡΠ΅ΠΉΠΊ
--filter-tcp=443 --dpi-desync=fake,multisplit \
--dpi-desync-autottl=2 --dpi-desync-split-pos=sniext,midsld
# ΠΠ°ΡΠΈΠ°Π½Ρ 4: Disorder Ρ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠΌ SNI
--filter-tcp=443 --dpi-desync=fake,multidisorder \
--dpi-desync-fake-tls-mod=sni=ya.ru --dpi-desync-split-pos=midsldπ HTTP (plain HTTP over TCP, ΠΏΠΎΡΡ 80)
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅ΠΆΠΈΠΌΡ
--dpi-desync=split # ΠΡΠΎΡΡΠ°Ρ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
--dpi-desync=multisplit # ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ Π½Π°ΡΠ΅Π·ΠΊΠ°
--dpi-desync=fake,split # Π€Π΅ΠΉΠΊ + ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
--dpi-desync=hostfakesplit # Π€Π΅ΠΉΠΊ Π½Π° Host: Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ΠΠΎΠ·ΠΈΡΠΈΠΈ ΡΠ°Π·ΡΠ΅Π·Π° (ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ HTTP)
--dpi-desync-split-pos=method # Π Π½Π°ΡΠ°Π»Π΅ ΠΌΠ΅ΡΠΎΠ΄Π° (GET, POST)
--dpi-desync-split-pos=method+2 # ΠΠΎΡΠ»Π΅ "GET" -> "GE|T /"
--dpi-desync-split-pos=host # Π Π½Π°ΡΠ°Π»Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Host:
--dpi-desync-split-pos=midsld # Π ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅ Π΄ΠΎΠΌΠ΅Π½Π°
--dpi-desync-split-pos=3 # ΠΠΎΡΠ»Π΅ 3-Π³ΠΎ Π±Π°ΠΉΡΠ°: "GET| /"ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ HTTP Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ²
--hostcase # "Host:" β "host:"
--hostspell=HoSt # Π’ΠΎΡΠ½ΠΎΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅
--hostnospace # Π£Π±ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π΅Π» ΠΏΠΎΡΠ»Π΅ Host:
--domcase # example.com β ExAmPlE.cOm
--methodeol # \n ΠΏΠ΅ΡΠ΅Π΄ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌΠ€Π΅ΠΉΠΊΠΎΠ²ΡΠ΅ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄Ρ Π΄Π»Ρ HTTP
--dpi-desync-fake-http=@fake_request.txt # ΠΠ°ΡΡΠΎΠΌΠ½ΡΠΉ HTTP Π·Π°ΠΏΡΠΎΡ
--dpi-desync-fake-http=0x474554202F20485454... # Hex-Π΄Π°Π½Π½ΡΠ΅
# ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: GET / HTTP/1.1\r\nHost: www.iana.org\r\n\r\nΠ€ΠΈΠ»ΡΡΡΡ Π΄Π»Ρ HTTP
--filter-tcp=80 # Π’ΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΡ 80
--filter-l7=http # Π’ΠΎΠ»ΡΠΊΠΎ HTTP ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ HTTP
# ΠΠ°ΡΠΈΠ°Π½Ρ 1: Split ΠΏΠΎΡΠ»Π΅ ΠΌΠ΅ΡΠΎΠ΄Π°
--filter-tcp=80 --dpi-desync=split --dpi-desync-split-pos=method+2
# ΠΠ°ΡΠΈΠ°Π½Ρ 2: Π‘ΠΌΠ΅Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ° + split
--filter-tcp=80 --hostcase --dpi-desync=split --dpi-desync-split-pos=host
# ΠΠ°ΡΠΈΠ°Π½Ρ 3: Π€Π΅ΠΉΠΊ Ρ TTL
--filter-tcp=80 --dpi-desync=fake,split \
--dpi-desync-ttl=4 --dpi-desync-split-pos=midsld
# ΠΠ°ΡΠΈΠ°Π½Ρ 4: ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ²
--filter-tcp=80 --hostcase --domcase --methodeolπ TCP (ΠΏΡΠΎΡΠΈΠΉ TCP ΡΡΠ°ΡΠΈΠΊ)
ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ
--dpi-desync-any-protocol=1 # Π Π°Π±ΠΎΡΠ°ΡΡ ΡΠΎ ΠΠ‘ΠΠΠ TCP ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈβ οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ΅Π· ΡΡΠΎΠ³ΠΎ ΡΠ»Π°Π³Π° desync ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ HTTP/TLS!
ΠΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΡΠ΅ΠΆΠΈΠΌΡ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ TCP
--dpi-desync=syndata # ΠΠ°Π½Π½ΡΠ΅ Π² SYN ΠΏΠ°ΠΊΠ΅ΡΠ΅
--dpi-desync=synack # ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ handshake
--dpi-desync=multisplit # Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
--dpi-desync=fake,split # Π€Π΅ΠΉΠΊ + splitΠΠΎΠ·ΠΈΡΠΈΠΈ ΡΠ°Π·ΡΠ΅Π·Π° (ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠ΅)
--dpi-desync-split-pos=1 # ΠΠΎΡΠ»Π΅ 1-Π³ΠΎ Π±Π°ΠΉΡΠ°
--dpi-desync-split-pos=2 # ΠΠΎΡΠ»Π΅ 2-Π³ΠΎ Π±Π°ΠΉΡΠ°
--dpi-desync-split-pos=-1 # ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π°ΠΉΡ
--dpi-desync-split-pos=10,20,30 # ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΈΠ€Π΅ΠΉΠΊΠΎΠ²ΡΠ΅ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄Ρ Π΄Π»Ρ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ²
--dpi-desync-fake-unknown=@payload.bin # ΠΠ°ΡΡΠΎΠΌΠ½ΡΠΉ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄
--dpi-desync-fake-unknown=0x0000... # Hex (256 Π±Π°ΠΉΡ ΠΏΠΎ ΡΠΌΠΎΠ»Ρ.)Sequence overlap (Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ TCP)
--dpi-desync-split-seqovl=10 # ΠΠ΅ΡΠ΅ΠΊΡΡΡΠΈΠ΅ Π½Π° 10 Π±Π°ΠΉΡ
--dpi-desync-split-seqovl-pattern=0x41414141 # Π§Π΅ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ overlapΠ€ΠΈΠ»ΡΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠ΅Π³ΠΎ TCP
--filter-tcp=* # ΠΡΠ΅ TCP ΠΏΠΎΡΡΡ
--filter-tcp=~80,443 # ΠΡΠ΅ ΠΠ ΠΠΠ 80 ΠΈ 443
--filter-tcp=22,3389 # ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΏΠΎΡΡΡ (SSH, RDP)
--filter-l7=unknown # ΠΠ΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΡΠ’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ TCP
# ΠΠ°ΡΠΈΠ°Π½Ρ 1: SSH, VPN ΡΠ΅ΡΠ΅Π· TCP
--filter-tcp=22 --dpi-desync=split --dpi-desync-split-pos=2 \
--dpi-desync-any-protocol=1
# ΠΠ°ΡΠΈΠ°Π½Ρ 2: ΠΡΠ΅ TCP ΠΊΡΠΎΠΌΠ΅ HTTP/HTTPS
--filter-tcp=~80,443 --dpi-desync=fake,split \
--dpi-desync-any-protocol=1 --dpi-desync-split-pos=1
# ΠΠ°ΡΠΈΠ°Π½Ρ 3: SYN data Π΄Π»Ρ Π±ΡΡΡΡΡΡ
ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ
--filter-tcp=* --dpi-desync=syndata \
--dpi-desync-fake-syndata=@payload.binπ‘ UDP
Π Π΅ΠΆΠΈΠΌΡ Π΄Π΅ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π»Ρ UDP
--dpi-desync=udplen # Π£Π²Π΅Π»ΠΈΡΠΈΡΡ Π΄Π»ΠΈΠ½Ρ UDP ΠΏΠ°ΠΊΠ΅ΡΠ°
--dpi-desync=tamper # ΠΡΠΏΠΎΡΡΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ
--dpi-desync=fake # Π€Π΅ΠΉΠΊΠΎΠ²ΡΠΉ UDP ΠΏΠ°ΠΊΠ΅Ρ
--dpi-desync=ipfrag2 # IP ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡUDP Π΄Π»ΠΈΠ½Π° (udplen)
--dpi-desync-udplen-increment=2 # Π£Π²Π΅Π»ΠΈΡΠΈΡΡ Π΄Π»ΠΈΠ½Ρ Π½Π° 2 Π±Π°ΠΉΡΠ°
--dpi-desync-udplen-pattern=0x0000 # Π§Π΅ΠΌ Π΄ΠΎΠ±ΠΈΠ²Π°ΡΡ (ΠΏΠΎ ΡΠΌΠΎΠ»Ρ. Π½ΡΠ»ΠΈ)Π€Π΅ΠΉΠΊΠΎΠ²ΡΠ΅ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄Ρ Π΄Π»Ρ UDP ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ²
# QUIC (HTTP/3)
--dpi-desync-fake-quic=@quic_initial.bin
--filter-l7=quic
--filter-udp=443
# WireGuard VPN
--dpi-desync-fake-wireguard=@wg_handshake.bin
--filter-l7=wireguard
--filter-udp=51820
# DHT (torrents)
--dpi-desync-fake-dht=@dht_payload.bin
--filter-l7=dht
# Discord Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΉ ΡΠ°Ρ
--dpi-desync-fake-discord=@discord_payload.bin
--filter-l7=discord
# STUN (WebRTC, VoIP)
--dpi-desync-fake-stun=@stun_payload.bin
--filter-l7=stun
# ΠΠ΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ UDP
--dpi-desync-fake-unknown-udp=@payload.bin
--filter-l7=unknownΠ€ΠΈΠ»ΡΡΡΡ Π΄Π»Ρ UDP
--filter-udp=443 # QUIC (HTTP/3)
--filter-udp=53 # DNS
--filter-udp=51820 # WireGuard
--filter-udp=* # ΠΡΠ΅ UDP
--filter-l7=quic,wireguard,stun # ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ²Π’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ UDP
# ΠΠ°ΡΠΈΠ°Π½Ρ 1: QUIC (YouTube, Google)
--filter-udp=443 --filter-l7=quic \
--dpi-desync=fake --dpi-desync-repeats=6 \
--dpi-desync-fake-quic=@quic_initial.bin
# ΠΠ°ΡΠΈΠ°Π½Ρ 2: WireGuard VPN
--filter-udp=51820 --filter-l7=wireguard \
--dpi-desync=fake,udplen \
--dpi-desync-udplen-increment=2
# ΠΠ°ΡΠΈΠ°Π½Ρ 3: ΠΡΠ΅ UDP Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»ΠΈΠ½Ρ
--filter-udp=* --dpi-desync=udplen \
--dpi-desync-udplen-increment=1
# ΠΠ°ΡΠΈΠ°Π½Ρ 4: DNS ΡΠ΅ΡΠ΅Π· UDP
--filter-udp=53 --dpi-desync=fake \
--dpi-desync-ttl=1π Π‘ΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°
| ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ | HTTPS | HTTP | TCP | UDP |
|---|---|---|---|---|
| ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΠΎΡΡ | 443 | 80 | * | * |
| Π€ΠΈΠ»ΡΡΡ L7 | tls | http | unknown | quic, wireguard, etc. |
| ΠΡΡΡΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ | fake,split | split | syndata | fake,udplen |
| ΠΠ°ΡΠΊΠ΅ΡΡ split | sniext, midsld | method+2, host | Π§ΠΈΡΠ»Π° | - |
| Π€Π΅ΠΉΠΊΠΈ | --fake-tls | --fake-http | --fake-unknown | --fake-quic, etc. |
| ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ | --fake-tls-mod | --hostcase | - | --udplen-increment |
| any-protocol | ΠΠ΅ Π½ΡΠΆΠ΅Π½ | ΠΠ΅ Π½ΡΠΆΠ΅Π½ | ΠΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½! | - |
π― ΠΠΎΡΠΎΠ²ΡΠ΅ ΠΏΡΠΎΡΠΈΠ»ΠΈ (ΠΌΠ½ΠΎΠ³ΠΎΠΏΡΠΎΡΠΈΠ»ΡΠ½Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ)
ΠΠΎΠ»Π½Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠΈΠΏΠΎΠ² ΡΡΠ°ΡΠΈΠΊΠ°
# ΠΡΠΎΡΠΈΠ»Ρ 1: HTTPS
--filter-tcp=443 --filter-l7=tls \
--dpi-desync=fake,multisplit \
--dpi-desync-split-pos=sniext,midsld \
--dpi-desync-fooling=badsum \
--dpi-desync-fake-tls-mod=rnd,dupsid
# ΠΡΠΎΡΠΈΠ»Ρ 2: HTTP
--new \
--filter-tcp=80 --filter-l7=http \
--hostcase --domcase \
--dpi-desync=split \
--dpi-desync-split-pos=method+2
# ΠΡΠΎΡΠΈΠ»Ρ 3: QUIC (YouTube)
--new \
--filter-udp=443 --filter-l7=quic \
--dpi-desync=fake \
--dpi-desync-repeats=6
# ΠΡΠΎΡΠΈΠ»Ρ 4: ΠΡΠΎΡΠΈΠΉ TCP
--new \
--filter-tcp=~80,443 \
--dpi-desync=split \
--dpi-desync-split-pos=2 \
--dpi-desync-any-protocol=1
# ΠΡΠΎΡΠΈΠ»Ρ 5: WireGuard
--new \
--filter-udp=51820 --filter-l7=wireguard \
--dpi-desync=fake,udplen \
--dpi-desync-udplen-increment=2π‘ ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ
HTTPS vs HTTP
- HTTPS: Π Π°Π±ΠΎΡΠ°Π΅Ρ Ρ Π±ΠΈΠ½Π°ΡΠ½ΡΠΌ TLS, Π½ΡΠΆΠ½Ρ
sni*ΠΌΠ°ΡΠΊΠ΅ΡΡ,--fake-tls-mod - HTTP: Π Π°Π±ΠΎΡΠ°Π΅Ρ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ ΡΠ΅Π³ΠΈΡΡΡ (
--hostcase), ΠΌΠ°ΡΠΊΠ΅ΡΡmethod,host
TCP vs UDP
- TCP: Sequence numbers, ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, syn/ack ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ
- UDP: ΠΠ΅Π· ΡΠΎΡΡΠΎΡΠ½ΠΈΡ,
udplen, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ ΡΠ΅ΠΉΠΊΠΈ Π΄Π»Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ²
ΠΠ·Π²Π΅ΡΡΠ½ΡΠ΅ vs Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ
- HTTP/TLS: ΠΠ²ΡΠΎΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΠΌΠ°ΡΠΊΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ
- ΠΡΠΎΡΠΈΠ΅: ΠΡΠΆΠ΅Π½
--dpi-desync-any-protocol=1, ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ split