Template
1
0
mirror of https://github.com/bol-van/zapret2.git synced 2026-03-19 15:55:48 +00:00

update docs

This commit is contained in:
bol-van
2025-12-17 18:10:31 +03:00
parent 02349dcb1d
commit df30a86305

View File

@@ -2290,6 +2290,15 @@ Unfragmentable part передается в каждом фрагменте с
ipfrag2 реализует эту возможность на двух фрагментах через указание параметра ipfrag_next.
Некоторые фаерволы пробиваются только большим количество фрагментов - для этого потребуется своя функция фрагментатор.
```
function wsize_rewrite(dis, arg)
```
Переписать в диссекте dis tcp.th_win и scale factor в tcp оцпии, если она присутствует. Увеличение scaling factor блокируется.
* arg: wsize - window size
* arg: scale - scale factor
## Отсылка
Следующие функции могут брать несколько блоков описанных выше опций, каждый из которых представлен полем параметра options.
@@ -2323,6 +2332,28 @@ mss берется из desync.tcp_mss.
* rawsend : repeats берется из desync.arg.repeats, ifout и fwmark берутся из desync.arg, если они там есть, либо из desync (то, что пришло в desync функцию)
* reconstruct : берется только desync.arg.badsum, остальные опции не используются
## Стандартные фильтры direction и payload
```
function direction_check(desync, def)
function direction_cutoff_opposite(ctx, desync, def)
```
Фильтр по направлению представляет собой строку "in", "out" или "any" и передается в desync.arg.dir. Если аргумент отсутствует, берется значение def.
* direction_check проверяет соответствие текущего направления фильтру.
* direction_cutoff_opposite выполняет instance cutoff на текущее направление, если оно не соответствует фильтру.
```
function payload_match_filter(l7payload, l7payload_filter, def)
function payload_check(desync, def)
```
Функции работают со строкой - списком пейлоадов через запятую. Список известных типов пейлоада можно получить из help текста nfqws2. Все пустые пакеты имеют пейлоад empty, неизвестные - unknown. Особые значения - all и known. all означает любой пейлоад, known - не unknown и не empty. Префикс `~` в начале означает логическую инверсию - несоответствие списку.
* payload_match_filter проверяет соответствие l7payload списку l7payload_filter или def, если l7payload_filter=nil. Если оба nil - список берется как "known".
* payload_check вызывает `payload_match_filter(desync.l7payload, desync.arg.payload, def)`
# Библиотека программ атаки на DPI zapret-antidpi.lua