我正在尝试创建一个集合ipset
并在某些规则中使用它iptables
。
ipset
有暂停选项可以为一组条目设置倒计时超时,以便在一段时间后自动将其删除。这是一个例子:
#create a set with default timeout, zero means no timeout
ipset create myset_down iphash counters timeout 0
#add an ip to the set with 60 seconds timeout
ipset add myset_down 192.168.56.101 timeout 60
#iptables rule
iptables -A FORWARD -m set --match-set myset_up src -j ACCEPT
在上面的例子中,ip在之后192.168.56.101
自动从集合中删除myset_down
60秒。但我想要空闲超时,这意味着如果192.168.56.101
60 秒内没有从 ip 收到数据包,则必须从集合中删除该 ip。也许可以编写一条iptables
规则来创建此功能,但我不知道如何!
任何想法表示赞赏。