在一个项目中,我碰巧需要以编程方式调整 iptables 规则。经过一些研究(包括this和that),我得出结论,生成 iptables-save兼容输出并使用 iptables-导入它是合适的。还原。好到目前为止。
但是我非常想使用 ipsets ,因为它们大大简化了结果链。所以在更新时我需要自动刷新所有iptables& ipset数据并在中添加一组新条目。我怎么能这样做?
我能想到的唯一解决方案是首先创建新的ipsets(当它们尚未被使用时不是原子的),然后通过引用旧的ipsets原子地刷新iptables,然后导入新的链,引用新的ipsets 。 (在一次原子扫描中)。之后,我可以非原子地删除旧的ipsets,因为它们不再被引用和使用。
然而,这样的提议解决方案看起来相当复杂和困难。
有谁知道,如何以更好的方式做到这一点?