ďťż
 
 
   HTB - jak dopracować.
 
 

Tematy

 
    
 

 

 

 

HTB - jak dopracować.





mavarick87 - 19-02-2008 23:37
Witam

Napisałem sobie taki skrypt HTB

#HTB - koleiki

#eth0 - internet
#eth1 - lan

#kasowanie

tc qdisc del root dev eth1
tc qdisc del root dev eth0

#zaklada glowna kolejke
  #download
tc qdisc add dev eth1 root handle 1:0 htb
  #upload
tc qdisc add dev eth0 root handle 2:0 htb

# zaklada glowna klase z maksymalna przepustowosci na glownej kolejce
  #download
tc class add dev eth1 parent 1:0 classid 1:1 htb rate 1000kbit ceil 1000kbit
  #upload
tc class add dev eth0 parent 2:0 classid 2:1 htb rate 240kbit ceil 240kbit

#podział pasma na klasy dla  usług
    #dla voip i www max pasma
tc class add dev eth1 parent 1:1 classid 1:2 htb rate 1000kbit ceil 1000kbit
tc class add dev eth0 parent 2:1 classid 2:2 htb rate 100kbit ceil 100kbit
    #dla pozostałych usług
tc class add dev eth1 parent 1:1 classid 1:3 htb rate 600kbit ceil 600kbit
tc class add dev eth0 parent 2:1 classid 2:3 htb rate 30kbit ceil 30kbit

#filtry dla voip i www
#www
tc filter add dev eth1 protocol ip parent 1:0 u32 match ip sport 80 0xffff flowid 1:2
tc filter add dev eth0 protocol ip parent 2:0 u32 match ip sport 80 0xffff flowid 2:2
#voip
tc filter add dev eth1 protocol ip parent 1:0 u32 match ip sport 5060 0xffff flowid 1:3
tc filter add dev eth0 protocol ip parent 2:0 u32 match ip sport 5061 0xffff flowid 2:3

#wszystkim po równo
tc qdisc add dev eth1 parent 1:2 handle 3:0 sfq perturb 10
tc qdisc add dev eth1 parent 1:3 handle 4:0 sfq perturb 10
tc qdisc add dev eth0 parent 2:2 handle 5:0 sfq perturb 10
tc qdisc add dev eth0 parent 2:3 handle 6:0 sfq perturb 10 założenie jest takie chce ażeby usługa voip która działa na portach 5060 i 5061 miała pierwszeństwo tzn gdy nawer łacze jest zapchanę to usługa voip dostaje je w pierwsej kolejności tzn przepustowośc jest wszystkim obcinana po to ażeby zapewnic usłudze działającej na wymienonych portach odpowiednie pasmo. drugą sprawą są strony www chce ażeby priorytet ich ładowania był zaraz po voip a resztę pasma które nie wykorzystuje ani voip ani www podzieliły sobie równo inne aplikacje między innymi p2p.

Co powinienem jescze dopisać do mojego skryptu??
Po uruchomieniu skkryptu mierze prędkość łacza i niby wszytsko działa bo jak dam na www 1000kb to taka jest prędkośc a jak dam 500kb to jest 500 tlko z uploadem nie potrafie sobie poradzić bo czy napisze w skrypcie 30 czy 100 to i tak idzię 256. A to przeciez ważne bo jak kilka osób uruchomi p2p to zapcha cały upload i kich.

Prosze o rady



tomii - 21-02-2008 08:27
ja bym zrobił to tak ze voip ma wlasna kolejke z prawie calym laczem i prorytetem 1 ,www ma troszke z priorytetem 2 i reszta ma troszke z prio 3. wtedy gy potrzebny jest transfer dla voip to on jest, jesli voip go nie uzywa to mogo go pozycyc www a jak www i voip nie urzywa to może być użyty przez reszte.

żeby ograniczac upload musisz zamarkowac ruch wychodzacy od każdego uzytkownika i z serwera a póżniej go skierować do odpowiednich kolejek.



mavarick87 - 21-02-2008 10:11
możesz mi podac przykładowy skrypt jak zrobic te priorytety??

w jaki sposób mogę się uporać z tym markowanie pakietów



tomii - 21-02-2008 10:59
aktualnie nie mam gotowego skryptu ale fragmenty moge dać
iptables -t mangle -N MYSHAPER-OUT
    iptables -t mangle -I POSTROUTING -o eth0 -j MYSHAPER-OUT

 tc filter add dev eth0 protocol ip preference 1 parent 1:0 handle 21 fw flowid 1:3
iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.2 -j MARK --set-mark 21 tuylko to znakuje calosc od jednego ip a ty musisz sobie przerobic na konkretny port

a co do priorytetowania to

#podział pasma na klasy dla  usług
 #dla voip
tc class add dev eth1 parent 1:1 classid 1:2 htb rate 900kbit ceil 1000kbit prio 1
#www
tc class add dev eth1 parent 1:1 classid 1:3 htb rate 50kbit ceil 1000kbit prio 2
#reszta
tc class add dev eth1 parent 1:1 classid 1:4 htb rate 50kbit ceil 1000kbit prio 3 i teraz tylko kierujesz odpowiedni ruch w odpowiednie miejsce



mavarick87 - 22-02-2008 22:33
może ktoś z was koledzy pomoże z tym skryptem na markowanie pakietów po nr portów.

rozumiem że te polecenia odpowiadające za markowanie pakietów można zapisać w pliku z poleceniami htb



tomii - 24-02-2008 18:21
może to pomoże
tc filter add dev $wan protocol ip preference 1 parent 1:0 handle 21 fw flowid 1:3
iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.2 -j MARK --set-mark 21 a to markowanie możesz dać w pliku z htb.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis