ubnt解决方案
查看: 5946|回复: 8

最新修改的单IP限制上下行防火墙规则0.3版本!(不用特别版也可以按IP限制流量)

[复制链接]

44

回帖

224

积分

47 小时

在线时间

少尉

我的路由,我做主

注册时间
2008-2-17
金币
151 个
威望
0 个
荣誉
0 个

尚未签到

发表于 2008-7-16 08:16 |显示全部楼层
<span class="bold">最新修改的单IP限制上下行防火墙规则0.3版本!(不用特别版也可以按IP限制流量)</span><br/><br/>
最新0.3版本 简化了代码!  <br/>
1.增加了定义限制的IP范围以外的共享速度 例如你路由分配了192.168.1.2~192.168.1.5
一共4个IP地址  但如果你有其他用户私自更改IP 或增加电脑 是192.168.1.6
~192.168.1.254  这就属于定义限制的IP范围以外 的IP了 就可以利用这个去定义他们的共享速度!注意这个速度是共享的!<br/>
2.增加定义特殊IP 速度功能!   例如 你定义了192.168.1.2~192.168.1.5的每个IP速度下行100k  上行10k !
但其中 192.168.1.2是我自己的! 谁还会那么傻限自己速呢! 呵呵 这就速度特殊IP了!  又或者某个IP 是BT狂人
需要把速度再降低一点! 这也属于特殊IP!<br/>
        <br/>
        <br/>
特殊IP可以按自己实际去增加 减少 或 完全不定义!<br/>
例如: 这是五行原始代码NIP 为IP号  NIPDOWN为下载速度 NIPUP为上行速度   最后两行无须修改  如果不需要定义特殊IP可以直接这五行代码删除!   <br/>
          如果需要增加可以复制这五行代码 粘贴到 前段代码的后面 ! 在按实际去修改 NIP  NIPDOWN  NIPUP这三个参数!<br/>
NIP="2"<br/>
NIPDOWN="200kbps"<br/>
NIPUP="20kbps"<br/>
tc class add dev $ODEV parent 10:1 classid 10:2$NIP htb rate $NIPUP ceil $NIPUP prio 1<br/>
tc class add dev $IDEV parent 10:1 classid 10:2$NIP htb rate $NIPDOWN ceil $NIPDOWN prio 1<br/>
        <br/>
以下为0.3版本代码从#开始复制到结尾 <br/>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
#!/bin/sh<br/>
# BY MAGIC 0.3 070213<br/>
# Coyote local command init script<br/>
        <br/>
#  定义进出设备(如果不是ADSL拨号用户可以把ppp0改为eth1)<br/>
ODEV="ppp0"<br/>
IDEV="eth0"<br/>
        <br/>
#  定义总的上下带宽<br/>
UP="60kbps"<br/>
DOWN="400kbps"<br/>
        <br/>
#  定义每个受限制的IP上下带宽<br/>
UPLOAD="10kbps"<br/>
DOWNLOAD="100kbps"<br/>
        <br/>
#  定义内网IP段<br/>
INET="192.168.1."<br/>
        <br/>
#  定义限制的IP范围<br/>
IPS="2"<br/>
IPE="36"<br/>
        <br/>
#  定义限制的IP范围以外的共享速度outdown为下行outup为上行<br/>
outdown="2kbps"<br/>
outup="2kbps"<br/>
        <br/>
        <br/>
        <br/>
#以下部分无须修改 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/>
# 清除 ppp0 eth0 所有队列规则<br/>
tc qdisc del dev $ODEV root 2&gt;/dev/null<br/>
tc qdisc del dev $IDEV root 2&gt;/dev/null<br/>
        <br/>
# 定义最顶层(根)队列规则,并指定 default 类别编号<br/>
tc qdisc add dev $ODEV root handle 10: htb default 2254<br/>
tc qdisc add dev $IDEV root handle 10: htb default 2254<br/>
        <br/>
# 定义第一层的 10:1 类别 (上行/下行 总频宽)<br/>
tc class add dev $ODEV parent 10: classid 10:1 htb rate $UP ceil $UP<br/>
tc class add dev $IDEV parent 10: classid 10:1 htb rate $DOWN ceil $DOWN<br/>
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/>
        <br/>
        <br/>
        <br/>
#定义特殊IP按实际添加和修改 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/>
#如使用经常BT的的用户或自己 <br/>
#例如  我这里把自己用的192.168.1.2 设置为下行设置为200k上行20k,还可以按实际增加或删除下面五行<br/>
        <br/>
NIP="2"<br/>
NIPDOWN="200kbps"<br/>
NIPUP="20kbps"<br/>
tc class add dev $ODEV parent 10:1 classid 10:2$NIP htb rate $NIPUP ceil $NIPUP prio 1<br/>
tc class add dev $IDEV parent 10:1 classid 10:2$NIP htb rate $NIPDOWN ceil $NIPDOWN prio 1<br/>
        <br/>
