找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 8096|回复: 7

[Q][关于DD-WRT限速脚本]

[复制链接]
发表于 2009-2-3 09:43 | 显示全部楼层 |阅读模式
硬件是Buffalo WHR-G54
软件是DD-WRT V24 SP1

尝试了2个脚本都步行,代码如下:



  1. #!/bin/sh
  2. # Coyote local command init script
  3. #脚本里面的kbps非服务提供商所说的kbps。这里的kbps=kb

  4. #  定义进出设备(如果不是ADSL拨号用户可以把ppp0改为eth1)
  5. ODEV="ppp0"
  6. IDEV="eth0"

  7. #  定义总的上下带宽
  8. UP="64kbps"
  9. DOWN="220kbps"

  10. #  定义每个受限制的IP上下带宽
  11. UPLOAD="10kbps"
  12. DOWNLOAD="45kbps"

  13. #  定义内网IP段
  14. INET="192.168.5."

  15. #  定义限制的IP范围
  16. IPS="250"
  17. IPE="254"

  18. #  定义限制的IP范围以外的共享速度outdown为下行outup为上行
  19. outdown="10kbps"
  20. outup="10kbps"


  21. ##############################################################################################
  22. #以下部分无须修改
  23. # 清除 ppp0 eth0 所有队列规则
  24. tc qdisc del dev $ODEV root 2>/dev/null
  25. tc qdisc del dev $IDEV root 2>/dev/null

  26. # 定义最顶层(根)队列规则,并指定 default 类别编号
  27. tc qdisc add dev $ODEV root handle 10: htb default 2254
  28. tc qdisc add dev $IDEV root handle 10: htb default 2254

  29. # 定义第一层的 10:1 类别 (上行/下行 总频宽)
  30. tc class add dev $ODEV parent 10: classid 10:1 htb rate $UP ceil $UP
  31. tc class add dev $IDEV parent 10: classid 10:1 htb rate $DOWN ceil $DOWN
  32. ##############################################################################################


  33. ##############################################################################################
  34. #定义特殊IP按实际添加和修改
  35. #如使用经常BT的的用户或自己
  36. #例如  我这里把自己用的192.168.5.250 设置为下行设置为2048k上行64k,还可以按实际增加或删除下面五行

  37. NIP="10"
  38. NIPDOWN="220kbps"
  39. NIPUP="64kbps"
  40. tc class add dev $ODEV parent 10:1 classid 10:2$NIP htb rate $NIPUP ceil $NIPUP prio 1
  41. tc class add dev $IDEV parent 10:1 classid 10:2$NIP htb rate $NIPDOWN ceil $NIPDOWN prio 1

  42. #经常BT 的192.168.5.250设置下行10k  上行10k  如果不需要可以删除下面五行
  43. NIP="252"
  44. NIPDOWN="10kbps"
  45. NIPUP="10kbps"
  46. tc class add dev $ODEV parent 10:1 classid 10:2$NIP htb rate $NIPUP ceil $NIPUP prio 1
  47. tc class add dev $IDEV parent 10:1 classid 10:2$NIP htb rate $NIPDOWN ceil $NIPDOWN prio 1
  48. ##############################################################################################


  49. ##############################################################################################
  50. #以下部分无须修改
  51. # rate 保证频宽,ceil 最大频宽,prio 优先权
  52. i=$IPS;
  53. while [ $i -le $IPE ]
  54. do
  55. tc class add dev $ODEV parent 10:1 classid 10:2$i htb rate $UPLOAD ceil $UPLOAD prio 1
  56. tc qdisc add dev $ODEV parent 10:2$i handle 100$i: pfifo
  57. tc filter add dev $ODEV parent 10: protocol ip prio 100 handle 2$i fw classid 10:2$i
  58. tc class add dev $IDEV parent 10:1 classid 10:2$i htb rate $DOWNLOAD ceil $DOWNLOAD prio 1
  59. tc qdisc add dev $IDEV parent 10:2$i handle 100$i: pfifo
  60. tc filter add dev $IDEV parent 10: protocol ip prio 100 handle 2$i fw classid 10:2$i
  61. iptables -t mangle -A PREROUTING -s $INET$i -j MARK --set-mark 2$i
  62. iptables -t mangle -A POSTROUTING -d $INET$i -j MARK --set-mark 2$i
  63. i=`expr $i + 1`
  64. done

  65. #定义default 类别编的上行 (上面没定义带宽的IP上行速度)
  66. tc class add dev $ODEV parent 10:1 classid 10:2254 htb rate $outup ceil $outup prio 1
  67. tc qdisc add dev $ODEV parent 10:2254 handle 100254: pfifo
  68. tc filter add dev $ODEV parent 10: protocol ip prio 100 handle 2254 fw classid 10:2254

  69. #定义default 类别编的下行 (上面没定义带宽的IP下行速度)
  70. tc class add dev $IDEV parent 10:1 classid 10:2254 htb rate $outdown ceil $outdown prio 1
  71. tc qdisc add dev $IDEV parent 10:2254 handle 100254: pfifo
  72. tc filter add dev $IDEV parent 10: protocol ip prio 100 handle 2254 fw classid 10:2254
  73. ##############################################################################################

复制代码



这个脚本是在网上找的,但是保存在防火墙脚本之后,所有IP都为同一被限制速度无法达到某ip例外的效果。
 楼主| 发表于 2009-2-3 09:45 | 显示全部楼层

  1. #--------------------------------------------
  2. #WRT54 Script Generator v1.00
  3. #Copyright (C) 2006 Robert "Robson" Mytkowski
  4. #--------------------------------------------
  5. TCA="tc class add dev br0"
  6. TFA="tc filter add dev br0"
  7. tc qdisc del dev br0 root
  8. tc qdisc add dev br0 root handle 1: htb
  9. tc class add dev br0 parent 1: classid 1:1 htb rate 2048kbit
  10. $TCA parent 1:1 classid 1:10 htb rate 512kbit ceil 512kbit prio 4
  11. $TFA parent 1:0 prio 4 protocol ip handle 10 fw flowid 1:10
  12. iptables -t mangle -A POSTROUTING -d 192.168.5.250 -j MARK --set-mark 10
  13. tc qdisc add dev br0 ingress
  14. $TFA parent ffff: protocol ip u32 match ip src 192.168.5.250 flowid :1 police rate 256kbit mtu 12k burst 10k drop
  15. iptables -I FORWARD -s 192.168.5.250 -p tcp -m connlimit --connlimit-above 50 -j DROP
复制代码


这个是在论坛里面找generator的代码生成器生成的,但是实际上没有效果。。。。

请帮忙看看哪里错了。
发表于 2009-2-3 14:29 | 显示全部楼层
我用的挺好,限速了
发表于 2009-6-9 09:49 | 显示全部楼层
我也测试了,这个脚本没有办法对定制的ip进行限速,所有ip都是一个限制
发表于 2009-11-24 09:51 | 显示全部楼层
有办法对定制的ip进行限速吗?
发表于 2009-11-26 15:12 | 显示全部楼层
是IP的,有MAC限速的吗?
 楼主| 发表于 2009-11-27 20:58 | 显示全部楼层
这么旧的帖都有人挖。。。。。

用脚本生成器直接生成就可以了。。。
发表于 2009-11-28 00:32 | 显示全部楼层
已验证为假冒伪劣产品。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-7-4 09:24

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

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