请教关于QOS设置??????
怎么设置 所有机的最高上行最高下行呢????????按精华区的是 每一台都要设置的如果电脑多的话设置起来很麻烦! 有没有简单一点的 把一个 楼主是要在什么地方设置?? #!/bin/sh
#
# Coyote local command init script
# 清除 eth1 所有队列规则
tc qdisc del dev eth1 root 2>/dev/null
# 定义最顶层(根)队列规则,并指定 default 类别编号
tc qdisc add dev eth1 root handle 10: htb default 30
# 定义第一层的 10:1 类别 (总频宽)
tc class add dev eth1 parent 10: classid 10:1 htb rate 64kbps ceil 64kbps
# 定义第二层叶类别
# rate 保证频宽,ceil 最大频宽,prio 优先权
tc class add dev eth1 parent 10:1 classid 10:10 htb rate 5kbps ceil 15kbps prio 2
tc class add dev eth1 parent 10:1 classid 10:20 htb rate 10kbps ceil 30kbps prio 2
tc class add dev eth1 parent 10:1 classid 10:30 htb rate 5kbps ceil 10kbps prio 3
# 定义各叶类别的队列规则
# parent 类别编号,handle 叶类别队列规则编号
# 由于采用 fw 过滤器,所以此处使用 pfifo 的队列规则即可
tc qdisc add dev eth1 parent 10:10 handle 101: pfifo
tc qdisc add dev eth1 parent 10:20 handle 102: pfifo
tc qdisc add dev eth1 parent 10:30 handle 103: pfifo
# 设定过滤器
# 指定贴有 10 标签 (handle) 的封包,归类到 10:10 类别,以此类推
tc filter add dev eth1 parent 10: protocol ip prio 100 handle 10 fw classid 10:10
tc filter add dev eth1 parent 10: protocol ip prio 100 handle 20 fw classid 10:20
tc filter add dev eth1 parent 10: protocol ip prio 100 handle 30 fw classid 10:30
# QoS eth0 下载方面
#
# 清除 eth0所有队列规则
tc qdisc del dev eth0 root 2>/dev/null
# 定义最顶层(根)队列规则,并指定 default 类别编号
tc qdisc add dev eth0 root handle 10: htb default 30
# 定义第一层的 10:1 类别 (总频宽)
tc class add dev eth0 parent 10: classid 10:1 htb rate 410kbps ceil 410kbps
# 定义第二层叶类别
# rate 保证频宽,ceil 最大频宽,prio 优先权
tc class add dev eth0 parent 10:1 classid 10:10 htb rate 50kbps ceil 200kbps prio 2
tc class add dev eth0 parent 10:1 classid 10:20 htb rate 100kbps ceil 300kbps prio 2
tc class add dev eth0 parent 10:1 classid 10:30 htb rate 10kbps ceil 20kbps prio 3
# 定义各叶类别的队列规则
# parent 类别编号,handle 叶类别队列规则编号
tc qdisc add dev eth0 parent 10:10 handle 101: pfifo
tc qdisc add dev eth0 parent 10:20 handle 102: pfifo
tc qdisc add dev eth0 parent 10:30 handle 103: pfifo
# 设定过滤器
tc filter add dev eth0 parent 10: protocol ip prio 100 handle 10 fw classid 10:10
tc filter add dev eth0 parent 10: protocol ip prio 100 handle 20 fw classid 10:20
tc filter add dev eth0 parent 10: protocol ip prio 100 handle 30 fw classid 10:30
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# uploads
# 设定上传方面,先利用 iptables 给封包贴标签,再交由 fw 过滤器进行过滤
iptables -t mangle -A PREROUTING -s 192.168.0.2/24 -j MARK --set-mark 10
# downloads
# 下载方面
iptables -t mangle -A POSTROUTING -d 192.168.0.2/24 -j MARK --set-mark 10
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
按上面的设置 发现这个IP段 是共享200k的!!并不是每台独享200k 怎么设置才能吧 每台机的 下行都设为 同一个值呢? 例如每台最高下行是200k 谢谢 使用limit模块.
具体的看下:
http://bbs.chinaunix.net/viewthread.php?tid=538785
是LINUX上实现的. http://bbs.chinaunix.net/viewthread.php?tid=840487&highlight=tc限制
这个是TC的.看下吧. http://bbs.chinaunix.net/viewthread.php?tid=476674&extra=page%3D4%26filter%3Ddigest&page=1
TC+IPTALBES实现的下载和上传带宽限制的脚本
这个应该适合你用了.. 我用的是BrazilFW 你发的那个脚本里不是有TC和IPTABLES吗? 那么我最后发的哪个链接就适用了吧? 按照 你 的 设置 本来就是共享200k的带宽。
iptables -t mangle -A POSTROUTING -d 192.168.0.2/24 -j MARK --set-mark 10
192.168.0.*全部在第一个类里面共享200k.
你需要给每个地址单独分一个子类。 谢谢!!! 两位的回答!! 一个IP一定要设置一个类的吗?有其他方法不设置那么多的类呢?
页:
[1]