#经常BT 的192.168.1.4设置下行50k  上行8k  如果不需要可以删除下面五行<br/>
NIP="4"<br/>
NIPDOWN="50kbps"<br/>
NIPUP="8kbps"<br/>
tc class add dev $ODEV parent 10:1 classid 10:2$NIP htb rate $NIPUP ceil $NIPUP prio 1<br/>
tc class add dev $IDEV parent 10:1 classid 10:2$NIP htb rate $NIPDOWN ceil $NIPDOWN prio 1<br/>
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/>
        <br/>
        <br/>
#以下部分无须修改 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br/>
# rate 保证频宽,ceil 最大频宽,prio 优先权<br/>
i=$IPS; <br/>
while [ $i -le $IPE ] <br/>
do<br/>
tc class add dev $ODEV parent 10:1 classid 10:2$i htb rate $UPLOAD ceil $UPLOAD prio 1<br/>
tc qdisc add dev $ODEV parent 10:2$i handle 100$i: pfifo<br/>
tc filter add dev $ODEV parent 10: protocol ip prio 100 handle 2$i fw classid 10:2$i<br/>
tc class add dev $IDEV parent 10:1 classid 10:2$i htb rate $DOWNLOAD ceil $DOWNLOAD prio 1 <br/>
tc qdisc add dev $IDEV parent 10:2$i handle 100$i: pfifo<br/>
tc filter add dev $IDEV parent 10: protocol ip prio 100 handle 2$i fw classid 10:2$i<br/>
iptables -t mangle -A PREROUTING -s $INET$i -j MARK --set-mark 2$i<br/>
iptables -t mangle -A POSTROUTING -d $INET$i -j MARK --set-mark 2$i<br/>
i=`expr $i + 1` <br/>
done<br/>
        <br/>
#定义default 类别编的上行 (上面没定义带宽的IP上行速度)<br/>
tc class add dev $ODEV parent 10:1 classid 10:2254 htb rate $outup ceil $outup prio 1<br/>
tc qdisc add dev $ODEV parent 10:2254 handle 100254: pfifo<br/>
tc filter add dev $ODEV parent 10: protocol ip prio 100 handle 2254 fw classid 10:2254<br/>
        <br/>
#定义default 类别编的下行 (上面没定义带宽的IP下行速度)<br/>
tc class add dev $IDEV parent 10:1 classid 10:2254 htb rate $outdown ceil $outdown prio 1 <br/>
tc qdisc add dev $IDEV parent 10:2254 handle 100254: pfifo<br/>
tc filter add dev $IDEV parent 10: protocol ip prio 100 handle 2254 fw classid 10:2254<br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>

398

回帖

7142

积分

552 小时

在线时间

中校

和尚

注册时间
2008-3-26
金币
6371 个
威望
60 个
荣誉
1 个

尚未签到

发表于 2008-7-22 12:22 |显示全部楼层
强啊,坐沙发帮你顶啦
回复

使用道具 举报

84

回帖

339

积分

79 小时

在线时间

少尉

注册时间
2008-8-3
金币
243 个
威望
0 个
荣誉
0 个

尚未签到

发表于 2008-8-6 17:36 |显示全部楼层
tomato 好像有这功能了~~~
回复

使用道具 举报

251

回帖

635

积分

58 小时

在线时间

中尉

注册时间
2008-7-28
金币
313 个
威望
2 个
荣誉
2 个
累计签到:2 天
连续签到:0 天
[LV.20]漫游旅程
发表于 2008-8-27 17:06 |显示全部楼层
这是代码版,呵呵,谢了,学习
回复

使用道具 举报

12

回帖

36

积分

8 小时

在线时间

新兵上阵

注册时间
2008-11-15
金币
21 个
威望
0 个
荣誉
0 个

尚未签到

发表于 2008-11-16 00:09 |显示全部楼层
怎么写啊,复制到哪里,能具体点吗
回复

使用道具 举报

174

回帖

584

积分

28 小时

在线时间

中尉

注册时间
2008-4-21
金币
356 个
威望
10 个
荣誉
0 个

尚未签到

发表于 2008-11-21 01:06 |显示全部楼层
tomato了
回复

使用道具 举报

241

回帖

706

积分

85 小时

在线时间

中尉

注册时间
2008-9-1
金币
364 个
威望
10 个
荣誉
0 个

尚未签到

发表于 2008-11-26 17:44 |显示全部楼层
在那里有的呀 说具体点
回复

使用道具 举报

241

回帖

706

积分

85 小时

在线时间

中尉

注册时间
2008-9-1
金币
364 个
威望
10 个
荣誉
0 个

尚未签到

发表于 2008-11-26 18:01 |显示全部楼层
DD-WRT 可以用吗?
回复

使用道具 举报

160

回帖

382

积分

32 小时

在线时间

少尉

注册时间
2011-2-10
金币
213 个
威望
1 个
荣誉
0 个

尚未签到

发表于 2011-2-15 17:19 |显示全部楼层
学习一下,呵呵
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

站点统计 | Archiver | 手机版 | 无线门户 ( 粤ICP备11076993号|粤公网安备44010602008359号 ) |网站地图

GMT+8, 2024-5-6 13:08

返回顶部 返回列表