iptables 和 tc 同时限制上传和下载

iptables 和 tc 同时限制上传和下载

我有以下针对 iptables 和 tc 的内容,但是一旦达到 1GB 的配额,它就会将上传速度限制为 2Mbits。

iptables -t mangle -A POSTROUTING -o eth0 -p tcp -m 所有者 --uid-owner aaron -m 配额 --quota 1073741824 -j 接受

iptables -t mangle -A POSTROUTING -o eth0 -p tcp -m 所有者 --uid-owner aaron -j CLASSIFY --set-class 1:11

tc qdisc 添加 dev eth0 根句柄 1:0 htb 默认 99

tc class add dev eth0 父级 1:0 classid 1:1 htb 速率 1024Mbit 上限 1024Mbit

tc class add dev eth0 父级 1:1 classid 1:11 htb 速率 2Mbit ceil 2Mbit prio 2

tc qdisc add dev eth0 parent 1:11 handle 10: sfq perturb 10

它运行得很好,但经过大量搜索并尝试设置适当的规则后,我却失败了。

我只需要它来限制两个都上传和下载合并。因此,无论每个使用量如何,我都需要它将上传和下载分配为一个配额。无论是 1GB 的下载量还是 1GB 的上传量(每个 500MB),我都需要将配额设置为 1GB。一旦总共使用了 1GB,它应该将下载和上传速度都限制为 2Mbit。

困难在于将不同的数据包作为一个整体来处理(PREROUTING 和 POSTROUTING)。

我应该使用 iptables -N 并使用规则链然后分配配额吗?

请帮忙!

相关内容