最大下载限制

我正在为Linux中的带宽pipe理编写软件。 我使用TC来进行带宽整形,而且工作正常。 我想限制一段时间的用户带宽。 例如:

  • 对于用户1,每周100MB

什么是最好的办法呢?

iptables配额模块也是非常有用的。

您可以为每个IP添加一个iptables规则,并使用它来计算通过规则的stream量。 只需为每个IP添加2条规则:

iptables -A FORWARD -s <ip> iptables -A FORWARD -d <ip> 

然后你可以用iptables -nv -L FOWARD得到结果,返回如下所示:

 # iptables -nvL FORWARD Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT all -- * virbr0 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED 

这一个是零,但bytes列会给你你想要我发誓:)

之后,所有你需要的是一个cron工作来保存这些值,并检查他们是否超过这一周的分配字节,然后改变规则来阻止stream量或使用tc来扼杀他们的带宽,或其他任何东西。