Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- SCH="fq_codel quantum 300 limit 1000 noecn"
- WAN=ppp0
- tc qdisc del dev $WAN root 2>/dev/null
- tc qdisc del dev $WAN ingress 2>/dev/null
- tc qdisc del dev br0 root 2>/dev/null
- tc qdisc del dev br0 ingress 2>/dev/null
- TQAU="tc qdisc add dev $WAN"
- TCAU="tc class add dev $WAN"
- TFAU="tc filter add dev $WAN"
- TQA="tc qdisc add dev br0"
- TCA="tc class add dev br0"
- TFA="tc filter add dev br0"
- start()
- {
- $TQA root handle 1: htb
- $TCA parent 1: classid 1:1 htb rate 10240000kbit
- $TQAU root handle 2: htb
- $TCAU parent 2: classid 2:1 htb rate 10240000kbit
- $TCA parent 1:1 classid 1:9 htb rate 10240000kbit ceil 10240000kbit prio 1
- $TQA parent 1:9 handle 9: $SCH
- $TFA parent 1: prio 1 protocol ip handle 9 fw flowid 1:9
- $TCAU parent 2:1 classid 2:9 htb rate 10240000kbit ceil 10240000kbit pri o 1
- $TQAU parent 2:9 handle 9: $SCH
- $TFAU parent 2: prio 1 protocol ip handle 9 fw flowid 2:9
- $TCA parent 1:1 classid 1:30 htb rate 5120kbit ceil 5120kbit prio 30
- $TQA parent 1:30 handle 30: $SCH
- $TFA parent 1: protocol ip prio 30 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0x2FCF54F9 0xFFFFFFFF at -12 match u16 0x4890 0xFFFF at -14 flowid 1:30
- $TCAU parent 2:1 classid 2:30 htb rate 307.2kbit ceil 307.2kbit prio 30
- $TQAU parent 2:30 handle 30: $SCH
- $TFAU parent 2: prio 30 protocol ip handle 30 fw flowid 2:30
- $TCA parent 1:1 classid 1:31 htb rate 3072kbit ceil 3072kbit prio 31
- $TQA parent 1:31 handle 31: $SCH
- $TFA parent 1: prio 31 protocol ip handle 31 fw flowid 1:31
- $TCAU parent 2:1 classid 2:31 htb rate 307.2kbit ceil 307.2kbit prio 31
- $TQAU parent 2:31 handle 31: $SCH
- $TFAU parent 2: prio 31 protocol ip handle 31 fw flowid 2:31
- $TCA parent 1:1 classid 1:32 htb rate 3072kbit ceil 3072kbit prio 32
- $TQA parent 1:32 handle 32: $SCH
- $TFA parent 1: protocol ip prio 32 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0xA2F810F5 0xFFFFFFFF at -12 match u16 0xCC9E 0xFFFF at -14 flowid 1:32
- $TCAU parent 2:1 classid 2:32 htb rate 307.2kbit ceil 307.2kbit prio 32
- $TQAU parent 2:32 handle 32: $SCH
- $TFAU parent 2: prio 32 protocol ip handle 32 fw flowid 2:32
- $TCA parent 1:1 classid 1:33 htb rate 3072kbit ceil 3072kbit prio 33
- $TQA parent 1:33 handle 33: $SCH
- $TFA parent 1: protocol ip prio 33 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0xD7C4C769 0xFFFFFFFF at -12 match u16 0xE43E 0xFFFF at -14 flowid 1:33
- $TCAU parent 2:1 classid 2:33 htb rate 307.2kbit ceil 307.2kbit prio 33
- $TQAU parent 2:33 handle 33: $SCH
- $TFAU parent 2: prio 33 protocol ip handle 33 fw flowid 2:33
- $TCA parent 1:1 classid 1:34 htb rate 3072kbit ceil 3072kbit prio 34
- $TQA parent 1:34 handle 34: $SCH
- $TFA parent 1: prio 34 protocol ip handle 34 fw flowid 1:34
- $TCAU parent 2:1 classid 2:34 htb rate 307.2kbit ceil 307.2kbit prio 34
- $TQAU parent 2:34 handle 34: $SCH
- $TFAU parent 2: prio 34 protocol ip handle 34 fw flowid 2:34
- $TCA parent 1:1 classid 1:35 htb rate 3072kbit ceil 3072kbit prio 35
- $TQA parent 1:35 handle 35: $SCH
- $TFA parent 1: prio 35 protocol ip handle 35 fw flowid 1:35
- $TCAU parent 2:1 classid 2:35 htb rate 307.2kbit ceil 307.2kbit prio 35
- $TQAU parent 2:35 handle 35: $SCH
- $TFAU parent 2: prio 35 protocol ip handle 35 fw flowid 2:35
- $TCA parent 1:1 classid 1:36 htb rate 3072kbit ceil 3072kbit prio 36
- $TQA parent 1:36 handle 36: $SCH
- $TFA parent 1: protocol ip prio 36 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0xA08E0A46 0xFFFFFFFF at -12 match u16 0x8461 0xFFFF at -14 flowid 1:36
- $TCAU parent 2:1 classid 2:36 htb rate 307.2kbit ceil 307.2kbit prio 36
- $TQAU parent 2:36 handle 36: $SCH
- $TFAU parent 2: prio 36 protocol ip handle 36 fw flowid 2:36
- $TCA parent 1:1 classid 1:37 htb rate 5120kbit ceil 5120kbit prio 37
- $TQA parent 1:37 handle 37: $SCH
- $TFA parent 1: protocol ip prio 37 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0x1A6D64E2 0xFFFFFFFF at -12 match u16 0x34DE 0xFFFF at -14 flowid 1:37
- $TCAU parent 2:1 classid 2:37 htb rate 307.2kbit ceil 307.2kbit prio 37
- $TQAU parent 2:37 handle 37: $SCH
- $TFAU parent 2: prio 37 protocol ip handle 37 fw flowid 2:37
- $TCA parent 1:1 classid 1:38 htb rate 5120kbit ceil 5120kbit prio 38
- $TQA parent 1:38 handle 38: $SCH
- $TFA parent 1: prio 38 protocol ip handle 38 fw flowid 1:38
- $TCAU parent 2:1 classid 2:38 htb rate 307.2kbit ceil 307.2kbit prio 38
- $TQAU parent 2:38 handle 38: $SCH
- $TFAU parent 2: prio 38 protocol ip handle 38 fw flowid 2:38
- $TCA parent 1:1 classid 1:39 htb rate 3072kbit ceil 3072kbit prio 39
- $TQA parent 1:39 handle 39: $SCH
- $TFA parent 1: protocol ip prio 39 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0xD970C52A 0xFFFFFFFF at -12 match u16 0x30C3 0xFFFF at -14 flowid 1:39
- $TCAU parent 2:1 classid 2:39 htb rate 307.2kbit ceil 307.2kbit prio 39
- $TQAU parent 2:39 handle 39: $SCH
- $TFAU parent 2: prio 39 protocol ip handle 39 fw flowid 2:39
- $TCA parent 1:1 classid 1:40 htb rate 5120kbit ceil 5120kbit prio 40
- $TQA parent 1:40 handle 40: $SCH
- $TFA parent 1: protocol ip prio 40 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0x659DDFE8 0xFFFFFFFF at -12 match u16 0x1C6F 0xFFFF at -14 flowid 1:40
- $TCAU parent 2:1 classid 2:40 htb rate 307.2kbit ceil 307.2kbit prio 40
- $TQAU parent 2:40 handle 40: $SCH
- $TFAU parent 2: prio 40 protocol ip handle 40 fw flowid 2:40
- $TCA parent 1:1 classid 1:41 htb rate 5120kbit ceil 5120kbit prio 41
- $TQA parent 1:41 handle 41: $SCH
- $TFA parent 1: protocol ip prio 41 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0x6872FD90 0xFFFFFFFF at -12 match u16 0xB0CA 0xFFFF at -14 flowid 1:41
- $TCAU parent 2:1 classid 2:41 htb rate 307.2kbit ceil 307.2kbit prio 41
- $TQAU parent 2:41 handle 41: $SCH
- $TFAU parent 2: prio 41 protocol ip handle 41 fw flowid 2:41
- $TCA parent 1:1 classid 1:42 htb rate 5120kbit ceil 5120kbit prio 42
- $TQA parent 1:42 handle 42: $SCH
- $TFA parent 1: prio 42 protocol ip handle 42 fw flowid 1:42
- $TCAU parent 2:1 classid 2:42 htb rate 307.2kbit ceil 307.2kbit prio 42
- $TQAU parent 2:42 handle 42: $SCH
- $TFAU parent 2: prio 42 protocol ip handle 42 fw flowid 2:42
- $TCA parent 1:1 classid 1:43 htb rate 3072kbit ceil 3072kbit prio 43
- $TQA parent 1:43 handle 43: $SCH
- $TFA parent 1: prio 43 protocol ip handle 43 fw flowid 1:43
- $TCAU parent 2:1 classid 2:43 htb rate 307.2kbit ceil 307.2kbit prio 43
- $TQAU parent 2:43 handle 43: $SCH
- $TFAU parent 2: prio 43 protocol ip handle 43 fw flowid 2:43
- $TCA parent 1:1 classid 1:44 htb rate 3072kbit ceil 3072kbit prio 44
- $TQA parent 1:44 handle 44: $SCH
- $TFA parent 1: protocol ip prio 44 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0x168CAE90 0xFFFFFFFF at -12 match u16 0xCE49 0xFFFF at -14 flowid 1:44
- $TCAU parent 2:1 classid 2:44 htb rate 307.2kbit ceil 307.2kbit prio 44
- $TQAU parent 2:44 handle 44: $SCH
- $TFAU parent 2: prio 44 protocol ip handle 44 fw flowid 2:44
- $TCA parent 1:1 classid 1:45 htb rate 3072kbit ceil 3072kbit prio 45
- $TQA parent 1:45 handle 45: $SCH
- $TFA parent 1: protocol ip prio 45 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0x5D009549 0xFFFFFFFF at -12 match u16 0x0015 0xFFFF at -14 flowid 1:45
- $TCAU parent 2:1 classid 2:45 htb rate 307.2kbit ceil 307.2kbit prio 45
- $TQAU parent 2:45 handle 45: $SCH
- $TFAU parent 2: prio 45 protocol ip handle 45 fw flowid 2:45
- $TCA parent 1:1 classid 1:46 htb rate 3072kbit ceil 3072kbit prio 46
- $TQA parent 1:46 handle 46: $SCH
- $TFA parent 1: protocol ip prio 46 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0xEF2D0C57 0xFFFFFFFF at -12 match u16 0xBC9F 0xFFFF at -14 flowid 1:46
- $TCAU parent 2:1 classid 2:46 htb rate 307.2kbit ceil 307.2kbit prio 46
- $TQAU parent 2:46 handle 46: $SCH
- $TFAU parent 2: prio 46 protocol ip handle 46 fw flowid 2:46
- $TCA parent 1:1 classid 1:47 htb rate 1024kbit ceil 1024kbit prio 47
- $TQA parent 1:47 handle 47: $SCH
- $TFA parent 1: prio 47 protocol ip handle 47 fw flowid 1:47
- $TCAU parent 2:1 classid 2:47 htb rate 102.4kbit ceil 102.4kbit prio 47
- $TQAU parent 2:47 handle 47: $SCH
- $TFAU parent 2: prio 47 protocol ip handle 47 fw flowid 2:47
- $TCA parent 1:1 classid 1:48 htb rate 3072kbit ceil 3072kbit prio 48
- $TQA parent 1:48 handle 48: $SCH
- $TFA parent 1: protocol ip prio 48 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0xF8FA77CC 0xFFFFFFFF at -12 match u16 0x6CAD 0xFFFF at -14 flowid 1:48
- $TCAU parent 2:1 classid 2:48 htb rate 307.2kbit ceil 307.2kbit prio 48
- $TQAU parent 2:48 handle 48: $SCH
- $TFAU parent 2: prio 48 protocol ip handle 48 fw flowid 2:48
- $TCA parent 1:1 classid 1:49 htb rate 3072kbit ceil 3072kbit prio 49
- $TQA parent 1:49 handle 49: $SCH
- $TFA parent 1: protocol ip prio 49 u32 match u16 0x0800 0xFFFF at -2 mat ch u32 0xA6DB8A52 0xFFFFFFFF at -12 match u16 0x7AF2 0xFFFF at -14 flowid 1:49
- $TCAU parent 2:1 classid 2:49 htb rate 307.2kbit ceil 307.2kbit prio 49
- $TQAU parent 2:49 handle 49: $SCH
- $TFAU parent 2: prio 49 protocol ip handle 49 fw flowid 2:49
- }
- stop()
- {
- #ebtables -t nat -F
- tc qdisc del dev $WAN root 2>/dev/null
- tc qdisc del dev br0 root 2>/dev/null
- }
- show()
- {
- tc -s -d class ls dev $WAN
- tc -s -d class ls dev br0
- }
- if [ $# != 1 ]; then
- echo "Usage: $0 start/stop/restart"
- else
- if [ $1 = "start" ]; then
- start
- elif [ $1 = "stop" ]; then
- stop
- elif [ $1 = "restart" ]; then
- stop
- start
- fi
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement