找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 4157|回复: 6

哪位能不能把华硕固件的qos代码发下?

[复制链接]
发表于 2018-6-15 14:35 | 显示全部楼层 |阅读模式
哪位能不能把华硕固件的qos代码发下?也就是限速代码发下好吗?我的QSO代码好像错了 哪位能不能发下 谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-6-15 15:21 | 显示全部楼层
然并卵摆设而已

点评

我需要那个 能不能发下 还是谢谢你了  详情 回复 发表于 2018-6-15 19:46
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2018-6-15 18:50 来自手机 | 显示全部楼层
能不能发下 二楼的 谢谢
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2018-6-15 19:46 | 显示全部楼层

我需要那个  能不能发下  还是谢谢你了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-6-15 19:47 | 显示全部楼层
这个qos真是没用的
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2018-6-15 19:59 | 显示全部楼层
#!/bin/sh
#copyright by Emong's Qos update hiboy
/etc/storage/crontabs_script.sh &
export PATH='/etc/storage/bin:/tmp/script:/etc/storage/script:/opt/usr/sbin:/opt/usr/bin:/opt/sbin:/opt/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin'
export LD_LIBRARY_PATH=/lib:/opt/lib
# qos 功能 0关闭;1启动
qoss=0
# 当在线终端≤2台时取消限速.(路由端1+电脑端1=2台)
qosb=2
# 默认为20M
DOWN=2560
UP=256
[ "$qoss" = "1" ] && logger -t "【QOS】" "最大下载 $DOWN KB/S,最大上传 $UP KB/S"
# IP限速设置
# 未设置的IP带宽减半,如启用adbyby,因7620的CPU瓶颈,宽带峰值50M
# 注意参数之间有空格
# 可选项:删除前面的#可生效
# [KB/S]IP地址 最大下载 下载保证 最大上传 上传保证
cat > "/tmp/qos_ip_limit_DOMAIN.txt" <<-\EOF
#192.168.123.115 2560 100 200 20
192.168.123.2-192.168.123.244 2560 100 100 15



EOF
# 连接数限制
#如果开启该功能后,打开下载软件可能会导致QQ等聊天软件掉线.(因为连接数量会被占光)
# IP地址 TCP连接数 UDP连接数
cat > "/tmp/qos_connlmt_DOMAIN.txt" <<-\EOF
#192.168.123.10 100 100
192.168.123.20-192.168.123.25 100 100


EOF
# 端口优先
# 请勿添加下载应用的端口80、8080等等.由于没有被流量控制和处理优先级,下载应用会占用大量资源导致网络卡
# 协议 端口
cat > "/tmp/qos_port_first_DOMAIN.txt" <<-\EOF
UDP 53
TCP 22
TCP 23
#TCP 443
TCP 1723
#TCP 3389
TCP 3724,1119,1120
TCP 28012,10008,13006,2349,7101:7103
UDP 2349,12000:12175



EOF

load_var() {
    WAN_IF="imq1"
    LAN_IF="imq0"
    WAN_IFT=$(nvram get wan0_ifname_t)
    IPM="iptables -t mangle"
    lan_ip="`nvram get lan_ipaddr`/24"

}

load_modules(){
[ ! -f /tmp/qos-emong-modules ] && {
    modprobe act_connmark    #缺,补621-sched_act_connmark.patch@597
    for module in imq ipt_IMQ ipt_web xt_length xt_hashlimit cls_fw sch_htb sch_sfq sch_red xt_length xt_IMQ ipt_ipp2p xt_dscp xt_DSCP cls_u32 sch_hfsc sch_prio ipt_multiport ipt_CONNMARK ipt_length ipt_hashlimit xt_connlimit xt_connbytes ipt_connlimit em_u32 sch_ingress act_mirred
    do
        modprobe $module
    done
    modprobe imq numdevs=1
    echo >/tmp/qos-emong-modules
    }
}

qos_stop() {
    tc qdisc del dev $WAN_IF root
    tc qdisc del dev $LAN_IF root

    $IPM -F
    $IPM -X UP
    $IPM -X DOWN
    $IPM -X IP_DOWN
    $IPM -X IP_UP
}

