我知道如何分别形成延迟和带宽。 对于带宽,我可以做
wondershaper etho0 100 100
我可以运行的延迟
tc qdisc add dev eth0 root netem delay 200ms
但是,我需要限制整形到特定的IP连接,我需要同时形成延迟和带宽。
我怎样才能做到这一点?
您可以使用tc来像这样调整带宽
这个类将形成某些地址到一定的速度。 我们还需要设置一个filter,以便任何标记为这样的数据包通过这个规则
tc class add dev eth0 parent 1:1 classid 1:5 htb rate 256kbps ceil 256kbps prio 1
tc filter add dev eth0 parent 1:0 prio 1 handle 5 fw flowid 1:5
一旦这个类被设置,你需要设置iptables来标记你想要形成的特定数据包。
接下来,创build需要的mangle表。
iptables -t mangle -N shaper-out
iptables -t mangle -N shaper-in
iptables -t mangle -I PREROUTING -i eth0 -j shaper-in
iptables -t mangle -I POSTROUTING -o eth0 -j shaper-out
接下来设置我们需要塑造某些IP地址的标记。 标记5是一个形状为256的标记。
iptables -t mangle -A shaper-out -s 10.0.0.5 -j MARK --set-mark 5
iptables -t mangle -A shaper-in -d 10.0.0.5 -j MARK --set-mark 5
这应该从10.0.0.5到256kbps。
参考(我的博客) – http://sirlagz.net/2013/01/27/how-to-turn-the-raspberry-pi-into-a-shaping-wifi-router/