LINUX.ORG.RU
ФорумAdmin

вопрос про шейпер

 


1

1

Хочу сделать простейший шейпер: Канал у меня 2мегабита(adsl)

BAND="2Mbit"
HIGH_LIMIT="1Mbit"
MAIN_IFACE="enp5s0"

# delete all rules
tc qdisc del dev enp5s0 root

tc qdisc add dev ${MAIN_IFACE} root handle 1: hfsc default 11

# Internet traffic (full MAXIMUM speed)
tc class add dev ${MAIN_IFACE} parent 1:0 classid 1:1 hfsc sc rate ${BAND} ul rate ${BAND}
# Subclasses of Internet traffic
tc class add dev ${MAIN_IFACE} parent 1:1 classid 1:10 hfsc rt rate 1Mbit ls rate ${HIGH_LIMIT}
tc class add dev ${MAIN_IFACE} parent 1:1 classid 1:11 hfsc ls rate 1Mbit

Потом маркирую пакеты:

$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 443 -j MARK --set-mark 0x1
$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 443 -j RETURN

$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 80 -j MARK --set-mark 0x1
$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 80 -j RETURN

$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 22 -j MARK --set-mark 0x1
$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 22 -j RETURN

$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 10000:65535 -j MARK --set-mark 0x2
$IPTABLES -t mangle -A PREROUTING -p tcp -m tcp --sport 10000:65535 -j RETURN

80, 22, 443 порт маркируется как приоритетный, а с 10000-65535 - Maximum-Cost. Но дело в том, что всё это как мне кажется нифига не работает т.е рторрент начинает качать и браузером невозможно пользоваться - все висит и ничего не работает. Что я делаю не правильно ?

★★★★

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

классы ты создал, а кто в них пакеты запихивать будет ?

Если ты используешь iptables, то одного MARK мало т.к. он никак не связан с классами. Если в POSTROUTING запихнуть что-то типа

iptables -t mangle -A POSTROUTING -m mark --mark 1 -j CLASSIFY --set-class 1:10
iptables -t mangle -A POSTROUTING -m mark --mark 2 -j CLASSIFY --set-class 1:11
то тогда оно заработает.

tc -s class show dev XXX в том числе показывает сколько пакетов попало в класс. Если там 0, значит что-то не так.

vel ★★★★★
()
Ответ на: комментарий от vel
Chain POSTROUTING (policy ACCEPT 22036 packets, 1560K bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 CLASSIFY   all  --  *      *       0.0.0.0/0            0.0.0.0/0            mark match 0x1 CLASSIFY set 1:10
    0     0 CLASSIFY   all  --  *      *       0.0.0.0/0            0.0.0.0/0            mark match 0x2 CLASSIFY set 1:11

неа, не находит он не одного пакета

bryak ★★★★
() автор топика
Ответ на: комментарий от vel
┌─[mybox]─[/home/user]
└──╼ iptables -L -t mangle -v -n                                                                                                       
Chain PREROUTING (policy ACCEPT 20617 packets, 21M bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp flags:0x16/0x02
    0     0 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp flags:0x16/0x02 MARK set 0x1
  615  323K MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:443 MARK set 0x1
  615  323K RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:443
 1889  205K MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 MARK set 0x1
 1889  205K RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80
    0     0 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:22 MARK set 0x1
    0     0 RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:22
15132   18M MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spts:10000:65535 MARK set 0x2
15131   18M RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spts:10000:65535
Chain INPUT (policy ACCEPT 20617 packets, 21M bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 22026 packets, 1559K bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain POSTROUTING (policy ACCEPT 22036 packets, 1560K bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 CLASSIFY   all  --  *      *       0.0.0.0/0            0.0.0.0/0            mark match 0x1 CLASSIFY set 1:10
    0     0 CLASSIFY   all  --  *      *       0.0.0.0/0            0.0.0.0/0            mark match 0x2 CLASSIFY set 1:11
bryak ★★★★
() автор топика
Ответ на: комментарий от bryak

есть еще вариант:

$IPTABLES -t mangle -A POSTROUTING -p TCP --sport 80 -j CLASSIFY --set-class 1:10
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 80 -j CLASSIFY --set-class 1:10

$IPTABLES -t mangle -A POSTROUTING -p TCP --sport 443 -j CLASSIFY --set-class 1:10
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 443 -j CLASSIFY --set-class 1:10

$IPTABLES -t mangle -A POSTROUTING -p TCP --sport 10000:65535 -j CLASSIFY --set-class 1:10
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 10000:65535 -j CLASSIFY --set-class 1:10
вот так конечно же их классифицирует
┌─[mybox]─[/home/user]
└──╼ iptables -L -t mangle -v -n
Chain PREROUTING (policy ACCEPT 4534 packets, 4660K bytes)
 pkts bytes target     prot opt in     out     source               destination         
   35  2192 RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80
    0     0 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 MARK set 0x1
   92 58038 RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:443
    0     0 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:443 MARK set 0x1
    0     0 RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp flags:0x16/0x02
    0     0 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp flags:0x16/0x02 MARK set 0x1
 4072 4520K MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spts:10000:65535 MARK set 0x2
 4072 4520K RETURN     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spts:10000:65535
Chain INPUT (policy ACCEPT 4534 packets, 4660K bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 3685 packets, 225K bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain POSTROUTING (policy ACCEPT 3685 packets, 225K bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 CLASSIFY set 1:10
   49  2313 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80 CLASSIFY set 1:10
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:443 CLASSIFY set 1:10
   91 16053 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443 CLASSIFY set 1:10
 3237  168K CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spts:10000:65535 CLASSIFY set 1:10
 3017  142K CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpts:10000:65535 CLASSIFY set 1:10
специально поставил 1:10, чтобы посмотреть прилетают они туда или нет. Оказывается нет)))
Every 1.0s: tc -s class show dev enp5s0                                                                                                                                                  Sun Oct  5 19:39:49 2014
class hfsc 1: root
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
 period 0 level 2
class hfsc 1:11 parent 1:1 ls m1 0bit d 0us m2 1000Kbit
 Sent 873718 bytes 11564 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
 period 9692 work 873718 bytes level 0
class hfsc 1:1 parent 1: sc m1 0bit d 0us m2 2000Kbit ul m1 0bit d 0us m2 2000Kbit
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
 period 9692 work 873718 bytes level 1
class hfsc 1:10 parent 1:1 sc m1 0bit d 0us m2 1000Kbit
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
 period 0 level 0

bryak ★★★★
() автор топика
Ответ на: комментарий от bryak

Забавно. В 1:11 оно попадает как в дефолтный класс, а в 1:10 не хочет совсем.

А ты фильтры через tc не задавал ?

Ощущение, что кто-то переклассифицирует пакеты или чего-то нехватает.

hfsc - достаточно специфическая дисциплина. Если скорости невысокие, то для ограничения скорости лучше брать sfq которая шейпер, а не полисер как hfsc.

Много лет использую htb.init-0.85 для создания классов и очередей, а классифицирую через iptables.

для простых фильтров типа твоих, все можно описать через htb.init без iptables.

vel ★★★★★
()
Ответ на: комментарий от vel
┌─[mybox]─[/etc/htb]
└──╼ ls /etc/htb/
enp5s0  enp5s0-2:10.www  enp5s0-2:99.dfl  enp5s0-2.root  old
┌─[mybox]─[/etc/htb]
└──╼ cat enp5s0
# eth0 device
DEFAULT=99
R2Q=100
┌─[mybox]─[/etc/htb]
└──╼ cat enp5s0-2.root 
# root class containing total bandwidth
RATE=2Mbit
CEIL=2Mbit
BURST=1Mbit
┌─[mybox]─[/etc/htb]
└──╼ cat enp5s0-2:10.www
# class for WWW traffic
RATE=128Kbit
CEIL=2Mbit
PRIO=1
RULE=*:80
LEAF=sfq
┌─[mybox]─[/etc/htb]
└──╼ cat enp5s0-2:99.dfl
# class for all other traffic
RATE=128Kbit
CEIL=2Mbit
PRIO=7
LEAF=sfq
┌─[mybox]─[/etc/htb]
└──╼ htb.init compile && /etc/init.d/htbinit restart
/sbin/tc qdisc del dev enp5s0 root
/sbin/tc qdisc add dev enp5s0 root handle 1 htb default 99 r2q 100
/sbin/tc class add dev enp5s0 parent 1: classid 1:2 htb rate 2Mbit ceil 2Mbit burst 1Mbit
/sbin/tc class add dev enp5s0 parent 1:2 classid 1:10 htb rate 128Kbit ceil 2Mbit prio 1
/sbin/tc qdisc add dev enp5s0 parent 1:10 handle 10 sfq perturb 10
/sbin/tc filter add dev enp5s0 parent 1:0 protocol ip prio 100 u32 match ip dport 80 0xffff classid 1:10
/sbin/tc class add dev enp5s0 parent 1:2 classid 1:99 htb rate 128Kbit ceil 2Mbit prio 7
/sbin/tc qdisc add dev enp5s0 parent 1:99 handle 99 sfq perturb 10
 * Stopping htbinit ...                                                                                                          [ ok ]
 * Starting htbinit ...                                                                                                          [ ok ]

результат:

┌─[mybox]─[/home/user]
└──╼ tc -s class show dev enp5s0
class htb 1:99 parent 1:2 leaf 99: prio 7 rate 128000bit ceil 2000Kbit burst 1600b cburst 1600b 
 Sent 618893 bytes 7282 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 6529 borrowed: 753 giants: 0
 tokens: 1501953 ctokens: 96125
class htb 1:10 parent 1:2 leaf 10: prio 1 rate 128000bit ceil 2000Kbit burst 1600b cburst 1600b 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 0 borrowed: 0 giants: 0
 tokens: 1562500 ctokens: 100000
class htb 1:2 root rate 2000Kbit ceil 2000Kbit burst 128Kb cburst 1600b 
 Sent 618893 bytes 7282 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 753 borrowed: 0 giants: 0
 tokens: 8188125 ctokens: 96125

Не ходит, бле в 1:10 Пробую уже так:

$IPTABLES -t mangle -A POSTROUTING -p TCP --sport 80 -j CLASSIFY --set-class 1:10
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 80 -j CLASSIFY --set-class 1:10

$IPTABLES -t mangle -A POSTROUTING -p TCP --sport 10000:65535 -j CLASSIFY --set-class 1:99
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 10000:65535 -j CLASSIFY --set-class 1:99

НЕ ХОДИТ ОНО В 1:10. Ходит по дефолту в 1:99 и всё тут :(

bryak ★★★★
() автор топика
Ответ на: комментарий от bryak

4 действия подряд

$IPTABLES -t mangle -A POSTROUTING -p TCP --sport 80 -j CLASSIFY --set-class 1:10
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 80 -j CLASSIFY --set-class 1:10

$IPTABLES -t mangle -A POSTROUTING -p TCP --sport 10000:65535 -j CLASSIFY --set-class 1:99
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 10000:65535 -j CLASSIFY --set-class 1:99

на 95% уверен, что порт со стороны клиента > 10000 ( стандартные настройки диапазона локальных портов 32678-61000) и любой такой пакет попадет в 1:99

Если класс 1:99 дефолтный, то вообще незачем туда пакеты специально пихать - убери действия для портов 10000:65535 или после классификации портов 80 сделай RETURN

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

короче заюзал еще https://github.com/automatthias/hfsc/blob/master/hfsc

┌─[mybox]─[/home/user]
└──╼ iptables -L -v -n -t mangle
Chain PREROUTING (policy ACCEPT 41156 packets, 53M bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain INPUT (policy ACCEPT 41156 packets, 53M bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 26121 packets, 2312K bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain POSTROUTING (policy ACCEPT 26283 packets, 2334K bytes)
 pkts bytes target     prot opt in     out     source               destination         
  187 23927 THESHAPER  all  --  *      enp5s0  0.0.0.0/0            0.0.0.0/0           
Chain THESHAPER (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp flags:0x17/0x10 length 0:64 CLASSIFY set 1:2
    0     0 CLASSIFY   icmp --  *      *       0.0.0.0/0            0.0.0.0/0            length 512:65535 CLASSIFY set 1:4
    0     0 CLASSIFY   icmp --  *      *       0.0.0.0/0            0.0.0.0/0            length 0:512 CLASSIFY set 1:2
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spt:80 CLASSIFY set 1:2
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:80 CLASSIFY set 1:2
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 CLASSIFY set 1:2
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80 CLASSIFY set 1:2
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spt:443 CLASSIFY set 1:2
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:443 CLASSIFY set 1:2
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:443 CLASSIFY set 1:2
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443 CLASSIFY set 1:2
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spt:8080 CLASSIFY set 1:2
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:8080 CLASSIFY set 1:2
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:8080 CLASSIFY set 1:2
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8080 CLASSIFY set 1:2
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spt:5222 CLASSIFY set 1:4
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:5222 CLASSIFY set 1:4
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:5222 CLASSIFY set 1:4
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5222 CLASSIFY set 1:4
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spt:6667 CLASSIFY set 1:4
    0     0 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:6667 CLASSIFY set 1:4
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:6667 CLASSIFY set 1:4
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:6667 CLASSIFY set 1:4
  187 23927 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:10000:65535 CLASSIFY set 1:6
  178 23318 CLASSIFY   udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpts:10000:65535 CLASSIFY set 1:6
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spts:10000:65535 CLASSIFY set 1:6
    0     0 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpts:10000:65535 CLASSIFY set 1:6

по какой-то причине классифицируются только пакеты udp.

bryak ★★★★
() автор топика
Ответ на: комментарий от vel

Хорошо, всё дропнул. Оставил htbinit

$IPTABLES -t mangle -I PREROUTING -p tcp -m tcp --sport 443 -j MARK --set-mark 1

$IPTABLES -t mangle -I PREROUTING -p tcp -m tcp --sport 80 -j MARK --set-mark 1
$IPTABLES -t mangle -I PREROUTING -j RETURN

$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 80 -j CLASSIFY --set-class 1:10
$IPTABLES -t mangle -A POSTROUTING -p TCP --dport 443 -j CLASSIFY --set-class 1:10
$IPTABLES -t mangle -A POSTROUTING -j RETURN
┌─[✗]─[mybox]─[/home/user]
└──╼ iptables -L -v -n -t mangle
Chain PREROUTING (policy ACCEPT 32435 packets, 36M bytes)
 pkts bytes target     prot opt in     out     source               destination         
32435   36M RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:80 MARK set 0x1
    0     0 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp spt:443 MARK set 0x1
Chain INPUT (policy ACCEPT 32435 packets, 36M bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 32000 packets, 1939K bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain POSTROUTING (policy ACCEPT 32011 packets, 1940K bytes)
 pkts bytes target     prot opt in     out     source               destination         
 1581  143K CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80 CLASSIFY set 1:10
  355 40856 CLASSIFY   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443 CLASSIFY set 1:10
32011 1940K RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

но опять же в 1:10 ничего не ходит

┌─[mybox]─[/home/user]
└──╼ tc -s class show dev enp5s0
class htb 1:99 parent 1:2 leaf 99: prio 7 rate 128000bit ceil 20000Kbit burst 1600b cburst 1600b 
 Sent 7874036 bytes 94492 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 81437 borrowed: 13055 giants: 0
 tokens: 1501953 ctokens: 9612
class htb 1:10 parent 1:2 leaf 10: prio 2 rate 128000bit ceil 20000Kbit burst 1600b cburst 1600b 
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 0 borrowed: 0 giants: 0
 tokens: 1562500 ctokens: 10000
class htb 1:2 root rate 20000Kbit ceil 20000Kbit burst 128Kb cburst 1600b 
 Sent 7874036 bytes 94492 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 13055 borrowed: 0 giants: 0
 tokens: 818799 ctokens: 9612

bryak ★★★★
() автор топика
Ответ на: комментарий от vel

делаем ход конём:

$IPTABLES -t mangle -A POSTROUTING -j CLASSIFY --set-class 1:10

┌─[mybox]─[/home/user]
└──╼ iptables -L -v -n -t mangle
Chain PREROUTING (policy ACCEPT 13036 packets, 16M bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain INPUT (policy ACCEPT 13036 packets, 16M bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 13733 packets, 924K bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain POSTROUTING (policy ACCEPT 13737 packets, 925K bytes)
 pkts bytes target     prot opt in     out     source               destination         
13737  925K CLASSIFY   all  --  *      *       0.0.0.0/0            0.0.0.0/0            CLASSIFY set 1:10

Ога, они все устанавливаются класса 1:10, но не попадают в class iproute2. Почему ?

┌─[mybox]─[/home/user]
└──╼ tc -s class show dev enp5s0
class htb 1:99 parent 1:2 leaf 99: prio 7 rate 128000bit ceil 20000Kbit burst 1600b cburst 1600b 
 Sent 5997040 bytes 65859 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 53776 borrowed: 12083 giants: 0
 tokens: 10332 ctokens: 9537
class htb 1:10 parent 1:2 leaf 10: prio 1 rate 128000bit ceil 20000Kbit burst 1600b cburst 1600b 
 Sent 870 bytes 6 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 6 borrowed: 0 giants: 0
 tokens: 1420898 ctokens: 9093
class htb 1:2 root rate 20000Kbit ceil 20000Kbit burst 128Kb cburst 1600b 
 Sent 5997910 bytes 65865 pkt (dropped 0, overlimits 0 requeues 0) 
 rate 0bit 0pps backlog 0b 0p requeues 0 
 lended: 12083 borrowed: 0 giants: 0
 tokens: 818724 ctokens: 9537
bryak ★★★★
() автор топика
Ответ на: комментарий от vel

можем вообще выключить DEFAULT=99 в htbinit. В ручную из iptables в любой класс не могу направить пакеты))

bryak ★★★★
() автор топика

Во всём этом уже потерялась нить беседы. Продолжение вопрос по шейперу А этот топик администраторы прошу закрыть.

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