qos_start(){

    ip link set imq0 up
    ip link set imq1 up
    tc qdisc add dev $WAN_IF root handle 1: htb
    tc qdisc add dev $LAN_IF root handle 1: htb
    tc class add dev $WAN_IF parent 1: classid 1:2 htb rate $((UP))kbps
    tc class add dev $LAN_IF parent 1: classid 1:2 htb rate $((DOWN))kbps
   
    tc class add dev $WAN_IF parent 1: classid 1:1 htb rate $((UP*95/100))kbps
    tc class add dev $WAN_IF parent 1:1 classid 1:11 htb rate $((UP*5/10))kbps prio 1
    tc class add dev $WAN_IF parent 1:1 classid 1:12 htb rate $((UP*5/10))kbps ceil $((UP*9/10))kbps prio 2
    tc class add dev $WAN_IF parent 1:12 classid 1:121 htb rate $((UP*4/10))kbps ceil $((UP*8/10))kbps prio 1
    tc class add dev $WAN_IF parent 1:12 classid 1:122 htb rate $((UP*1/10))kbps ceil $((UP*4/10))kbps prio 2
    tc class add dev $WAN_IF parent 1:12 classid 1:123 htb rate $((UP*4/10))kbps ceil $((UP*6/10))kbps prio 3
    tc qdisc add dev $WAN_IF parent 1:11 handle 11: sfq perturb 10
    tc qdisc add dev $WAN_IF parent 1:121 handle 121: sfq perturb 10
    tc qdisc add dev $WAN_IF parent 1:122 handle 122: sfq perturb 10
    tc qdisc add dev $WAN_IF parent 1:123 handle 123: sfq perturb 10
    tc filter add dev $WAN_IF parent 1: handle 0x10/0xfff0 fw classid 1:11
    tc filter add dev $WAN_IF parent 1: handle 0x20/0xfff0 fw classid 1:121
    tc filter add dev $WAN_IF parent 1: handle 0x30/0xfff0 fw classid 1:122
    tc filter add dev $WAN_IF parent 1: handle 0x40/0xfff0 fw classid 1:123
   
    tc class add dev $LAN_IF parent 1: classid 1:1 htb rate $((DOWN*95/100))kbps
    tc class add dev $LAN_IF parent 1:1 classid 1:11 htb rate $((DOWN*5/10))kbps prio 1
    tc class add dev $LAN_IF parent 1:1 classid 1:12 htb rate $((DOWN*5/10))kbps ceil $((DOWN*9/10))kbps prio 2
    tc class add dev $LAN_IF parent 1:12 classid 1:121 htb rate $((DOWN*4/10))kbps ceil $((DOWN*8/10))kbps prio 1
    tc class add dev $LAN_IF parent 1:12 classid 1:122 htb rate $((DOWN*1/10))kbps ceil $((DOWN*4/10))kbps prio 10
    tc class add dev $LAN_IF parent 1:12 classid 1:123 htb rate $((DOWN*4/10))kbps ceil $((DOWN*6/10))kbps prio 3
    tc qdisc add dev $LAN_IF parent 1:11 handle 11: sfq perturb 10
    tc qdisc add dev $LAN_IF parent 1:121 handle 121: sfq perturb 10
    tc qdisc add dev $LAN_IF parent 1:122 handle 122: sfq perturb 10
    tc qdisc add dev $LAN_IF parent 1:123 handle 123: sfq perturb 10
    tc filter add dev $LAN_IF parent 1: handle 0x10/0xfff0 fw classid 1:11
    tc filter add dev $LAN_IF parent 1: handle 0x20/0xfff0 fw classid 1:121
    tc filter add dev $LAN_IF parent 1: handle 0x30/0xfff0 fw classid 1:122
    tc filter add dev $LAN_IF parent 1: handle 0x40/0xfff0 fw classid 1:123
   
    $IPM -N UP
    $IPM -N DOWN
    $IPM -N IP_UP
    $IPM -N IP_DOWN
    $IPM -I POSTROUTING -o br0 -j DOWN
    $IPM -I PREROUTING -i br0 -j UP
    $IPM -A DOWN -j IMQ --todev 0
    $IPM -A UP -j IMQ --todev 1
    #$IPM -I DOWN -s $lan_ip -j RETURN
    $IPM -I DOWN -p tcp -m multiport --dports 22,53,445,139 -j RETURN
    $IPM -I DOWN -p icmp -j RETURN
    #$IPM -A DOWN -m length --length :100 -j RETURN
    $IPM -A DOWN -j MARK --set-mark=0x41
    $IPM -A DOWN -m length --length 1024:1500 -j MARK --set-mark=0x31
    $IPM -A DOWN -p tcp -m multiport --dports 21,80,443,3389,8118 -j MARK --set-mark=0x21
    $IPM -A DOWN -m length --length :768 -j MARK --set-mark=0x11
   
    $IPM -A DOWN -j IP_DOWN
   
    #$IPM -I UP -d $lan_ip -j RETURN
    $IPM -I UP -p tcp -m multiport --sports 22,53,445,139 -j RETURN
    $IPM -I UP -p icmp -j RETURN
    #$IPM -A UP -m length --length :80 -j RETURN
    $IPM -A UP -j MARK --set-mark=0x41
    $IPM -A UP -m length --length 1024:1500 -j MARK --set-mark=0x31
    $IPM -A UP -p tcp -m multiport --sports 21,80,443,3389,8118 -j MARK --set-mark=0x21
    $IPM -A UP -m length --length :512 -j MARK --set-mark=0x11
   
    $IPM -A UP -j IP_UP

}

