使用 tc 控制带宽

使用 tc 控制带宽

我有两个网卡。eth0 连接到互联网,eth1 连接到 LAN。

我想使用 iptables 和 linux tc 来限制下载限制。

所以我编写了一个测试脚本来验证它是否有效。

我的 iptables 配置如下。

iptables -t mangle -N INBOUND
iptables -t mangle -I PREROUTING -i eth0 -j INBOUND
iptables -t mangle -A INBOUND  -j MARK --set-mark 60

我的入口配置如下。

tc qdisc add dev eth0 handle 1: ingress
tc filter add dev eth0 parent 1: protocol ip prio 1 handle 60 fw police rate 100kbit burst 20kbit drop flowid :1

你能告诉我这里缺少什么吗?

答案1

NIC -> INGRESS -> NETFILTER -> EGRESS -> NIC
                   (MARK)

Netfilter 中的流量在通过接口的入口规则后下降,因此您的标记不受关注。

使用‘tc 过滤器...u32’。

答案2

看一下《Wonder Shaper》:

http://lartc.org/wondershaper/

使用‘tc’来控制上传/下载速率真是奇妙。

相关内容