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!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
W moim przypadku htb ogranicza maksymalny download na komputery w lanie, ale w momencie, gdy jeden z nich ściąga większy plik, reszta nie ma problemy z dostępem do internetu, a konkretnie nie ma dostępu.
Ale po kolei:
sieć wygląda tak
INTERNET -----(eth0) SERWER (eth1- 192.168.1.1)----SWITCH---3 kompy o adresach ip 192.168.1.2, 192.168.1.3, 192.168.1.4
mój skrypt htb wygląda tak:
# Tworzymy główną kolejkę 1:0 na interfejsie eth0 tc qdisc add dev eth1 root handle 1:0 htb # W kolejce tej tworzymy główną klasę 1:1 o przepustowości 240kbit: tc class add dev eth1 parent 1:0 classid 1:1 htb rate 240kbit ceil 240kbit # Teraz tworzymy właściwe podklasy (jedna podklasa na jeden komputer) należące # do podklasy 1:1. Określają one przepustowości między # internetem, a poszczególnymi użytkownikami sieci. tc class add dev eth1 parent 1:1 classid 1:2 htb rate 80kbit ceil 240kbit prio 3 tc class add dev eth1 parent 1:1 classid 1:3 htb rate 80kbit ceil 240kbit prio 2 tc class add dev eth1 parent 1:1 classid 1:4 htb rate 80kbit ceil 240kbit prio 1 # Przydzielamy ruch dla poszczególnych kanałów: tc filter add dev eth1 protocol ip parent 1:0 u32 match ip dst 192.168.1.2 flowid 1:2 tc filter add dev eth1 protocol ip parent 1:0 u32 match ip dst 192.168.1.3 flowid 1:3 tc filter add dev eth1 protocol ip parent 1:0 u32 match ip dst 192.168.1.4 flowid 1:4 # Sprawiedliwy algorytm kolejkowania (zamiast fifo): # # Domyślnie kolejka będzie działała na zasadzie fifo -- czyli pakiet, który # ostatni trafi do kolejki, ostatni z niej też wyjdzie. W przypadku porządnego # zapchania może to uniemożliwić korzystanie z czegokolwiek. SFQ przepuszcza # pakiety "sprawiedliwie", czyli losowo. Uniemożliwi to zapchanie telnetu Kazą # i innych interaktywnych usług. tc qdisc add dev eth1 parent 1:2 handle 2:0 sfq perturb 10 tc qdisc add dev eth1 parent 1:3 handle 3:0 sfq perturb 10 tc qdisc add dev eth1 parent 1:4 handle 4:0 sfq perturb 10
czyli jest tylko na dane pobierane z internetu. jeszcze tylko dodam, że mam łącze 256/128kbit
zanim wprowadziłem kolejkowanie htb wszystko było w porządku, tzn. wszyscy wykorzystywali maksymalnie łącze i jeżeli ktoś sciągał plik to zabierał całe pasmo, więc tak nie mogło być :) po zastosowaniu powyższego skryptu plik ściągał się z zadaną maksymalną prędkością, ale inni nadal nie mieli internetu.
Dodatkowo zauważyłem, że czas pingu wzrósł dziesięciokrotnie niż był początkowo, jak tylko jedna osoba korzystała z netu.
Zastanawiam się czy może to być wina szybkości serwera, gdyż jest to komputer z procesorem 100MHz i 64MB RAM.
Czy ktoś wie jak rozwiązać taki problem?
Offline
zobacz moze moj skryptr pomoze Ci :) ew popraw bledy i zmien predkosci lacza ;)
#!/bin/sh tc="/sbin/tc" ipt="/sbin/iptables" #==================== Download ============================ $tc qdisc del root dev eth0 $tc qdisc del root dev eth1 #$ipt -t mangle -F MYSHAPER-OUT #$ipt -t mangle -X MYSHAPER-OUT $tc qdisc add dev eth0 root handle 1:0 htb $tc class add dev eth0 parent 1:0 classid 1:1 htb rate 750kbit ceil 750kbit $tc class add dev eth0 parent 1:1 classid 1:2 htb rate 400kbit ceil 750kbit $tc class add dev eth0 parent 1:1 classid 1:3 htb rate 175kbit ceil 750kbit $tc class add dev eth0 parent 1:1 classid 1:4 htb rate 175kbit ceil 750kbit $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 192.168.1.2 flowid 1:2 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 192.168.1.9 flowid 1:3 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 192.168.1.8 flowid 1:4 $tc qdisc add dev eth0 parent 1:2 handle 2:0 sfq perturb 10 $tc qdisc add dev eth0 parent 1:3 handle 3:0 sfq perturb 10 $tc qdisc add dev eth0 parent 1:4 handle 4:0 sfq perturb 10 #======= UPLOAD ============== #$ipt -t mangle -A MYSHAPER-OUT -m mark --mark 0 -j MARK --set-mark 20 #$ipt -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.2 -j MARK --set-mark 21 #$ipt -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.3 -j MARK --set-mark 22 #$ipt -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.4 -j MARK --set-mark 23 #$ipt -t mangle -A MYSHAPER-OUT -s 192.168.1.10 -j MARK --set-mark 24 $tc qdisc add dev eth1 root handle 2:0 htb $tc class add dev eth1 parent 2:0 classid 2:2 htb rate 750kbit ceil 750kbit quantum 16 $tc class add dev eth1 parent 2:2 classid 2:3 htb rate 400kbit ceil 400kbit quantum 4 $tc class add dev eth1 parent 2:2 classid 2:4 htb rate 175bit ceil 175kbit quantum 4 $tc class add dev eth1 parent 2:2 classid 2:5 htb rate 175kbit ceil 175kbit quantum 4 $tc qdisc add dev eth1 parent 2:3 handle 3:0 sfq perturb 10 $tc qdisc add dev eth1 parent 2:4 handle 4:0 sfq perturb 10 $tc qdisc add dev eth1 parent 2:5 handle 5:0 sfq perturb 10 $tc filter add dev eth1 protocol ip preference 1 parent 2:0 handle 23 fw flowid 2:3 $tc filter add dev eth1 protocol ip preference 1 parent 2:0 handle 21 fw flowid 2:4 $tc filter add dev eth1 protocol ip preference 1 parent 2:0 handle 22 fw flowid 2:5 $ipt -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.9 -j MARK --set-mark 21 $ipt -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.8 -j MARK --set-mark 22 #$ipt -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.2 -j MARK --set-mark 23 $ipt -t mangle -A MYSHAPER-OUT -s 192.168.1.2 -j MARK --set-mark 23 $ipt -t mangle -A MYSHAPER-OUT -m mark --mark 0 -j MARK --set-mark 20
Offline
krolxxl: rzecz w tym, że tym nie znaczysz uploadu. HTB, jak to już tutaj gdzieś napisano kiedyś, musi mieć pakiety znaczone dodatkowo przez to
iptables -t mangle -A MYSHAPER-OU...........
Offline
stepien86: wielkie dzieki za skrypt, zaraz go spróbuję przerobić na własny użytek.
tylko mała uwaga, tak do końca nie jestem pewny jak postąpić z takim skryptem, tzn. wydaje mi się, że powinienem zrobić tak:
- umieścić go w katalogu /etc/init.d
- nadać atrybut do uruchamiania
- i zrestartować system
czy jestem w błędzie?
Offline
Musisz jeszcze dodac go do systemu aby razem z nim wstawal takim poleceniem:
update-rc.d nazwa_Twojego_skryptu_w_initd defaults 20
Offline
Niestety, jak do tej pory nie uzyskałem zamierzonego celu.
Poprawiłem skrypt, który teraz wygląda tak:
#!/bin/sh echo "shaper start" tc qdisc del root dev eth1 tc qdisc del root dev eth0 iptables -t mangle -D POSTROUTING -o eth0 -j MYSHAPER-OUT iptables -t mangle -F MYSHAPER-OUT iptables -t mangle -X MYSHAPER-OUT ########## DOWNLOAD echo "download" tc qdisc add dev eth1 root handle 1:0 htb tc class add dev eth1 parent 1:0 classid 1:1 htb rate 240kbit ceil 240kbit quantum 16 tc class add dev eth1 parent 1:1 classid 1:2 htb rate 60kbit ceil 240kbit quantum 4 prio 3 tc class add dev eth1 parent 1:1 classid 1:3 htb rate 60kbit ceil 240kbit quantum 4 prio 2 tc class add dev eth1 parent 1:1 classid 1:4 htb rate 120kbit ceil 240kbit quantum 4 prio 1 tc filter add dev eth1 protocol ip preference 1 parent 1:0 u32 match ip dst 192.168.1.2 flowid 1:2 tc filter add dev eth1 protocol ip preference 1 parent 1:0 u32 match ip dst 192.168.1.3 flowid 1:3 tc filter add dev eth1 protocol ip preference 1 parent 1:0 u32 match ip dst 192.168.1.4 flowid 1:4 tc qdisc add dev eth1 parent 1:2 handle 2:0 sfq perturb 10 tc qdisc add dev eth1 parent 1:3 handle 3:0 sfq perturb 10 tc qdisc add dev eth1 parent 1:4 handle 4:0 sfq perturb 10 ########## UPLOAD echo "upload" tc qdisc add dev eth0 root handle 1:0 htb tc class add dev eth0 parent 1:0 classid 1:1 htb rate 120kbit ceil 120kbit quantum 16 tc class add dev eth0 parent 1:1 classid 1:2 htb rate 24kbit ceil 64kbit quantum 4 tc class add dev eth0 parent 1:1 classid 1:3 htb rate 48kbit ceil 120kbit quantum 4 tc class add dev eth0 parent 1:1 classid 1:4 htb rate 48kbit ceil 120kbit quantum 4 tc qdisc add dev eth0 parent 1:2 handle 2:0 sfq perturb 10 tc qdisc add dev eth0 parent 1:3 handle 3:0 sfq perturb 10 tc qdisc add dev eth0 parent 1:4 handle 4:0 sfq perturb 10 tc filter add dev eth0 protocol ip preference 1 parent 1:0 handle 20 fw flowid 1:2 tc filter add dev eth0 protocol ip preference 1 parent 1:0 handle 21 fw flowid 1:3 tc filter add dev eth0 protocol ip preference 1 parent 1:0 handle 22 fw flowid 1:4 iptables -t mangle -N MYSHAPER-OUT iptables -t mangle -I POSTROUTING -o eth0 -j MYSHAPER-OUT iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.2 -j MARK --set-mark 20 iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.3 -j MARK --set-mark 21 iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.4 -j MARK --set-mark 22 echo "shaper uruchomiony"
podczas uruchamiania systemu dostaję następujący komunikat:
shaper start RTNETLINK anserws: No such file or directory RTNETLINK anserws: No such file or directory iptables v1.2.11: Couldn't load target 'MYSHAPER-OUT':/lib/iptables/libipt_MYSHAPER-OUT.so: No such file or directory Try `iptables -h' or 'iptables --help' for more information. iptables: No chain/target/match by that name iptables: Table dose not exist (do you need to insmod?) download HTB init, kernel part version 3.17 u32 classifer OLD policer on upload HTB init, kernel part version 3.17 shaper uruchomiony
natomiast po komendzie
tc qdisc show
taki:
qdisc htb 1: dev eth0 r2q 10 default 0 direct_packets_stat 157 qdisc sfq 2: dev eth0 limit 128p quantum 1514b perturb 10sec qdisc sfq 3: dev eth0 limit 128p quantum 1514b perturb 10sec qdisc sfq 4: dev eth0 limit 128p quantum 1514b perturb 10sec qdisc htb 1: dev eth1 r2q 10 default 0 direct_packets_stat 157 qdisc sfq 2: dev eth1 limit 128p quantum 1514b perturb 10sec qdisc sfq 3: dev eth1 limit 128p quantum 1514b perturb 10sec qdisc sfq 4: dev eth1 limit 128p quantum 1514b perturb 10sec
Wszystko sie sypie, gdy na jednym z kompów chodzi klient p2p. Wtedy na żadnym innym nie ma internetu. Znalazłem gdzieś wzmiankę, że to p2p blokuje łącza przez duże ilości nawiązywanych połączeń, ale czy nie ma na to jakiegoś lekarstwa?
Offline
nad download zhashuj linie
iptables -t mangle -F MYSHAPER-OUT
iptables -t mangle -X MYSHAPER-OUT
i zobacz wtedy ;)
Offline
krolxxl spróbuj poprostu uruchomić skrypt dwa razy pod rząd i zobacz czy błędy po drugim razie wystąpią. Za piewrszym razem może się sypać bo na początku usuwasz kolejki, które dopiero później tworzysz, i usuwasz łańcuch który również dopiero później tworzysz. Czyli usuwasz coś czego nie ma przy pierszym uruchomieniu.
Offline
mam dobrą i złą wiadomość dla wszystkich zainteresowanych :)
dobra jest taka, że udało mi się rozwiązać problem z wysycaniem łącza wstawiając w moim skrypcie zamiast [i]tcp[/i] to [i]all[/i] gdyż większość pakietów było przesyłanych protokołem udp (wystarczyła chwila zabawy z iptraf) i teraz zmieniona część skryptu wygląda tak:
iptables -t mangle -N MYSHAPER-OUT iptables -t mangle -I POSTROUTING -o eth0 -j MYSHAPER-OUT iptables -t mangle -A MYSHAPER-OUT -p all -s 192.168.1.2 -j MARK --set-mark 20 iptables -t mangle -A MYSHAPER-OUT -p all -s 192.168.1.3 -j MARK --set-mark 21 iptables -t mangle -A MYSHAPER-OUT -p all -s 192.168.1.4 -j MARK --set-mark 22
A teraz czas na złą wiadomość: maksymalny download jest taki jak podana wartość rate i nic nie daje wypożyczać nawet jak tylko jeden komp jest podłączony. Próbowałem już odpalić skrypt bez [i]prio [/i] i bez [i]quantum[/i] w downloadzie ale to nie pomogło. Nie mam pojęcia dlaczego tak się dzieję
Offline
Polecam skorzystanie z wirtualnych interfejsów imq. Można za ich pomocą (po wcześniejszym przekierowaniu na nie ruchu) kontrolowac upload tak samo jak download czyli bez żadnego markowania pakietów.
Offline
a jak to zrobić, albo chociaż gdzie można by o tym poczytać ?
Offline
a jak to zrobić, albo chociaż gdzie można by o tym poczytać ?[/quote]
http://www.linuximq.net/
Offline
Ja generalnie nie uważam, że nie ma innych rozwiązań, ale dlaczego to tylko u mnie nie chodzi to ja już muszę się dowiedzieć :)
Mam takie pytanko:
Czy to, że mój adres jest przypisywany dynamicznie ma jakieś znaczenie na kolejkowanie??
P.S. MG_Peter: fajny program do ogniska, tyle że ja bym dał piwko-- tak na logikę :)
Offline
Bardzo polecam IMQ i HFSC, ten duet bardzo ładnie ze sobą współpracuje i daje świetne rezultaty. Działa zdecydowanie szybciej (wcześniej widać ze coś jest przycinane) i dokładniej niż samo HTB, a nawet HTB z IMQ. Przynajmniej dla mnie HFSC rulez :)
Offline
Bardzo polecam IMQ i HFSC, ten duet bardzo ładnie ze sobą współpracuje i daje świetne rezultaty. Działa zdecydowanie szybciej (wcześniej widać ze coś jest przycinane) i dokładniej niż samo HTB, a nawet HTB z IMQ. Przynajmniej dla mnie HFSC rulez :)[/quote]
to jeszcze pochwal się skryptami HFSC...
Offline
Wszystko spoko, jeszcze raz powtarzam, że HTB nie jest wyłącznością, ale ja na prawdę chcę się dowiedzieć o co chodzi.
Chciałbym sie podzielić kolejnymi wynikami "testów". Otóż w tym momncie wszystko działa po ... odcięciu na chwilę zasilacza do modemu ADSL. Wczoraj w nocy tak zrobiłem i wszystko działało jak należy. Nie wpadając jednak w wielki zachwyt poszedłem spać, wstaję rano odpalam swojego kompa i ..... nic :( Jeden z kompów był całą noc wlączony z uruchomionym p2p. Ponownie więc odlączyłem ADSL od prądu i podłączyłem. No i wszystko znowy dział :) Ale co tu jest nie tak. Przecież nie będę co pare godzin wyłączał i włączał modemu ADSL. Jak widać skrypt może być poprawny i nawet zastosowanie IMQ czy HFSC może nie wiele zmienić, jeżeli problem jest z .... no właśnie z czym?
Offline
Wszystko spoko, jeszcze raz powtarzam, że HTB nie jest wyłącznością, ale ja na prawdę chcę się dowiedzieć o co chodzi.
Chciałbym sie podzielić kolejnymi wynikami "testów". Otóż w tym momncie wszystko działa po ... odcięciu na chwilę zasilacza do modemu ADSL. Wczoraj w nocy tak zrobiłem i wszystko działało jak należy. Nie wpadając jednak w wielki zachwyt poszedłem spać, wstaję rano odpalam swojego kompa i ..... nic :( Jeden z kompów był całą noc wlączony z uruchomionym p2p. Ponownie więc odlączyłem ADSL od prądu i podłączyłem. No i wszystko znowy dział :) Ale co tu jest nie tak. Przecież nie będę co pare godzin wyłączał i włączał modemu ADSL. Jak widać skrypt może być poprawny i nawet zastosowanie IMQ czy HFSC może nie wiele zmienić, jeżeli problem jest z .... no właśnie z czym?[/quote]
Z tego co rozumie to modem się wiesza tak? Może jest uszkodzony? :)
Wywal z tego skryptu te prio bo to jest ci nie potrzebne. Zrób to tez po ludzku na IMQ. Zwróć uwagę też czy zbyt duża ilość połaczeń nie powoduje zawieszenia internetu/modemu (może je limitować patchem na iptables connlimit z pakietu patch-o-matic).
Offline
Jednak to nie modem, gdyż po przerwaniu połączenia i ponownym połączeniu serwera z modemem wszystko działa jak powinno. (znowu zostawiłem jednego kompa na pare godzin z uruchomionym p2p, a jak następnie podłączyłem drugiego to internet nie działał)
Co do dużej liczby połączeń to sam się nad tym wcześniej zastanawiałem i uwżam to za jedeną z głównych możliwości występowania problemu, dlatego opcja z limitowaniem połączeń mnie zainteresowała, ale jaki powinien to być rząd liczby połączeń, aby nikt nie narzekał?
A co do IMQ to jak narazie moja wiedza i brak czasu nie wystarcza na jego zastosowanie :(
Offline
Jednak to nie modem, gdyż po przerwaniu połączenia i ponownym połączeniu serwera z modemem wszystko działa jak powinno. (znowu zostawiłem jednego kompa na pare godzin z uruchomionym p2p, a jak następnie podłączyłem drugiego to internet nie działał)
Co do dużej liczby połączeń to sam się nad tym wcześniej zastanawiałem i uwżam to za jedeną z głównych możliwości występowania problemu, dlatego opcja z limitowaniem połączeń mnie zainteresowała, ale jaki powinien to być rząd liczby połączeń, aby nikt nie narzekał?
A co do IMQ to jak narazie moja wiedza i brak czasu nie wystarcza na jego zastosowanie :([/quote]
50-100 powinno spokojnie starczyć.
Offline
to jeszcze pochwal się skryptami HFSC...[/quote]
Proszę bardzo:Kod:
#!/bin/bash DOWNLOAD=230 UPLOAD=115 DOWNLOAD_CRIT=70 DOWNLOAD_CRIT_M1=120 UPLOAD_CRIT=40 UPLOAD_CRIT_M1=80 DOWNLOAD_PRIO=90 UPLOAD_PRIO=50 DOWNLOAD_OTHER=70 UPLOAD_OTHER=25 ip link set imq0 up ip link set imq1 up tc qdisc del root dev imq1 2> /dev/null tc qdisc del root dev imq0 2> /dev/null #####Tworzymy korzenie kolejek ########DOWNLOAD tc qdisc add dev imq0 root handle 1:0 hfsc default 30 tc class add dev imq0 parent 1:0 classid 1:1 hfsc ls m2 ${DOWNLOAD}kbit ul m2 ${DOWNLOAD}kbit echo "download - ruch krytyczny" tc class add dev imq0 parent 1:1 classid 1:10 hfsc rt m1 ${DOWNLOAD_CRIT_M1}kbit d 1s m2 ${DOWNLOAD_CRIT}kbit ls m2 ${DOWNLOAD_CRIT}kbit ul m2 ${DOWNLOAD}kbit tc qdisc add dev imq0 parent 1:10 sfq perturb 5 tc filter add dev imq0 parent 1:0 protocol ip prio 2 handle 0x10 fw flowid 1:10 echo "download prio" #ruch priorytetowy tc class add dev imq0 parent 1:1 classid 1:20 hfsc ls m2 ${DOWNLOAD_PRIO}kbit ul m2 ${DOWNLOAD}kbit tc qdisc add dev imq0 parent 1:20 sfq perturb 5 tc filter add dev imq0 parent 1:0 protocol ip prio 3 handle 0x20 fw flowid 1:20 echo "download - normalny" #ruch normalny tc class add dev imq0 parent 1:1 classid 1:30 hfsc ls m2 ${DOWNLOAD_OTHER}kbit ul m2 ${DOWNLOAD}kbit tc qdisc add dev imq0 parent 1:30 sfq perturb 5 tc filter add dev imq0 parent 1:0 protocol ip prio 5 handle 0x30 fw flowid 1:30 echo "upload" ########UPLOAD tc qdisc add dev imq1 root handle 1:0 hfsc default 30 tc class add dev imq1 parent 1:0 classid 1:1 hfsc ls m2 ${UPLOAD}kbit ul m2 ${UPLOAD}kbit #ruch krytyczny tc class add dev imq1 parent 1:1 classid 1:10 hfsc rt m1 ${UPLOAD_CRIT_M1}kbit d 1s m2 ${UPLOAD_CRIT}kbit ls m2 ${UPLOAD_CRIT}kbit ul m2 ${UPLOAD}kbit tc qdisc add dev imq1 parent 1:10 sfq perturb 5 tc filter add dev imq1 parent 1:0 protocol ip prio 2 handle 0x10 fw flowid 1:10 #ruch priorytetowy tc class add dev imq1 parent 1:1 classid 1:20 hfsc ls m2 ${UPLOAD_PRIO}kbit ul m2 ${UPLOAD}kbit tc qdisc add dev imq1 parent 1:20 sfq perturb 5 tc filter add dev imq1 parent 1:0 protocol ip prio 3 handle 0x20 fw flowid 1:20 #ruch normalny tc class add dev imq1 parent 1:1 classid 1:30 hfsc ls m2 ${UPLOAD_OTHER}kbit ul m2 ${UPLOAD}kbit tc qdisc add dev imq1 parent 1:30 sfq perturb 5 tc filter add dev imq1 parent 1:0 protocol ip prio 5 handle 0x30 fw flowid 1:30do tego markowanie:
Kod:
#KRYTYCZNY iptables -t mangle -A PREROUTING -p icmp -j MARK --set-mark 0x10 iptables -t mangle -A PREROUTING -p icmp -j RETURN iptables -t mangle -A PREROUTING -p udp --sport 53 -j MARK --set-mark 0x10 iptables -t mangle -A PREROUTING -p udp --sport 53 -j RETURN iptables -t mangle -A PREROUTING -p tcp --sport 22 -j MARK --set-mark 0x10 iptables -t mangle -A PREROUTING -p tcp --sport 22 -j RETURN iptables -t mangle -A POSTROUTING -p icmp -j MARK --set-mark 0x10 iptables -t mangle -A POSTROUTING -p icmp -j RETURN iptables -t mangle -A POSTROUTING -p udp --dport 53 -j MARK --set-mark 0x10 iptables -t mangle -A POSTROUTING -p udp --dport 53 -j RETURN iptables -t mangle -A POSTROUTING -p tcp --dport 22 -j MARK --set-mark 0x10 iptables -t mangle -A POSTROUTING -p tcp --dport 22 -j RETURN #P2P iptables -t mangle -A PREROUTING -j CONNMARK --restore-mark iptables -t mangle -A PREROUTING -m ipp2p --ipp2p -j MARK --set-mark 0x30 iptables -t mangle -A PREROUTING -m mark --mark 0x30 -j CONNMARK --save-mark iptables -t mangle -A POSTROUTING -m mark --mark 0x30 -j RETURN #PRIORYTETOWY iptables -t mangle -A PREROUTING -p tcp -m multiport --sports 80,110,443,8080 -j MARK --set-mark 0x20 iptables -t mangle -A PREROUTING -p tcp -m multiport --sports 80,110,443,8080 -j RETURN iptables -t mangle -A POSTROUTING -p tcp -m multiport --dports 80,25,443,8080 -j MARK --set-mark 0x20 iptables -t mangle -A POSTROUTING -p tcp -m multiport --dports 80,25,443,8080 -j RETURN #IMQ echo "dajemy IMQ" iptables -t mangle -A POSTROUTING -o $WAN_ETH -j IMQ --todev 1 iptables -t mangle -A PREROUTING -i $WAN_ETH -j IMQ --todev 0nie wiem czy to jest zrobione cudownie, ale na moim wspanialym laczu 256/128 dziala to niezle, a napewno lepiej niz htb
Linux Registered User # 406343
[i]Routing protocols enable routers to route routed protocols[/i] :)
Offline
Ulter: aż strach się pochwalić, że na p2p miałem ustawione na 500 połączeń, zobacze jak to teraz będzie działać po zmniejszeniu na 40, bo na razie nie mam czasu na kompilacje jajka :(
kuchar: widzę żę skrypt w sam raz na moje łącze, pewnie i provider ten sam :)
Offline
moj privider to Telefony Podlaskie SA, firma ktora miala byc lokalna konkurencja dla tepsy, nic z tepsy miec nie moge, a za to lacze place duzo za duzo, duzo wiecej niz w tepsie :/
Offline
kuchar: tak jak myślałem :) i faktycznie tanio nie jest
ale wracając do tematu to jest gdzieś w sieci jak to wszystko od podstaw zrobić, żeby niczego nie pominąć i nie stracić kolejnych tygodni :/
Offline
jest, ale teraz nie mam linka, gdzies na forum jest link jak zrobic imq, ogolnie w necie tego troche jest, jezeli chodzi o hfsc to jest ubogo, ja swoj skrypt zrobilem na podstawie skryptow Baroo i mojego kumpla ogolnie to musisz spatchowac sobie jajko potchem imq i jakims do p2p np ipp2p, skompilowac je, odpalic skrypt z HFSC i dziala spoko
Offline
...ale wracając do tematu to jest gdzieś w sieci jak to wszystko od podstaw zrobić, żeby niczego nie pominąć i nie stracić kolejnych tygodni :/[/quote]
[url=http://alfa.tailor.com.pl/imqhtb/2.4.26/imq_htb_pl.html]Tu[/url] możesz coś znaleźć.
Zarejestrowany użytkownik Linuksa #361563
Offline
Time (s) | Query |
---|---|
0.00010 | SET CHARSET latin2 |
0.00005 | SET NAMES latin2 |
0.00119 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.224.73.157' WHERE u.id=1 |
0.00084 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.224.73.157', 1732873922) |
0.00061 | SELECT * FROM punbb_online WHERE logged<1732873622 |
0.00068 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=5008 AND t.moved_to IS NULL |
0.00008 | SELECT search_for, replace_with FROM punbb_censoring |
0.00431 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=5008 ORDER BY p.id LIMIT 0,25 |
0.00127 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=5008 |
Total query time: 0.00913 s |