HTB pro ftp

Premysl Hruby lin-konf na post.cz
Úterý Duben 25 12:26:05 CEST 2006


Pavel Lisý wrote:
> Stanislav Mařík píše v Po 24. 04. 2006 v 15:47 +0200:
>> Dobrý den,
>> snažím se rozchodit htb pro omezení uploadu (eth0-internet) z ftp 
>> serveru, ale nějak mě to nechce házet označené pakety do třídy 11, 
>> můžete mi poradit kde dělám chybu? Markování paketů je dle logu vpořádku.
>>
>> #!/bin/bash
>> tc=`which tc`
>> iptables=`which iptables`
>> $tc qdisc del dev eth0 root
>> $tc qdisc add dev eth0 root handle 1:0 htb default 12
>> $tc class add dev eth0 parent 1:0 classid 1:1 htb rate 512kbit
>>
>> $tc class add dev eth0 parent 1:1 classid 1:11 htb rate 128kbit
>> $tc class add dev eth0 parent 1:1 classid 1:12 htb rate 128kbit ceil 512kbit
>>
>> $tc qdisc add dev eth0 parent 1:11 handle 11:0 sfq perturb 5
>> $tc qdisc add dev eth0 parent 1:12 handle 12:0 sfq perturb 5
>>
>> $iptables -t mangle -F POSTROUTING
>> $iptables -t mangle -A POSTROUTING -p tcp -j MARK --set-mark 12
>> $iptables -t mangle -A POSTROUTING -p tcp --sport 20 -j MARK --set-mark 11
>> $iptables -t mangle -A POSTROUTING -p tcp --sport 21 -j MARK --set-mark 11
>>
>> $iptables -t mangle -A POSTROUTING -m mark --mark 11 -j LOG 
>> --log-prefix "fwmark 11:"
>> $iptables -t mangle -A POSTROUTING -m mark --mark 12 -j LOG 
>> --log-prefix "fwmark 12:"
>>
>> $tc filter add dev eth0 parent 1:0 protocol ip handle 11 fw flowid 1:11
>> $tc filter add dev eth0 parent 1:0 protocol ip handle 12 fw flowid 1:12
> 
> Ještě jeden postřeh, není markování v POSTROUTING již pozdě? 
> 
> http://www.novell.com/documentation/oes/index.html?page=/documentation/oes/sles_admin/data/sec-fire.html
> 
> Dle tohoto názorného obrázku, je postrouting poslední chain, tak by mě
> zajímalo, zda se tc neprovádí ještě před tím, než se to označkuje.
> Nevíte někdo, kde se tc v rámci tohoto schematu provádí? 
> 
> Pavel Lisý
> 
> 

Z pohledu iptables a tc, se trafic shaping provadi tesne pred vystupem
paketu na dane zarizeni (pokud jde o OUTPUT, INPUT je prave naopak).
Tedy paket -> iptables -> tc -> zarizeni

-Ph


Další informace o konferenci Linux