我已经有一个服务器运行12.04作为调制解调器。DHCP、NAT等
我需要知道如何降低网络上单个IP的速度,或者设置每个单独IP的速度。
我的问题是,我哥哥的GF每天24小时不停地运行,使我的互联网速度慢得可怕。让她停下来没用,所以现在我需要控制她的联系。
我想我的选择要么是限制她,比如说4 4mbps,300 4mbps.或者朝她扔QoS。我也不知道该怎么做。
发布于 2013-12-09 20:01:06
我建议阅读Linux高级路由和流量控制方法,特别是限制单个主机或网络掩码的速率和一种基于QoS的完整nat解决方案上的示例。
基本上,您必须做以下工作:
PREROUTING表的mangle链中标记来自特定主机的数据包未经测试,但类似的内容(如果您注意到错误的话,可以随意编辑):
iptables -t mangle -A PREROUTING -i eth0 -s 192.168.0.666 -j MARK --set-mark 1
tc qdisc add dev ppp0 root handle 1: cbq avpkt 1000 bandwidth 10mbit
tc class add dev ppp0 parent 1: classid 1:1 cbq rate 512kbit \
allot 1500 prio 5 bounded isolated
tc filter add dev ppp0 parent 1: protocol ip prio 1 handle 1 fw classid 1:1请注意,您不能直接使用tc filter在该主机的IP上进行筛选,因为tc筛选器在NAT之后应用,因此它将看到您的公共IP,它不能用于区分数据包。
通常,您会对上游分组进行速率限制,因为在那里您有最多的控制,而且由于在一个通用的ADSL链路上,上游更容易被p2p流量所饱和。如果你愿意,你也可以尝试通过故意丢包来限制下游。您可以使用另一个流量控制设置来实现这一点,这一次是针对通过本地网络设备转发的数据包。
https://askubuntu.com/questions/388390
复制相似问题