Linux

最大下載限制

  • July 31, 2010

我正在為 Linux 中的頻寬管理編寫軟體。我使用 TC 進行頻寬整形,效果很好。我想在一段時間內限制使用者頻寬。例如:

  • 對於使用者 1,一周 100MB

最好的方法是什麼?

iptables 配額模組也非常有用。

您可以為每個 IP 添加一個 iptables 規則,並使用它來計算通過該規則的流量。只需為每個 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保存這些值,並檢查它們是否超過了當週分配的字節數,然後更改規則以阻止流量或用於tc限制其頻寬或其他任何內容。

引用自:https://serverfault.com/questions/165654