Echelon_ Napisano Marzec 26, 2005 Zgłoszenie Share Napisano Marzec 26, 2005 Witam, od pewnego czasu próbuję jakoś administrować siecią. Niestety praktycznie wcale nie znam się na (_linuxie_ → Linuksie) ORT. Pewien kolega skonfigurowal dla mnie przyciecia dla mojej sieci (HTB), ale niestety stracilem z nim koontakt i zwracam sie do was. Co musze dopisac i w ktorych liniach, aby moc przyciac jeden z komputerow w mojej sieci bardziej, niz pozostale (np. 213.227.73.135)? Gosc mi podpadl, a nie chce kompletnie zablokowac mu dostepu do internetu, tylko przyciac go do np. 5 KB/s. Proszę, nie odsyłajcie mnie do manuali, bo moje studia naprawde nie pozwalają mi na spędzanie czasu na czytaniu setek, czy tysięcy stron i experymantowaniu . Jeżeli ktoś potrafi mi pomoć, to bardzo proszę. A może wiecie co dokladnie wpisac, zeby np. dluznikow wrzucic do jakiejs bardzo wolnej klasy (tak to sie chyba nazywa)? Proszę o podawanie dokładnych komend i linijek, w ktore mam je wpisac. Wiem, ze to nieladnie z mojej strony, ale w inny sposob naprawde sobie nie poradze (probuje juz od ponad miesiaca). W mojej sieci niektore komputery sa na maskaradzie, a niektore na adresach zewntrznych (213.227.73.130-142). Konfiguracja HTB: IN_SPEED="96kbit ceil 160kbit" OUT_SPEED="96kbit ceil 160kbit" echo -n "HTB: Tworze klasy i filtry" tc qdisc del dev eth0 root handle 1: htb 2>/dev/null > /dev/null; echo -n "." tc qdisc del dev eth1 root handle 1: htb 2>/dev/null > /dev/null; echo -n "." tc qdisc add dev eth0 root handle 1: htb default 100; echo -n "." tc qdisc add dev eth1 root handle 1: htb default 100; echo -n "." tc class add dev eth0 parent 1: classid 1:1 htb rate 1Mbit prio 3; echo -n "." tc class add dev eth1 parent 1: classid 1:1 htb rate 100Mbit prio 3; echo -n "." # po LAN transfer s pelna predkoscia tc class add dev eth1 parent 1:1 classid 1:2 htb rate 100Mbit prio 3 tc filter add dev eth1 parent 1: protocol ip prio 3 u32 match ip src 213.227.73.128/28 flowid 1:2 tc filter add dev eth1 parent 1: protocol ip prio 3 u32 match ip src 192.168.1.0/24 flowid 1:2 echo "ok" echo "HTB: Ustawiam regulki dla:" echo " - adresow rutowalnych z podsieci 213.227.73.128/28" i=131 while [ $i -le 142 ]; do ii=$[i+5000] # IN tc class add dev eth1 parent 1:1 classid 1:$ii htb rate $IN_SPEED prio 3 burst 3k tc filter add dev eth1 parent 1: protocol ip prio 3 u32 match ip dst 213.227.73.$i flowid 1:$ii # OUT tc class add dev eth0 parent 1:1 classid 1:$ii htb rate $OUT_SPEED prio 3 burst 3k tc filter add dev eth0 parent 1: protocol ip prio 3 u32 match ip src 213.227.73.$i flowid 1:$ii i=$[i+1] done echo " - adresow wewnetrznych z podsieci 192.168.1.0/24" i=2 while [ $i -le 254 ]; do ii=$[i+1000] # IN tc class add dev eth1 parent 1:1 classid 1:$ii htb rate $IN_SPEED prio 3 burst 3k tc filter add dev eth1 parent 1: protocol ip prio 3 u32 match ip dst 192.168.1.$i flowid 1:$ii # OUT ## iptables -A POSTROUTING -t mangle -o eth0 -s 192.168.1.$i -j MARK --set-mark $ii tc class add dev eth0 parent 1:1 classid 1:$ii htb rate $OUT_SPEED prio 3 burst 3k tc filter add dev eth0 parent 1: protocol ip handle $ii fw flowid 1:$ii i=$[i+1] done echo "HTB: Koniec" Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
mynus Napisano Marzec 26, 2005 Zgłoszenie Share Napisano Marzec 26, 2005 jednego kolesia tak latwo nie przytneisz jesli chcesz uzyc swojej konfiguracji, powod jest taki ze stosujesz w niej petle, wiec od razu przycinasz wszystkim z tego zakresu, jesli chcesz wybrac tylko tego jednego kolesia to musisz pozmieniac ten kod. na szybkiego to tak: ------ciach--- echo " - adresow rutowalnych z podsieci 213.227.73.128/28" i=131 while [ $i -le 134 ]; do ii=$[i+5000] if [ $i = 135 ]; then i=136; fi # IN tc class add dev eth1 parent 1:1 classid 1:$ii htb rate $IN_SPEED prio 3 burst 3k tc filter add dev eth1 parent 1: protocol ip prio 3 u32 match ip dst 213.227.73.$i flowid 1:$ii # OUT tc class add dev eth0 parent 1:1 classid 1:$ii htb rate $OUT_SPEED prio 3 burst 3k tc filter add dev eth0 parent 1: protocol ip prio 3 u32 match ip src 213.227.73.$i flowid 1:$ii i=$[i+1] done #tutaj mozesz pobawic sie tymy wartosciami 96kbit i 160kbit, pamietaj ze to jest w bitach a nie w bajtach (1bajt = 8 bitow), wiec pozmniejszaj je tak jak chcesz # IN dla tego 135 tc class add dev eth1 parent 1:1 classid 1:5135 htb rate 96kbit ceil 160kbit prio 3 burst 3k tc filter add dev eth1 parent 1: protocol ip prio 3 u32 match ip dst 213.227.73.135 flowid 1:5135 # OUT dla tego 135 tc class add dev eth0 parent 1:1 classid 1:5135 htb rate 96kbit ceil 160kbit prio 3 burst 3k tc filter add dev eth0 parent 1: protocol ip prio 3 u32 match ip src 213.227.73.135 flowid 1:5135 --------ciach-------------- jak widzisz, dodalem tam cos takiego w petli: if [ $i = 135 ]; then i=136; fi spowoduje to ze, adres ip z koncowka 135 zostanie pominiety, potem po zakonczneiu petli dla tego jednego wyselekcjowanego adresu przydzielilem pasmo, i tyle pewnie da sie to zrobic ladniej, ale nie programuje w bashu.... Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Echelon_ Napisano Marzec 27, 2005 Autor Zgłoszenie Share Napisano Marzec 27, 2005 Bardzo Ci dziękuję )). Zadziałało! A czy da się to zastosować dla ip wewnetrznych (czyli jakiegos ip 192.168.1.xxx)? Probówałem przerobic tą tę regulke i wrzucic dla jakiegos IP wewnetrznego, ale niestety nie dziala. EDIT: Jednak nie działa. Do numeru 134 jest OK, 135 jest przyciety, ale wszystkie numery kolejne ((_wogole_ → w ogóle) ORT → w ogóle) ORT nie podlegaja zadnemu przycieciu, tak, jakby nie byly uwzglednione Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
hamster Napisano Kwiecień 7, 2005 Zgłoszenie Share Napisano Kwiecień 7, 2005 Witam polecam niceshaper`a http://www.niceshaper.mikule.net/ tym narzedziem przytniesz kazdemu transfer wedle upodobania pozdr hamster Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
mynus Napisano Kwiecień 8, 2005 Zgłoszenie Share Napisano Kwiecień 8, 2005 Jednak nie działa. Do numeru 134 jest OK, 135 jest przyciety, ale wszystkie numery kolejne ((_wogole_ → w ogóle) ORT → w ogóle) ORT nie podlegaja zadnemu przycieciu, tak, jakby nie byly uwzglednione a racja, pomylilem sie przy wpisywaniu zakresu: zamiast: echo " - adresow rutowalnych z podsieci 213.227.73.128/28" i=131 while [ $i -le 134 ]; do ii=$[i+5000] powinno byc: echo " - adresow rutowalnych z podsieci 213.227.73.128/28" i=131 while [ $i -le 142 ]; do ii=$[i+5000] ta liczba 142 oznacza ostatnia cyferke IP a ja wpsialem u gory 134 to z tego rozpedu Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się