Iptables 中的 match --mark 字段是什么

Iptables 中的 match --mark 字段是什么

在下面的例子中

iptables -A FORWARD -i eth0 -p tcp --syn -m mark  --mark 0x3 -j REJECT --reject-with tcp-reset

场的意义是什么-m mark --mark

当我尝试添加此规则时出现以下错误。

iptables: Protocol wrong type for socket ?

谢谢。

答案1

我已经将内核从 2.6.24 版升级到 2.6.32 版,但 iptables 并未升级,仍停留在 1.3.6 版。如果我想使用 MARK,会出现错误消息“iptables:套接字的协议类型错误”。将 iptables 升级到 1.4.8 版后,一切正常。

答案2

标记匹配被 netfilter 用于匹配在 mangle 表中标记的数据包。由于不知道具体情况,我猜想要么是你的内核已经过时/你的内核编译错误,要么是你的 netfilter 包可能需要查看。

-iptables 手册页 -

标记 该模块匹配与数据包相关的 netfilter 标记字段(可以使用下面的 MARK 目标进行设置)。

   [!] --mark value[/mask]
          Matches packets with the given unsigned mark value (if a mask is specified, this is logically ANDed with the mask before the comparison).

相关内容