iptables 参数是如何组合的?

iptables 参数是如何组合的?

我找了又找,没找到任何关于 iptables 参数如何组合的信息。

如果我想匹配发往或来自某个 IP 地址的流量,我可以这样做吗-s a.b.c.d -d a.b.c.d?也就是说,-s-d参数是否组合为或者(数据包匹配任意)或(数据包匹配全部)?

有点相关,-m iprange-s和如何-d交互?也就是说,我可以使用-m iprange --src-range 10.0.0.1-10.0.0.8来指定范围,然后添加-s !10.0.0.5以做出例外吗?

答案1

最好的学习方法是测试。是的,你可以结合-s-d,但是这是否有意义取决于你在哪个表中使用该规则。

一条规则的所有参数是AND。如果您愿意OR,可以创建一个将流量发送到的表。

有些组合会产生错误,最好再尝试一下。

假设您的策略是接受,并且您只想在规则匹配时进行匹配。添加规则,iptables -A OUTPUT -s x.x.x.x -d x.x.x.x -j ACCEPT因为目标将与默认规则相同,它不会产生任何影响,但它会显示iptables -vnL并具有计数器。

还有更高级的日志记录等,但这是一种快速测试规则的简便方法。(当然,tcpdump 是你的朋友)

关于这一点,iprange我还是想说,最好的办法是测试。在最坏的情况下,尝试添加规则会导致错误。(希望其他人能就你问题的这一部分给你更好的答案)

相关内容