一. 前言
--limit和--limit-burst规则匹配是iptables对数据包众多的匹配的方式中的一种,使用之前需要用"-m limit",表示使用limit模块。limit模块主要是用于限制一个时间段内进入系统的数据包,主要的用途是减少泛洪攻击的影响。
--limit和--limit-burst是配合使用的,如果iptables规则只使用了--limit,则表示使用--limit-burst的默认值为5。如果只指定了--limit-burst,则--limit默认值3/hour。如下所示:
[root@localhost ~]# iptables -A INPUT -p icmp --icmp-type echo-reply -m limit --limit 3/m -j DROP
[root@localhost ~]# iptables -A INPUT -m limit --limit-burst 8 -j DROP
[root@localhost ~]#
[root@localhost ~]# iptables -nvL
Chain INPUT (policy ACCEPT 12 packets, 792 bytes)
pkts bytes target prot opt in out source destination
0 0 DROP icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 0 limit: avg 3/min burst 5
8 668 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/hour burst 8
Chain FORWARD (policy ACCEPT

iptables的limit模块用于限制数据包流入,--limit指定速率,--limit-burst设定令牌桶容量。当令牌桶有令牌时可匹配数据包,否则需等待按--limit速率填充令牌。示例展示了如何配置限制每分钟3个ICMP回包,超出则丢弃,说明了令牌桶的工作原理。
最低0.47元/天 解锁文章
777





