mirror of
https://github.com/bol-van/zapret2.git
synced 2026-03-14 06:13:09 +00:00
update docs
This commit is contained in:
@@ -780,8 +780,8 @@ LUA код выполняется с ограниченными правами,
|
||||
* 'n' - номер пакета
|
||||
* 'd' - номер пакета с данными
|
||||
* 'b' - байт-позиция переданных данных
|
||||
* 's' - tcp: relative sequence начала текущего пакета
|
||||
* 'p' - tcp: relative sequence верхней границы текущего пакета (s + длина пейлоада)
|
||||
* 's' - tcp: relative sequence начала текущего пакета. работает в пределах 2 GB
|
||||
* 'p' - tcp: relative sequence верхней границы текущего пакета (s + длина пейлоада). работает в пределах 2 GB
|
||||
|
||||
nfqws2 следит за превышением верхней границы счетчиков для всех LUA инстансов.
|
||||
Если во всех инстансах превышена верхняя граница по направлению или инстансы вошли по направлению в состояние cutoff добровольно,
|
||||
@@ -1244,3 +1244,43 @@ mss дублируется в поле `desync.tcp_mss` независимо о
|
||||
Но последний простой вариант не будет работать корректно, а первый - будет, если seq1 ушел от seq2 не более, чем на 2 GB.
|
||||
Большее и не отследить через sequence. Нужно всегда учитывать, что при передаче больших обьемов данных они не могут служить счетчиком.
|
||||
`p*counter` являются 64-битными счетчиками, поэтому у них этой проблемы нет.
|
||||
|
||||
# С интерфейс nfqws2
|
||||
|
||||
Перед выполнением `--lua-init` C код выставляет базовые константы, блобы и C функции.
|
||||
|
||||
## Базовые константы
|
||||
|
||||
| Поле | Тип | Описание | Примечание |
|
||||
|:------|:-----|:---------|:-----------|
|
||||
| qnum | number | номер очереди NFQUEUE | только в Linux |
|
||||
| divert_port | number | номер порта divert | только в BSD |
|
||||
| desync_fwmark | number | fwmark для Linux, sockarg для BSD, 0 в Windows | |
|
||||
| NFQWS2_VER | string | версия nfqws2 | строка, выводимая по --version |
|
||||
| NFQWS2_COMPAT_VER | number | порядковый номер несовместимых изменений интерфейса с nfqws2 | увеличивается на 1 после каждого изменения |
|
||||
| b_debug | bool | включен --debug | вывод отладочных сообщений |
|
||||
| b_daemon | bool | включен --daemon | демонизация процесса, отвязка от tty |
|
||||
| b_server | bool | включен --server | серверный режим |
|
||||
| b_ipcache_hostname | bool | включен --ipcache-hostname | кэширование имен хостов, соответствующих IP адресам |
|
||||
| b_ctrack_disable | bool | включен --ctrack-disable | отключен conntrack |
|
||||
| VERDICT_PASS<br>VERDICT_MODIFY<br>VERDICT_DROP | number | код вердикта desync функции | |
|
||||
| DEFAULT_MSS | number | значение MSS по умолчанию | 1220 |
|
||||
| IP_BASE_LEN | number | базовый размер ipv4 хедера | 20 |
|
||||
| IP6_BASE_LEN | number | базовый размер ipv6 хедера | 40 |
|
||||
| TCP_BASE_LEN | number | базовый размер tcp хедера | 20 |
|
||||
| UDP_BASE_LEN | number | размер udp хедера | 8 |
|
||||
| TCP_KIND_END<br>TCP_KIND_NOOP<br>TCP_KIND_MSS<br>TCP_KIND_SCALE<br>TCP_KIND_SACK_PERM<br>TCP_KIND_SACK<br>TCP_KIND_TS<br>TCP_KIND_MD5<br>TCP_KIND_AO<br>TCP_KIND_FASTOPEN | number | коды типов tcp опций (kinds) | |
|
||||
| TH_FIN<br>TH_SYN<br>TH_RST<br>TH_PUSH<br>TH_ACK<br>TH_FIN<br>TH_URG<br>TH_ECE<br>TH_CWR | number | tcp флаги | можно складывать через + |
|
||||
| IP_MF | number | флаг IP "more fragments" | 0x8000, часть поля ip_off |
|
||||
| IP_DF | number | флаг IP "dont fragment" | 0x4000, часть поля ip_off |
|
||||
| IP_RF | number | флаг IP "reserved" | 0x2000, часть поля ip_off |
|
||||
| IP_OFFMASK | number | битовая маска поля ip_off, соответствующая fragment offset | 0x1FFF |
|
||||
| IP_FLAGMASK | number | битовая маска поля ip_off, соответствующая IP флагам | 0xE000 |
|
||||
| IPTOS_ECN_MASK | number | битовая маска поля ip_tos, соответствующая ECN | 0x03 |
|
||||
| IPTOS_ECN_NOT_ECT | number | Not ECN-Capable Transport | 0x00 |
|
||||
| IPTOS_ECN_ECT1 | number | ECN Capable Transport(1) | 0x01 |
|
||||
| IPTOS_ECN_ECT1 | number | ECN Capable Transport(0) | 0x02 |
|
||||
| IPTOS_ECN_CE1 | number | Congestion Experienced | 0x03 |
|
||||
| IPTOS_DSCP_MASK | number | битовая маска поля ip_tos, соответствующая DSCP | 0xFC |
|
||||
| IP6F_MORE_FRAG | number | бит "More fragment" поля ip6f_offlg из ipv6 fragment header | 0x0001 |
|
||||
| IPPROTO_IP<br>IPPROTO_IPV6<br>IPPROTO_ICMP<br>IPPROTO_TCP<br>IPPROTO_UDP<br>IPPROTO_ICMPV6<br>IPPROTO_HOPOPTS<br>IPPROTO_ROUTING<br>IPPROTO_FRAGMENT<br>IPPROTO_AH<br>IPPROTO_ESP<br>IPPROTO_DSTOPTS<br>IPPROTO_MH<br>IPPROTO_HIP<br>IPPROTO_SHIM6<br>IPPROTO_NONE | number | [номера IP протоколов](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) | используются в ipv4 и ipv6 |
|
||||
|
||||
Reference in New Issue
Block a user