每个ip地址的iptables限制

iptables limit for every ip address

iptables -A OUTPUT -s xxx.xxx.xxx.xxx -p tcp --sport 1234 -m limit 50/s -j ACCEPT
iptables -A OUTPUT -s xxx.xxx.xxx.xxx -p tcp --sport 1234 -j DROP

我想如果我使用上面的配置,它将限制 xxx.xxx.xxx.xxx:1234 为 50p/s,但我的目标是限制每个 ip xxx.xxx.xxx.xxx:1234 发送到 50p/s .

iptables可以做这样的事情吗?

不确定...尝试:不要指定 -s 选项。将 -i 与接收流量的接口名称放在一起,它将应用于所有 ips。如果您删除 -i,它将更全局地应用于所有接口。

无论如何,limit 50/s 意味着 Maximum average matching rate in seconds。例如,如果您输入 --limit-burst 1,则表示 Maximum initial number of packets to match

读这个:https://www.cyberciti.biz/faq/iptables-connection-limits-howto/