Chinaunix首页 | 论坛 | 博客
  • 博客访问: 438731
  • 博文数量: 161
  • 博客积分: 5005
  • 博客等级: 上校
  • 技术积分: 1090
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-20 16:38
文章分类

全部博文(161)

文章存档

2011年(21)

2010年(33)

2009年(89)

2008年(18)

我的朋友

分类: LINUX

2009-05-10 02:55:51

  最简单的总带宽限制(tc脚本,每个主流linux都有tc和iptable,cp到一个文件赋予x权限,执行就ok)....根据pureftp的faq中带宽限制得来的...
  #! /bin/sh
  # Simple bandwidth limiter -
  # Change this to your link bandwidth
  # (for cable modem, DSL links, etc. put the maximal bandwidth you can
  # get, not the speed of a local Ethernet link)
  REAL_BW='10Mbit'
  # Change this to the bandwidth you want to allocate to FTP.
  # We're talking about megabits, not megabytes, so 80Kbit is
  # 10 Kilobytes/s
  FTP_BW='7200Kbit' //总带宽
  # Change this to your physical network device (or 'ppp0')
  NIC='eth0'
  # Change this to the ports you assigned for passive FTP
  FTP_PORT_LOW="10000" //passive端口低限
  FTP_PORT_HIGH="11000" //passive端口上限
  tc qdisc del dev "$NIC" root 2 /dev/null //清除tc队列中关于网卡的设置
  //(hunreal修改)
  tc qdisc add dev "$NIC" root handle 1: cbq bandwidth "$REAL_BW" avpkt 1000
  tc class add dev "$NIC" parent 1: classid 1:1 cbq bandwidth "$REAL_BW" rate "$REAL_BW" maxburst 5 avpkt 1000
  tc class add dev "$NIC" parent 1:1 classid 1:10 cbq bandwidth "$REAL_BW" rate "$FTP_BW" maxburst 5 avpkt 1000 bounded
  tc qdisc add dev "$NIC" parent 1:10 sfq quantum 1514b
  tc filter add dev "$NIC" parent 1: protocol ip handle 1 fw flowid 1:10
  iptables -t mangle -A OUTPUT -p tcp --sport 20:1221 -j MARK --set-mark 1
  //上面的1221是ftp的端口号
  iptables -t mangle -A OUTPUT -p tcp --sport "$FTP_PORT_LOW":"$FTP_PORT_HIGH" -j MARK --set-mark 1
阅读(977) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~