Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2006-04-20 22:07:40

  kuchar - Użytkownik

kuchar
Użytkownik
Skąd: Warszawa
Zarejestrowany: 2005-11-16
Serwis

HTB - co o tym myślicie

Mam DSL 256/128 (niestety ale nic nie moge na to poradzic) i chcę podzielić pasmo między usługi:
   - w godzinach 16-23 download 200 Kbit na www, pocztę ssh, reszę pasma na pozostałe
      upload analogicznie 80 na wybrane usługi a reszte na reszte  :)
   - w pozostałych godzinach download po równo, upload tak jak wyzej

Oto skrypt uruchamiany o 16:

Kod:

#!/bin/bash
echo "Reguły dotyczace DOWNLOAD-u"
echo  "Kasujemy stara kolejke..."
tc qdisc del dev eth1 root handle 1:0 htb

echo "Tworzymy nowa glowna kolejke..."
tc qdisc add dev eth1 root handle 1:0 htb

echo "Tworzymy klase o predkosci 99 Mbit..."
tc class add dev eth1 parent 1:0 classid 1:1 htb rate 99999kbit ceil 99999kbit

echo "Tworzymy klase dla netu..."
tc class add dev eth1 parent 1:1 classid 1:2 htb rate 240kbit ceil 240kbit

echo "Tworzymy klase dla LAN-u..."
tc class add dev eth1 parent 1:1 classid 1:3 htb rate 99749kbit ceil 99749kbit

echo "Tworzymy klase dla www..."
tc class add dev eth1 parent 1:2 classid 1:10 htb rate 200kbit ceil 240kbit quantum 1 burst 10k

echo "Tworzymy klase dla reszty..."
tc class add dev eth1 parent 1:2 classid 1:11 htb rate 40kbit ceil 240kbit

echo "Aby wszyscy mieli po równo..."
tc qdisc add dev eth1 parent 1:3 handle 3: sfq perturb 10
tc qdisc add dev eth1 parent 1:10 handle 10: sfq perturb 10
tc qdisc add dev eth1 parent 1:11 handle 11: sfq perturb 10

echo "Tworzymy filtry..."
tc filter add dev eth1 parent 1:0 protocol ip prio 0 handle 1 fw flowid 1:10
tc filter add dev eth1 parent 1:0 protocol ip prio 2 handle 2 fw flowid 1:11
tc filter add dev eth1 protocol ip priority 3 parent 1:0 u32 match ip src 192.168.0.1 flowid 1:3

#echo "upload"
echo "Reguły dotyczące UPLOAD-u"
echo "Kasujemy stara kolejke"
tc qdisc del dev eth0 root handle 2:0 htb

echo "Tworzymy nowa glowna kolejke"
tc qdisc add dev eth0 root handle 2:0 htb

echo "Tworzymy klase o predkosci 110 kbit"
tc class add dev eth0 parent 2:0 classid 2:1 htb rate 110kbit ceil 110kbit

echo "Tworzymy klase dla www, ssh"
tc class add dev eth0 parent 2:1 classid 2:20 htb rate 80kbit ceil 110kbit

echo "Tworzymy klase dla reszty"
tc class add dev eth0 parent 2:1 classid 2:30 htb rate 30kbit ceil 110kbit

echo "Aby każdy miał po równo"
tc qdisc add dev eth0 parent 2:20 handle 20:0 sfq perturb 10
tc qdisc add dev eth0 parent 2:30 handle 30:0 sfq perturb 10

echo "Tworzę filtry"
tc filter add dev eth0 parent 2:0 protocol ip prio 0 handle 4 fw flowid 2:20
tc filter add dev eth0 parent 2:0 protocol ip prio 1 handle 5 fw flowid 2:30

O 23 uruchamiam identyczny ze zmienionymi prędkościami

Regułki na firewallu (eth0 sieciówka do netu, eh1 do LANU:
download:

Kod:

iptables -t mangle -A PREROUTING -i eth0 -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -i eth0 -p tcp --sport 80 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -i eth0 -p tcp --sport 110 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -i eth0 -p tcp --sport 22 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -i eth0 -p tcp --sport 443 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -i eth0 -p tcp -j MARK --set-mark 0x2

upload:

Kod:

iptables -t mangle -A PREROUTING -i eth1 -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j MARK --set-mark 0x4
iptables -t mangle -A PREROUTING -i eth1 -p tcp --dport 80 -j MARK --set-mark 0x4
iptables -t mangle -A PREROUTING -i eth1 -p tcp --dport 22 -j MARK --set-mark 0x4
iptables -t mangle -A PREROUTING -i eth1 -p tcp --dport 25 -j MARK --set-mark 0x4
iptables -t mangle -A PREROUTING -i eth1 -p tcp --dport 443 -j MARK --set-mark 0x4
iptables -t mangle -A PREROUTING -i eth1 -p tcp -s 192.168.0.0/24 -j MARK --set-mark 0x5

Czy to ma prawo działać? Pytam się bo nie mogę tego sprawdzić (nie ma mnie na miejscu i przez jakiś czas nie będzie). Z góry dziękuję za wszelkie sugestie.


Linux Registered User # 406343

Routing protocols enable routers to route routed protocols :)

Offline

 

#2  2006-04-21 09:56:46

  Nickleodeon - Członek DUG

Nickleodeon
Członek DUG
Skąd: Drawsko Pomorskie
Zarejestrowany: 2005-08-19

Re: HTB - co o tym myślicie

Offline

 

#3  2006-04-21 13:35:02

  kuchar - Użytkownik

kuchar
Użytkownik
Skąd: Warszawa
Zarejestrowany: 2005-11-16
Serwis

Re: HTB - co o tym myślicie

właśnie korzystałem z tego, chodzi mi o to żeby ktoś zerknął i napisał czy to wogole ma prawo działać, czy sama koncepcja głównie markowania pakietów i filtrowania ich jest poprawna


Linux Registered User # 406343

Routing protocols enable routers to route routed protocols :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)