IPTables 将 IP 添加到 IPSet 列表

IPTables 将 IP 添加到 IPSet 列表

如何从 iptables 规则中正确将 IP 地址添加到 ipset?或者根本就不可能?

这条规则对我来说不起作用:-A INPUT -m recent --name IP_LIST --set

IP_LIST 的类型是 hash:net IP_LIST 是使用命令创建的ipset create IP_LIST hash:net

但检查同一个列表中的 IP 以将其删除,则有效: -A INPUT -m set --match-set IP_LIST src -j DROP

答案1

所以,因为这-j SET就是你想要的:

在 iptables 中,-m set当您想要将数据包与 ipset(-m代表匹配)进行比较时使用,它可以在单个规则中多次使用。

-j SET另一方面,用于将条目插入到 ipset 中,它是一个非终止目标,意味着规则遍历将继续。

您应该阅读 iptables 手册页来获得预期语法的完整解释。

答案2

正如 @Olipro 和 @0x534B41 所说,我不能使用-m recent。因此,要从 iptables 规则向 ipset 添加条目,您应该使用-j SET --add-set IPSET_LIST src

答案3

Iptables 文档表明recent模块与 无关ipset。相反,它创建仅由其自身使用的动态列表。模块使用的列表recent通过 procfs 公开/proc/net/xt_recent/

相关内容