problem z htb - nie dziala ograniczenie per host
Przemysław Backiel
przemyslaw.backiel w backiel.com.pl
Czw, 2 Lut 2006, 13:11:01 CET
Witam,
robie podział trafficu per usługa, markuje usługi w iptables i wrzucam
jest bezpośrednio do klas z poziomu iptables, mój skrypt zamieszczam
poniżej.
teraz chciałem utworzyć klase 1:15 i wrzucać do niej ruch dst dla
192.168.1.9, lecz to nie działa.
zgodnie z diagramem krążenia pakietów, zrozumiałem ze najpierw zadziała
filtr u32 a dopiero potem zadziałają markowania w iptables.
jaki mam teraz efekt?
ruch do 1:15 nie trafia no i transfer dla 192.168.1.9 nie jest
ograniczony wcale :(
co robie źle?
oto mój skrypt htb:
----------------
WYJSCIE=5800Kbit
P2P_DOWN=2700Kbit
HTTP=2900Kbit
#---------------------
/sbin/tc qdisc del dev eth1 root
/sbin/tc qdisc add dev eth1 root handle 1 htb default 50
/sbin/tc qdisc del dev eth0 root
/sbin/tc qdisc add dev eth0 root handle 1 htb default 50
/sbin/tc class add dev eth1 parent 1: classid 1:2 htb rate 90000Kbit
#
/sbin/tc class add dev eth1 parent 1:2 classid 1:95 htb rate 80000Kbit
ceil 80000Kbit prio 1
/sbin/tc qdisc add dev eth1 parent 1:95 handle 95 sfq perturb 1
#
/sbin/tc class add dev eth1 parent 1:2 classid 1:10 htb rate $WYJSCIE
ceil $WYJSCIE
/sbin/tc class add dev eth1 parent 1:10 classid 1:30 htb rate 400Kbit
ceil 900Kbit burst 45Kb prio 1
/sbin/tc qdisc add dev eth1 parent 1:30 handle 30 sfq perturb 1
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 200 handle 1 fw
classid 1:30
########
/sbin/tc class add dev eth1 parent 1:10 classid 1:15 htb rate 128kbit
ceil 128kbit
/sbin/tc filter add dev eth1 protocol ip preference 2 parent 1:0 u32
match ip dst 192.168.1.9 flowid 1:15
########
/sbin/tc class add dev eth1 parent 1:10 classid 1:40 htb rate 800Kbit
ceil 1000Kbit burst 128Kb prio 2 cburst 256Kb
/sbin/tc qdisc add dev eth1 parent 1:40 handle 40 sfq perturb 1
/sbin/tc class add dev eth1 parent 1:10 classid 1:43 htb rate 450Kbit
ceil 8000Kbit burst 20Kb prio 3 cburst 40Kb
/sbin/tc qdisc add dev eth1 parent 1:43 handle 43 sfq perturb 1
/sbin/tc class add dev eth1 parent 1:10 classid 1:50 htb rate 50Kbit
ceil 1900Kbit burst 1Kb prio 12
/sbin/tc qdisc add dev eth1 parent 1:50 handle 50 sfq perturb 1
/sbin/tc class add dev eth1 parent 1:10 classid 1:60 htb rate 350Kbit
ceil 900Kbit burst 15Kb prio 5
/sbin/tc qdisc add dev eth1 parent 1:60 handle 60 sfq perturb 1
/sbin/tc class add dev eth1 parent 1:10 classid 1:70 htb rate 1Kbit ceil
1300Kbit burst 1Kb prio 9
/sbin/tc qdisc add dev eth1 parent 1:70 handle 70 sfq perturb 1
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 200 handle 9 fw
classid 1:70
/sbin/tc class add dev eth1 parent 1:10 classid 1:80 htb rate 1Kbit ceil
$P2P_DOWN burst 1Kb prio 11
#/sbin/tc qdisc add dev eth1 parent 1:80 handle 80 sfq perturb 1
/sbin/tc qdisc add dev eth1 parent 1:80 handle 80 wrr dest ip 254 0
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 200 handle 10
fw classid 1:80
/sbin/tc class add dev eth1 parent 1:10 classid 1:90 htb rate 1100Kbit
ceil $HTTP burst 15Kb prio 4
/sbin/tc qdisc add dev eth1 parent 1:90 handle 90 wrr dest ip 254 0
#/sbin/tc qdisc add dev eth1 parent 1:90 handle 90 sfq perturb 1
/sbin/tc class add dev eth0 parent 1: classid 1:3 htb rate 3950Kbit ceil
3950Kbit
/sbin/tc class add dev eth0 parent 1:3 classid 1:10 htb rate 3950Kbit
ceil 3950Kbit
/sbin/tc class add dev eth0 parent 1:10 classid 1:30 htb rate 400Kbit
ceil 900Kbit burst 45Kb prio 1
/sbin/tc qdisc add dev eth0 parent 1:30 handle 30 sfq perturb 1
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 200 handle 1 fw
classid 1:30
/sbin/tc class add dev eth0 parent 1:10 classid 1:40 htb rate 800Kbit
ceil 1000Kbit burst 128Kb prio 2 cburst 256Kb
/sbin/tc qdisc add dev eth0 parent 1:40 handle 40 sfq perturb 1
/sbin/tc class add dev eth0 parent 1:10 classid 1:43 htb rate 450Kbit
ceil 8000Kbit burst 20Kb prio 3 cburst 40Kb
/sbin/tc qdisc add dev eth0 parent 1:43 handle 43 sfq perturb 1
/sbin/tc class add dev eth0 parent 1:10 classid 1:50 htb rate 50Kbit
ceil 1900Kbit burst 1Kb prio 12
/sbin/tc qdisc add dev eth0 parent 1:50 handle 50 sfq perturb 1
/sbin/tc class add dev eth0 parent 1:10 classid 1:60 htb rate 350Kbit
ceil 900Kbit burst 15Kb prio 5
/sbin/tc qdisc add dev eth0 parent 1:60 handle 60 sfq perturb 1
/sbin/tc class add dev eth0 parent 1:10 classid 1:70 htb rate 50Kbit
ceil 1700Kbit burst 1Kb prio 9
/sbin/tc qdisc add dev eth0 parent 1:70 handle 70 sfq perturb 1
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 200 handle 9 fw
classid 1:70
/sbin/tc class add dev eth0 parent 1:10 classid 1:80 htb rate 1Kbit ceil
2350Kbit burst 1Kb prio 11
/sbin/tc qdisc add dev eth0 parent 1:80 handle 80 wrr sour ip 254 0
#/sbin/tc qdisc add dev eth0 parent 1:80 handle 80 sfq perturb 1
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 200 handle 10
fw classid 1:80
/sbin/tc class add dev eth0 parent 1:10 classid 1:90 htb rate 900Kbit
ceil 900Kbit burst 15Kb prio 4
/sbin/tc qdisc add dev eth0 parent 1:90 handle 90 sfq perturb 1
--
Z powazaniem
Przemyslaw Backiel
Więcej informacji o liście dyskusyjnej pld-users-pl