Нет ограничения входящей скорости vpn

Установка, настройка, поддержка
Ответить
nelgondar
Сообщения: 16
Зарегистрирован: Сб дек 04, 2010 6:58 am

Нет ограничения входящей скорости vpn

Сообщение nelgondar »

Добрый день! Пытаюсь шейперить согласно скрипту, написанному ran

Код: Выделить всё

#!/bin/sh 

TC="/sbin/tc" 
TCQA="$TC qdisc add dev $IFNAME" 
TCQD="$TC qdisc del dev $IFNAME" 

$TCQD root &>/dev/null 
$TCQD ingress &>/dev/null 

$TCQA root handle 1: htb 
$TCQA handle ffff: ingress 

/usr/abills/libexec/linkupdown ipn up $IFNAME $PEERNAME $IPREMOTE OS=Linux
В моем случае почему-то ограничение распространяется только на исходящую скорость. Вот выводы команд, которые просил ran в соответствующей теме

Код: Выделить всё

root@nelgondar:~# tc -s -d qdisc ls dev ppp1
qdisc pfifo_fast 0: root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 20912190 bytes 17380 pkt (dropped 156, overlimits 0 requeues 106) 
 rate 0bit 0pps backlog 0b 0p requeues 106 
qdisc ingress ffff: parent ffff:fff1 ---------------- 
 Sent 3825878 bytes 11840 pkt (dropped 338, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 

root@nelgondar:~#  tc -s -d class ls dev ppp1

root@nelgondar:~# tc -s -d filter ls dev ppp1 parent 1:

root@nelgondar:~# tc -s -d filter ls dev ppp1 parent ffff:
filter protocol ip pref 2096 u32 
filter protocol ip pref 2096 u32 fh 800: ht divisor 1 
filter protocol ip pref 2096 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 1:  (rule hit 11876 success 11850)
  match 0a000030/ffffffff at 12 (success 11850 ) 
  match 00000000/00000000 at 16 (success 11850 ) 
 police 0xe rate 5000Kbit burst 12Kb mtu 2Kb action drop overhead 0b 
ref 1 bind 1

 Sent 3832175 bytes 11850 pkts (dropped 338, overlimits 338) 
Помогите пожалуйста, перепробовал кучу скриптов шейпера. Но такого серьезного понимания пока нет. Ведь легче разобраться когда работает

Vasiok
Сообщения: 4
Зарегистрирован: Вт фев 22, 2011 5:20 am

Re: Нет ограничения входящей скорости vpn

Сообщение Vasiok »

ip-up.local

#!/bin/sh
#ABillS %DATE% %TIME%
#
# When the ppp link comes up, this script is called with the following
# parameters
# $1 the interface name used by pppd (e.g. ppp3)
# $2 the tty device name
# $3 the tty device speed
# $4 the local IP address for the interface
# $5 the remote IP address
# $6 the parameter specified by the 'ipparam' option to pppd
#

AWK=/usr/bin/awk;

debug=0;

if [ -f /var/run/radattr.$1 ]
then
DOWNSPEED=`${AWK} '/PPPD-Downstream-Speed-Limit/ {print $2}' /var/run/radattr.$1`
UPSPEED=`${AWK} '/PPPD-Upstream-Speed-Limit/ {print $2}' /var/run/radattr.$1`
FILTERS=`${AWK} '/Filter-Id/ {print $2}' /var/run/radattr.$1`

if [ w${debug} = w1 ] ; then
echo "Debug mode"
echo $DOWNSPEED
echo $UPSPEED
echo $FILTERS
fi;

/sbin/tc qdisc del dev $1 root > /dev/null
/sbin/tc qdisc del dev $1 ingress > /dev/null

##### speed server->client
if [ "$UPSPEED" != "0" ] ; then
/sbin/tc qdisc add dev $1 root handle 1: htb default 20 r2q 1
/sbin/tc class add dev $1 parent 1: classid 1:1 htb rate ${UPSPEED}kbit burst 4k
/sbin/tc class add dev $1 parent 1:1 classid 1:10 htb rate ${UPSPEED}kbit burst 4k prio 1
/sbin/tc class add dev $1 parent 1:1 classid 1:20 htb rate ${UPSPEED}kbit burst 4k prio 2
/sbin/tc qdisc add dev $1 parent 1:10 handle 10: sfq perturb 10 quantum 1500
/sbin/tc qdisc add dev $1 parent 1:20 handle 20: sfq perturb 10 quantum 1500
/sbin/tc filter add dev $1 parent 1:0 protocol ip prio 10 u32 match ip tos 0x10 0xff flowid 1:10
/sbin/tc filter add dev $1 parent 1:0 protocol ip prio 10 u32 match ip protocol 1 0xff flowid 1:10

# /sbin/tc filter add dev $1 parent 1: protocol ip prio 10 u32 match ip protocol 6 0xff match u8 0x05 0x0f at 0 match u160x0000 0xffc0 at 2 match u8 0x10 0xff at 33 flowid 1:10
fi ;

##### speed client->server
if [ "$DOWNSPEED" != "0" ] ; then
/sbin/tc qdisc add dev $1 handle ffff: ingress
/sbin/tc filter add dev $1 parent ffff: protocol ip prio 50 u32 match ip src 0.0.0.0/0 police rate ${DOWNSPEED}kbit burst 12k drop flowid :1
fi;

#### Filters
if [ w${FILTERS} != w ] ; then
#Put there filters rule
echo "Filter: ${FILTERS}"
fi;

fi;

еще можно почитать здесь http://wiki.bgbilling.ru/index.php/%D0% ... LINUX_PPPD

nelgondar
Сообщения: 16
Зарегистрирован: Сб дек 04, 2010 6:58 am

Re: Нет ограничения входящей скорости vpn

Сообщение nelgondar »

Странно. Не передается параметр PPPD-Downstream-Speed-Limit . Привожу текст /var/run/radattr.ppp1

Код: Выделить всё

cat /var/run/radattr.ppp1 
Session-Timeout 954273
User-Name pavel
Framed-IP-Address 10.0.0.4
Framed-IP-Netmask 255.255.255.255
MS-CHAP2-Success \236S=87478DC4D2A1C9870FEB6899EDA576C32D8C89A2
MS-MPPE-Recv-Key \241\211"\337\031=D|B\302[[\252\206~\214\214h\277\363\207\271]\217;^\246/\224\003\303\317D.
MS-MPPE-Send-Key \251_'\263F\016vY\223'kF3={\274n\355S\273\373\325\004\017\340\340\306\027lO\274\340\346\307
MS-MPPE-Encryption-Policy 
MS-MPPE-Encryption-Types 
А раньше вроде бы был. Где я мог напортачить?
Vasiok, Вам спасибо большое, непременно попробую ваш скрипт, только бы с параметрами в radattr разобраться

nelgondar
Сообщения: 16
Зарегистрирован: Сб дек 04, 2010 6:58 am

Re: Нет ограничения входящей скорости vpn

Сообщение nelgondar »

Виноват, тариф пересоздал, опции появились. Наверно в прошлый раз где-то отработали кривые руки)) Все работает, спасибо

Ответить