Strona 1 z 1

Dziwne zachowanie HTB

: 27 lipca 2007, 10:15
autor: axxxr
Witam
Mam taki dziwny problem z htb. Otóż w dokumentacji pisze że HTB wrzuca pakiety do pierwszej pasującej klasy. Na jądrze 2.4.34 rzeczywiście tak było natomiast jak przesiadłem się na Debiana 2.6.18 skrypt z htb zaczął po prostu działać inaczej tzn tworze dwie klasy np 2:6 2:9 i ładuje do nich pakiety np. z portu 22. mam również zdefiniowaną klasę domyślną 2:250. otóż zgodnie z założeniami pakiety powinny trafiać do pierwszej pasującej klasy tymczasem pakiety z tego portu trafiają do klasy 2:9 która jest zdefiniowana po 2:6 (filtry dodane również w tej kolejności). Jeżeli wyhashuje klasę 2:9 to pakiety trafiają do klasy 2:6. Czy w htb w jądrze 2.6 zaszły jakieś zmiany ?

[ Dodano: 2007-07-27, 10:26 ]
Podaję część skryptu

Kod: Zaznacz cały

# INTERFEJS ETH0 (ruch wychodz.cy)
 /sbin/tc qdisc add dev eth0 root handle 2:0 htb default 11 r2q 6

 # g..wna klasa
 /sbin/tc class add dev eth0 parent 2:0 classid 2:1 htb rate 500kbit ceil 512kbit


 # klasa ssh
 /sbin/tc class add dev eth0 parent 2:1 classid 2:6 htb rate 20kbit ceil 100kbit prio 2 quantum 1500
 /sbin/tc qdisc add dev eth0 parent 2:6 sfq perturb 10
 /sbin/tc filter add dev eth0 parent 2:0 protocol ip prio 2 u32 match ip sport 22 0xffff flowid 2:6 # port 22


 # klasa priorytetowa TOS 0x10 oraz ICMP
 /sbin/tc class add dev eth0 parent 2:1 classid 2:9 htb rate 20kbit ceil 100kbit prio 2 quantum 1500
 /sbin/tc qdisc add dev eth0 parent 2:9 sfq perturb 10
 /sbin/tc filter add dev eth0 parent 2:0 protocol ip prio 1 u32 match ip tos 0x10 0xff flowid 2:9 # TOS 0x10
 /sbin/tc filter add dev eth0 parent 2:0 protocol ip prio 1 u32 match ip protocol 1 0xff flowid 2:9 # ICMP


# ruch serwerowy dla gosci z zewnatrz
/sbin/tc class add dev eth0 parent 2:1 classid 2:11 htb rate 64kbit ceil 128kbit prio 5 quantum 1500
/sbin/tc qdisc add dev eth0 parent 2:11 sfq perturb 10
/sbin/tc filter add dev eth0 parent 2:0 protocol ip prio 5 handle 0x1 fw flowid 2:11



 # 192.168.1.4 klient0
 /sbin/tc class add dev eth0 parent 2:1 classid 2:4 htb rate 36kbit ceil 128kbit prio 2 quantum 1500
 /sbin/tc qdisc add dev eth0 parent 2:4 sfq perturb 10
 /sbin/tc filter add dev eth0 parent 2:0 protocol ip prio 5 handle 4 fw flowid 2:4


 # 192.168.1.30 klient1
 /sbin/tc class add dev eth0 parent 2:1 classid 2:30 htb rate 12kbit ceil 48kbit prio 2 quantum 1500
 /sbin/tc qdisc add dev eth0 parent 2:30 sfq perturb 10
 /sbin/tc filter add dev eth0 parent 2:0 protocol ip prio 5 handle 30 fw flowid 2:30 
[ Dodano: 2007-07-27, 10:37 ]
Oczywiście na początku skrytptu reguły są czyszczone

Kod: Zaznacz cały

 /sbin/tc qdisc del root dev eth0 2> /dev/null
 /sbin/tc qdisc del root dev eth1 2> /dev/null 
[ Dodano: 2007-07-27, 10:42 ]
Inna sprawa że nie działa polecenie "preference"

//edit
używaj tagów code
mlyczek