在 iptables 中对同一流量设置 ACCEPT 和 DROP 规则的原因是什么?

在 iptables 中对同一流量设置 ACCEPT 和 DROP 规则的原因是什么?

我在我的服务器的 iptables 中发现了这一点:

-A INPUT -i eth2.600 -p udp -m udp --sport 53 -m limit --limit 10000/sec --limit-burst 200 -j ACCEPT
-A INPUT -i eth2.600 -p udp -m udp --sport 53 -j DROP

是否会接受来自端口 53 的数据包?或者只要第一条规则正确(未达到限制),数据包就会被接受,然后被丢弃?

答案1

仅在以下情况下才会采取行动全部规则条件匹配 – 其他数据包“落入”下一条规则。无论端口不匹配、协议不匹配或速率限制不匹配,情况都是如此。

因此,如果数据包满足限制,-m limit它将被接受,但如果不满足限制,则第一条规则将采取行动——数据包将直接进入第二条(DROP)规则。

具有明确的 DROP 取决于规则集 - 它不是 100% 必要的(例如,最后可能会有一个全部 DROP,或者一个全局丢弃策略),但如果规则集很长,它会提供一些清晰度,并防止相同的数据包被下面的另一个规则意外接受。

相关内容