我有三台机器:客户端,服务器和代理。在client(1.1.1.1)上,我有简单的脚本,使用wget在server(2.2.2.1)上,我有apache。在代理计算机上,我想通过使用tc限制速度。在代理计算机上,我有两个接口eth0(1.1.1.2)连接到客户端,而eth1(2.2.2.2)连接到服务器。

我尝试添加此规则,但它们不起作用:

tc qdisc add dev eth1 root handle 1: cbq avpkt 1000 bandwidth 10mbit
tc class add dev eth1 parent 1: classid 1:1 cbq rate 1mbit \
allot 1500 prio 5 bounded isolated
tc filter add dev eth1 parent 1: protocol ip prio 16 u32 \
match ip dst 1.1.1.1 flowid 1:1

最佳答案

找到了答案。这是我的脚本:

#!/bin/bash
set -x

tc qdisc del dev eth0 root
tc qdisc add dev eth0 root handle 1: cbq avpkt 1000 bandwidth 100mbit

tc class add dev eth0 parent 1: classid 1:1 cbq rate 1mbps \
   allot 1500 prio 5 bounded isolated

tc filter add dev eth0 parent 1: protocol ip prio 16 u32 \
   match ip dst 1.1.1.1 flowid 1:1

关于linux - 如何使用tc限制网络速度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30414729/

10-12 19:02