#!/bin/sh
###使用 ./car-test-wan0.sh 10 1024 10 1024
###$1为上行保证带宽,$2为上行最大带宽 单位kib 1024kbit = 1024bps = 1Mb
###S3为下行保证带宽,$4为下行最大带宽
##############################关闭QOS############################
/etc/init.d/qos stop
##############################加载###############################
rmmod ifb
insmod ifb numifbs=4
insmod sch_fq_codel
insmod sch_hfsc
insmod sch_ingress
insmod cls_u32
insmod em_u32
insmod act_connmark
insmod act_mirred
insmod cls_fw
##############################判断###############################
if [ "$#" -eq "4" ];then
############################# 上行 ##############################
ifconfig ifb2 up
tc qdisc add dev ifb2 root handle 1:0 hfsc default 10
#最大1G
tc class add dev ifb2 parent 1:0 classid 1:1 hfsc sc rate 500kbit ul rate 1048576kbit
#设置传递的参数
tc class add dev ifb2 parent 1:1 classid 1:10 hfsc sc rate "$1"kbit ul rate "$2"kbit
############################# 下行 ##############################
ifconfig ifb3 up
tc qdisc add dev ifb3 root handle 1: hfsc default 10
#最大1G
tc class add dev ifb3 parent 1:0 classid 1:1 hfsc sc rate 500kbit ul rate 1048576kbit
#设置传递的参数
tc class add dev ifb3 parent 1:1 classid 1:10 hfsc sc rate "$3"kbit ul rate "$4"kbit
############# wan0 #########################
tc qdisc add dev wan0 handle ffff: ingress
tc filter add dev wan0 parent ffff: protocol all u32 match u32 0 0 flowid 10:10 action mirred egress redirect dev ifb2
tc qdisc add dev wan0 root handle 1: fq_codel
tc filter add dev wan0 parent 1: protocol all u32 match u32 0 0 flowid 10:10 action mirred egress redirect dev ifb3
else
echo "You provided $# parameters,but 4 are required."
fi
wan0口限速
最新推荐文章于 2023-06-30 21:51:50 发布