iptables 选项顺序在规则中重要吗?

iptables 选项顺序在规则中重要吗?

options当这 3 条规则的顺序改变时,有什么区别吗?

iptables -A INPUT -p tcp --syn --dport 9000 -m set --match-set someSet src -j ACCEPT
iptables -A INPUT -m set --match-set someSet src --dport 9000 -p tcp --syn -j ACCEPT
iptables -A INPUT --dport 9000 -p tcp --syn -m set --match-set someSet src -j ACCEPT

遍历是否遵循规则中的选项顺序?

以此规则为例:

iptables -A INPUT -p tcp --syn --dport 9000 -m set --match-set someSet src -j ACCEPT

这是否意味着 iptables 首先查找SYN然后检查目标端口是否等于 9000 最后在集合中查找匹配项?

在此示例中:

iptables -A INPUT -m set --match-set someSet src --dport 9000 -p tcp --syn -j ACCEPT

这是否意味着 iptables 首先在集合中查找匹配项,然后检查目标端口是否等于 9000,最后查找SYN

尽管它们在被接受时都会给出相同的结果,但如果在 iptables 中进行排序,它们在被拒绝时可能会得到更优化options

答案1

选项的顺序大部分是不相关的。

您可以通过保存规则来验证这一点,您应该看到它们最终都以相同的方式结束。

逻辑顺序是:协议、端口、状态、模块

相关内容