This commit is contained in:
chn 2019-10-24 22:38:05 +08:00
parent 6872156480
commit c95071ebf5

View File

@ -2,6 +2,8 @@
#### 抓取数据包 #### 抓取数据包
假定模块加载时,取定参数:`CAPTURE_MARK=0x10 RESERVE_WIN_MARK=0x20`。这也是默认的参数。
模块根据握手时的第一个包SYN以后简称首包来确定是否追踪这个 TCP 流以及修改的策略(保留包含 `"Windows NT"` 的 UA还是替换掉所有的 UA。当首包 mark 的 `0x10` 位被置为 1 时,追踪这条流。当首包 mark 的 `0x20` 位被置为 1 时,将保留包含 `"Windows NT"` 的 UA否则将替换所有的 UA。 模块根据握手时的第一个包SYN以后简称首包来确定是否追踪这个 TCP 流以及修改的策略(保留包含 `"Windows NT"` 的 UA还是替换掉所有的 UA。当首包 mark 的 `0x10` 位被置为 1 时,追踪这条流。当首包 mark 的 `0x20` 位被置为 1 时,将保留包含 `"Windows NT"` 的 UA否则将替换所有的 UA。
在确定追踪这条流的前提下,模块根据数据包的 mark 来确定是否抓取这个数据包。仅当 `0x10` 位被置为 1 时,模块会抓取这个数据包,否则不会抓取之。除了首包以外,`0x20` 位不起作用。如果一个数据包 mark 的 `0x10` 位被置为 1但是所属的流没有被跟踪或者这个包是服务端发来的并且不是三次握手时的 SYN ACK 包),则会发出警告并丢弃(返回 `NF_DROP`)这个数据包。应该避免这样的情况出现。 在确定追踪这条流的前提下,模块根据数据包的 mark 来确定是否抓取这个数据包。仅当 `0x10` 位被置为 1 时,模块会抓取这个数据包,否则不会抓取之。除了首包以外,`0x20` 位不起作用。如果一个数据包 mark 的 `0x10` 位被置为 1但是所属的流没有被跟踪或者这个包是服务端发来的并且不是三次握手时的 SYN ACK 包),则会发出警告并丢弃(返回 `NF_DROP`)这个数据包。应该避免这样的情况出现。