LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 795|回复: 4

关于流量控制的问题??

[复制链接]
发表于 2004-12-4 12:52:07 | 显示全部楼层 |阅读模式
在一个局域网中,通过LINUX做代理服务器上网,但是有些机器的流量很大,请问有什么办法,可以控制每台机器的流量吗?有这方面的资料吗?
发表于 2004-12-4 16:22:57 | 显示全部楼层
最简单的是用cbq.init来实现控制,网上资料很多,配置就几步.
发表于 2004-12-4 16:26:17 | 显示全部楼层
刚好有这次整的文档.
方法一:
tc qdisc [ add | change | replace | link ] dev DEV [ parent qdisc-id | root ] [ handle qdisc-id ] qdisc [ qdisc specific parameters ]
========================================================
#绑定内网卡eth0,做下载限制
#删除旧有队列
tc qdisc del dev eth0 root

#将一个cbq队列绑定到eth0上,其编号为1:0; eth0的实际带宽为10 Mbit,包的平均大小为1000字节。
tc qdisc add dev eth0 root handle 1: cbq avpkt 1000 bangwidth 10mbit

#创建根分类1:1;分配带宽为500Kbit,优先级别为5
实际分配的带宽为500Kbit,最大传输单元加MAC头的大小为1500字节,优先级别为5,且不可借用未使用带宽
tc class add dev eth0parent 1: classid 1:1 cbq rate 500kbit allot 1500 prio 5 bounded

#应用路由分类器到cbq队列的根,父分类编号为1:0;过滤协议为ip,优先级别为16,过滤器为基于目标网段
tc fliter add dev eth0 parent 1: protocol ip prio 16 u32 match ip dst 192.168.0.0/255.255.0.0 flowid 1:1

#设置队列规则
tc qdisc add dev eth0 parent 1:1 sfq perturb 10

#绑定外网卡eth1,做上传载限制
#删除旧有队列
tc qdisc del dev eth1 root

#将一个cbq队列绑定到eth1上,其编号为2:0; eth1的实际带宽为10 Mbit,包的平均大小为1000字节。
tc qdisc add dev eth1 root handle 2: cbq avpkt 1000 bangwidth 10mbit

#创建根分类2:1;分配带宽为500Kbit,优先级别为5
实际分配的带宽为500Kbit,最大传输单元加MAC头的大小为1500字节,优先级别为5,且不可借用未使用带宽
tc class add dev eth1 parent 2: classid 2:1 cbq rate 500kbit allot 1500 prio 5 bounded

#应用路由分类器到cbq队列的根,父分类编号为2:0;过滤协议为ip,优先级别为16,过滤器为基于目标网段
tc fliter add dev eth1 parent 2: protocol ip prio 16 u32 match ip dst 192.168.0.0/255.255.0.0 flowid 2:1

#设置队列规则
tc qdisc add dev eth1 parent 2:1 sfq perturb 10

tc -s qdisc ls dev eth0               //查看eth0当前运行状态
tc -s qdisc ls dev eth1               //查看eth1当前运行状态
========================================================


方法二:
1.下载cbq.init-v0.7.3,如存于/home目录
2.mv /home/cbq.init-v0.7.3 /sbin/cbq  //到/sbin/cbq           
3.chmod u+x /sbin/cbq                //赋予执行权限
4.mkdir -p /etc/sysconfig/cbq        //新建目录/etc/sysconfig/cbq
5.cd /etc/sysconfig/cbq/             //切换当前目录
6.touch cbq-0002.vlan_user_down      //新建文件cbq-0002.vlan_user_down
7.touch cbq-0002.vlan_user_up        //新建文件cbq-0002.vlan_user_up
8.gedit cbq-0002.vlan_user_down      //绑定内网卡,做下载限制
=======================================================
#LAN_IFACE='eth0'
DEVICE=eth0,100Mbit,10Mbit
#限制最大带宽
RATE=500Kbit
#限制最大速率
WEIGHT=5Kbit
#优先级别
PRIO=5
#受限制的用户
RULE=192.168.0.0/255.255.0.0
=====================================================

9.gedit cbq-0002.vlan_user_up        //绑定外网卡,做上传限制
=======================================================
#INET_IFACE='eth1'
DEVICE=eth1,100Mbit,10Mbit
#限制最大带宽
RATE=500Kbit
#限制最大速率
WEIGHT=5Kbit
#优先级别
PRIO=5
#受限制的用户
RULE=192.168.0.1
=======================================================

10.cbq start                         //启动CBQ服务
发表于 2004-12-4 22:18:09 | 显示全部楼层
请问.我在局域网中不是主机.但我下载时会对别人造成很大的影响.要限制自己的下载数度要怎么做呢.?
发表于 2004-12-5 00:39:30 | 显示全部楼层
还有这么好的人哦?呵呵。。。

限制自己好办,多数软件都有限速功能的噢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表