diff --git a/docs/manual.md b/docs/manual.md index 0e7b72a..c40389e 100644 --- a/docs/manual.md +++ b/docs/manual.md @@ -2252,7 +2252,7 @@ function reconstruct_dissect(dissect[, reconstruct_opts]) Реконструкция диссектов с IP фрагментацией происходит особым образом. Есть 2 варианта. 1. Если присутствует поле "frag_off", tcp/udp/icmp хедеры игнорируются, payload содержит raw ip payload. В таком виде приходят диссекты фрагментированных IP пакетов. nfqws2 не выполняет дефрагментацию на IP уровне. Но это очень настойчиво делают Linux системы - чтобы пришел фрагмент в nfqws2 надо сильно постараться, вставив в prerouting или output "notrack". Диссекты в таком виде могут быть реконструированы как есть. Но готовить их в Lua крайне неудобно, поскольку придется проходить через черную магию работы с бинарным представлением. -2. Если поле "frag_off" отсутствует, реконструкция фрагментов выполняется диссекта целого пакета с участием как Lua, так и C кода. Lua код должен подготовить диссект полного пакета, подлежащего фрагментации, но заполнить некоторые поля такими, какими они должны быть во фрагменте. +2. Если поле "frag_off" отсутствует, реконструкция фрагментов выполняется из диссекта целого пакета с участием как Lua, так и C кода. Lua код должен подготовить диссект полного пакета, подлежащего фрагментации, но заполнить некоторые поля такими, какими они должны быть во фрагменте. - ipv4 : ip.ip_len должен быть рассчитан таким, каким он должен быть во фрагменте. По ip.ip_len С код определяет размер фрагментированной части.