connlmt() {
    $IPM -A FORWARD -p tcp -d $1 -m connlimit --connlimit-above $2 -j DROP
    $IPM -A FORWARD -p udp -d $1 -m connlimit --connlimit-above $3 -j DROP

}

ip_limit() {
conns=$6
[ $((conns)) -lt "6" ] && logger -t "【QOS】" "限速设置[KB/S]IP1, 最大下载2, 下载保证3, 最大上传4, 上传保证5"
[ $((conns)) -ge "6" ] && logger -t "【QOS】" "连接数限制IP1 TCP2, UDP3"
n=$(echo $1|cut -d '-' -f1|cut -d '.' -f4)
m=$(echo $1|cut -d '-' -f2|cut -d '.' -f4)
NET=$(echo $1|cut -d '.' -f1-3)
while [ $n -le $m ]
do
    ip=$n
    if [ $((conns)) -lt "6" ] ; then
        [ ${#ip} -lt 3 ] && ip=0$ip
        [ ${#ip} -lt 3 ] && ip=0$ip
        var=1
        
        tc class add dev $WAN_IF parent 1:2 classid 1var$ip htb rate $5kbps ceil $4kbps
        tc qdisc add dev $WAN_IF parent 1var$ip handle $var$ip sfq perturb 10
        tc filter add dev $WAN_IF parent 1: handle 0x$var$ip fw flowid 1var$ip
        
        tc class add dev $LAN_IF parent 1:2 classid 1var$ip htb rate $3kbps ceil $2kbps
        tc qdisc add dev $LAN_IF parent 1var$ip handle $var$ip sfq perturb 10
        tc filter add dev $LAN_IF parent 1: handle 0x$var$ip fw flowid 1var$ip
        
        $IPM -A IP_DOWN -d $NET.$n -j MARK --set-mark 0x$var$ip
        $IPM -A IP_UP -s $NET.$n -j MARK --set-mark 0x$var$ip
    else
        connlmt $NET.$n $2 $3
    fi
n=$((n+1))
done

}

port_first() {
logger -t "【QOS】" "端口优先1, $2"
$IPM -I DOWN -p $1 -m multiport --dports $2 -j RETURN
$IPM -I UP -p $1 -m multiport --sports $2 -j RETURN

}

if [ "$qoss" = "1" ] && [ -f "/lib/modules/$(uname -r)/kernel/net/netfilter/xt_IMQ.ko" ] ; then
    if [ $(cat /tmp/qos_state) -eq 1 ] ; then
    logger -t "【QOS】" "正在运行"
    exit
    else
    echo 1 >/tmp/qos_state
    fi
    logger -t "【QOS】" "启动 QOS 成功"
    echo 1 >/tmp/qoss_state
    load_var
    load_modules
    qos_stop
    qos_start
    while read line
    do
    c_line=`echo $line |grep -v "#"`
    if [ ! -z "$c_line" ] ; then
        ip_limit $line
    fi
    done < /tmp/qos_ip_limit_DOMAIN.txt
   
    while read line
    do
    c_line=`echo $line |grep -v "#"`
    if [ ! -z "$c_line" ] ; then
        line="$line 4 5 6"
        ip_limit $line
    fi
    done < /tmp/qos_connlmt_DOMAIN.txt
   
    while read line
    do
    c_line=`echo $line |grep -v "#"`
    if [ ! -z "$c_line" ] ; then
        port_first $line
    fi
    done < /tmp/qos_port_first_DOMAIN.txt
    if [ ! -f /tmp/qos_scheduler.lock ] ; then
        /tmp/qos_scheduler.sh $qosb &
    fi
    echo 0 >/tmp/qos_state
else
    logger -t "【QOS】" "QOS 没有开启或闪存不足缺模块"
    echo 0 >/tmp/qoss_state
    ip link set imq0 down
    ip link set imq1 down
fi

logger -t "【防火墙规则】" "脚本完成"

我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2018-6-16 14:05 来自手机 | 显示全部楼层
谢谢你!!!@drlifeng
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-4-20 03:45

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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

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