LINUX.ORG.RU
решено ФорумAdmin

Шейпер режит скорость до 30 хотя я задаю до 80...


1

1

Вот отладка скрипта при запуске, делиться это всё где-то на 1500 абонов по 30,60,80мбит, помогите пожалуйста иправить ошибки...

+ /sbin/tc qdisc add dev eth1 root handle 1: htb default 250
+ /sbin/tc qdisc add dev eth0 root handle 1: htb default 250
+ /sbin/tc class add dev eth1 parent 1: classid 1:1 htb rate 1000000Kbit
+ /sbin/tc class add dev eth0 parent 1: classid 1:1 htb rate 1000000Kbit
+ /sbin/tc class add dev eth1 parent 1:1 classid 1:250 htb rate 25000Kbit ceil 100000Kbit prio 1 quantum 15365
+ /sbin/tc qdisc add dev eth1 parent 1:250 handle 250: sfq perturb 10
+ /sbin/tc class add dev eth0 parent 1:1 classid 1:250 htb rate 25000Kbit ceil 100000Kbit prio 1 quantum 15365
+ /sbin/tc qdisc add dev eth0 parent 1:250 handle 250: sfq perturb 10
+ /bin/cat /home/cli_nets.lst
+ /bin/sed -r 's/192\.168\.([0-9]{1,2}).{1,}/\1/'
+ read seg
+ /sbin/tc filter add dev eth1 parent 1: prio 5 handle 2: protocol ip u32 divisor 256
+ /sbin/tc filter add dev eth1 parent 1: protocol ip u32 ht 800:: match ip dst 192.168.2.0/24 hashkey mask 0x000000ff at 16 link 2:
...
+ read seg
+ /bin/cat /home/unlimit.dat
+ read ip speed
$ECHO ${ip} | $SED -r 's/192\.168\.([0-9]{1,2}).{1,}/\1/'
++ /bin/echo 192.168.2.11
++ /bin/sed -r 's/192\.168\.([0-9]{1,2}).{1,}/\1/'
+ local THREEOC=2
$PRINTF '%x\n' ${THREEOC}
++ /usr/bin/printf '%x\n' 2
+ local THREEOCHEX=2
$ECHO ${ip} | $SED -r 's/192\.168\.[0-9]{1,2}.([0-9]{1,3})/\1/'
++ /bin/echo 192.168.2.11
++ /bin/sed -r 's/192\.168\.[0-9]{1,2}.([0-9]{1,3})/\1/'
+ local FOUROC=11
$PRINTF '%x\n' ${FOUROC}
++ /usr/bin/printf '%x\n' 11
+ local FOUROCHEX=b
$PRINTF '%x\n' ${THREEOC}${FOUROC}
++ /usr/bin/printf '%x\n' 211
+ local ID=d3
+ speedrate=20000
+ /sbin/tc class add dev eth1 parent 1:1 classid 1:d3 htb rate 20000Kbit ceil 80000Kbit prio 5 quantum 15365
+ /sbin/tc qdisc add dev eth1 parent 1:d3 handle d3: sfq perturb 10
+ /sbin/tc filter add dev eth1 protocol ip prio 5 u32 ht 2:b: match ip dst 192.168.2.11/32 flowid 1:d3
+ /sbin/tc class add dev eth0 parent 1:1 classid 1:d3 htb rate 20000Kbit ceil 80000Kbit prio 5 quantum 15365
+ /sbin/tc qdisc add dev eth0 parent 1:d3 handle d3: sfq perturb 10
+ /sbin/tc filter add dev eth0 protocol ip prio 5 u32 ht 2:b: match ip src 192.168.2.11/32 flowid 1:d3
...


Последнее исправление: THEDECAL (всего исправлений: 1)

В шейпере не разбираюсь хорошо, но для себя использую что-то такое:

WAN_FACE="eth0.1201"

SR="6144kbit"
BR="16Mbit"
LR="35Mbit"

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F -t mangle
iptables -F -t nat
iptables -X
iptables -Z

tc qdisc del dev $WAN_FACE root
tc qdisc add dev $WAN_FACE root handle 1: htb r2q 625

#---------------------------------------------------------------------
iptables -t mangle -A POSTROUTING -d 172.16.0.2 -j CLASSIFY --set-class 1:1002
iptables -t mangle -A POSTROUTING -s 172.16.0.2 -j CLASSIFY --set-class 1:3002

tc qdisc del dev eth0.2 root
tc qdisc add dev eth0.2 root handle 1: htb r2q 625
tc class add dev eth0.2 parent 1: classid 1:1002 htb rate $LR
tc qdisc add dev eth0.2 parent 1:1002 handle 1002: sfq perturb 10
tc class add dev $WAN_FACE parent 1: classid 1:3002 htb rate $LR
tc qdisc add dev $WAN_FACE parent 1:3002 handle 3002: sfq perturb 10
#---------------------------------------------------------------------

iptables -t mangle -A POSTROUTING -d 172.16.0.10 -j CLASSIFY --set-class 1:1010
iptables -t mangle -A POSTROUTING -s 172.16.0.10 -j CLASSIFY --set-class 1:3010

tc qdisc del dev eth0.10 root
tc qdisc add dev eth0.10 root handle 1: htb r2q 625
tc class add dev eth0.10 parent 1: classid 1:1010 htb rate $LR
tc qdisc add dev eth0.10 parent 1:1010 handle 1010: sfq perturb 10
tc class add dev $WAN_FACE parent 1: classid 1:3010 htb rate $LR
tc qdisc add dev $WAN_FACE parent 1:3010 handle 3010: sfq perturb 10
Думаю идея понятна.

maxt_t
()
Ответ на: комментарий от maxt_t

А этот способ попроще, здесь и ipset можно использовать, большое спасибо попробую...

THEDECAL
() автор топика

Всем спасибо, кто помог, но история имела другой поворот, оказывается d-link dgs-3120-24sc, так как и другие ниже модели, имеют косяк с принудительной уставкой скорости, дуплекса на порту, на гиговом, сотковым порту, уставив 100,10,half,full, скорость ни реально падает... Поэтому будьте бдительными!

THEDECAL
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.