LImit połączeń i czas zwłoki
|
stiepa |
Dodano 20-03-2007 19:42
|
User
Posty: 65
Dołączył: 01/02/2007 18:33
|
#--------------------------------------------
#WRT54 Script Generator v1.01
#(C) 2006-2007 Robert "Robson" Mytkowski
#--------------------------------------------
modprobe ipt_TTL
iptables -t mangle -I POSTROUTING -o br0 -j TTL --ttl-set 1
TCA="tc class add dev br0"
TFA="tc filter add dev br0"
TQA="tc qdisc add dev br0"
SFQ="sfq perturb 10"
tc qdisc del dev br0 root
tc qdisc add dev br0 root handle 1: htb
tc class add dev br0 parent 1: classid 1:1 htb rate 1024kbit
$TCA parent 1:1 classid 1:10 htb rate 256kbit ceil 900kbit prio 2
$TQA parent 1:10 handle 10: $SFQ
$TFA parent 1:0 prio 2 protocol ip handle 10 fw flowid 1:10
iptables -t mangle -A POSTROUTING -d 192.168.1.4 -j MARK --set-mark 10
tc qdisc add dev br0 ingress
$TFA parent ffff: protocol ip u32 match ip src 192.168.1.4 flowid :1 police rate 200kbit mtu 12k burst 10k drop
iptables -I FORWARD -s 192.168.1.4 -p tcp -m connlimit --connlimit-above 200 -j DROP
Taki skrypcik dla jednego usera tnący połaczenia do 200 jednak user nawiązuje do 1000 i dopiero po jakims czasie skrypt go przycina, działać musi działac bo jednak likwiduje nadmiar połączeń ale tak około po paru min. dopiero też tak macie i czy ewentualnie jest jakiś parametr czasowy określający tą zwłokę? |
|
|
|
szablix |
Dodano 20-03-2007 20:00
|
User
Posty: 42
Dołączył: 05/11/2006 00:12
|
@stiepa
Autor programu czyli robson, pisal w jakims watku ze ten limit jest na polaczenie TCP, a programu typu emul takze generuje polaczenie UDP ktore nie sa bodajze przycinane przez ten skrypt, jesli pamiec mnie nie myli to tak mniej wiecej bylo wytlumaczone, jesli poszukasz na forum to znajdziesz ten watek, jesli wprowadzilem ciebie lub kogos w blad to przepraszam i prosze o sprostowanie
pozdrawiam
szablix |
|
|
|
stiepa |
Dodano 20-03-2007 20:13
|
User
Posty: 65
Dołączył: 01/02/2007 18:33
|
TCP na UDP jest tak około 50/50 fakt skrypt przycina tcp/ip a co mozna zrobic z UDP ? jak dać jakieś ograniczenie na firewallu?
Bo raczej layer7 na torenta tego nie wyłapie (na 90% protokoły torenta) tzn transmisje może wyłapać jesli chodzi o klasyfikacje ale ja klasyfikacje mam na portach+niektóre usługi chodzi mi jedynie o ilość połaczeń od usera ale all.
Edytowany przez stiepa dnia 20-03-2007 20:19
|
|
|
|
szablix |
Dodano 20-03-2007 20:32
|
User
Posty: 42
Dołączył: 05/11/2006 00:12
|
@stiepa
Niestety na to pytanie Ci nie odpowiem, poniewaz moja wiedze juz tu nie siega
pozdrawiam
szablix |
|
|
|
danek |
Dodano 21-03-2007 07:40
|
User
Posty: 49
Dołączył: 28/04/2006 13:34
|
musisz dodac:
iptables -I FORWARD -p udp -s 192.168.x.x -j DROP
iptables -I FORWARD -p udp -s 192.168.x.x -m limit --limit 3/s -j ACCEPT
poza tym było |
|
|
|
robsonn |
Dodano 21-03-2007 09:34
|
OL Maniac
Posty: 1337
Dołączył: 04/03/2006 13:35
|
Wszystko już zostało napisane. Mogę dodać jedynie, że connlimit nie ubija aktualnie otwartych połączeń tylko ogranicza tworzenie nowych. Tzn. że jeśli user zdążył wyprodukować dużą ilość połączeń nie zostaną one zamknięte (router po timeoucie automatycznie je usunie) tylko zablokuje mu możliwość tworzenia nowych.
Polecam zmniejszyć wartości tomeoutow pakietów TCP i UDP - będą szybciej uwalniane przez router.
Tomato ... since 0.01
WRT54G v2.2 Tomato 1.10 Turbo
WRT54GL v1.0 Tomato 1.07 Turbo
PAP2 NA v1.0 Stock firmware 3.1.5(LS) + IPFON
WPC11B v4.0 modded peek drivers
[b]WRT54 Script Generator - obowi?zkowe narz?dzie ka?dego Link
|
|
|
|
stiepa |
Dodano 21-03-2007 10:32
|
User
Posty: 65
Dołączył: 01/02/2007 18:33
|
Dzięki będę testował |
|
|
|
szablix |
Dodano 22-03-2007 13:58
|
User
Posty: 42
Dołączył: 05/11/2006 00:12
|
Witam
W temacie tym poruszony zostal limit polaczen wiec postanowilem sie dolaczyc do watku ze swoimi pytaniami. Generuje skrypt z geneatorka robsona wyglada on nastepujaco:
Cytat #--------------------------------------------
#WRT54 Script Generator v0.21
#Copyright (C) 2006 Robert "Robson" Mytkowski
#--------------------------------------------
TCA="tc class add dev br0"
TFA="tc filter add dev br0"
TQA="tc qdisc add dev br0"
SFQ="sfq perturb 10"
tc qdisc del dev br0 root
tc qdisc add dev br0 root handle 1: htb
tc class add dev br0 parent 1: classid 1:1 htb rate 1020kbit
$TCA parent 1:1 classid 1:10 htb rate 560kbit ceil 560kbit prio 2
$TCA parent 1:1 classid 1:11 htb rate 460kbit ceil 460kbit prio 2
$TQA parent 1:10 handle 10: $SFQ
$TQA parent 1:11 handle 11: $SFQ
$TFA parent 1:0 prio 2 protocol ip handle 10 fw flowid 1:10
$TFA parent 1:0 prio 2 protocol ip handle 11 fw flowid 1:11
iptables -t mangle -A POSTROUTING -d 192.168.1.2 -j MARK --set-mark 10
iptables -t mangle -A POSTROUTING -d 192.168.1.3 -j MARK --set-mark 11
tc qdisc add dev br0 ingress
$TFA parent ffff: protocol ip u32 match ip src 192.168.1.2 flowid :1 police rate 130kbit mtu 12k burst 10k drop
$TFA parent ffff: protocol ip u32 match ip src 192.168.1.3 flowid :1 police rate 120kbit mtu 12k burst 10k drop
iptables -I FORWARD -s 192.168.1.2 -p tcp -m connlimit --connlimit-above 100 -j DROP
iptables -I FORWARD -s 192.168.1.3 -p tcp -m connlimit --connlimit-above 100 -j DROP
i teraz czy musze cos jeszcze dodac do skryptu aby laczna wartosc TCP/UDP - wynosila 100 dla danego usera ??
Jesli musze dodac czy moglbym prosic o podanie tego bo niestety moja wiedza w tej dziedzinie tak daleko nie siega.
@robson teraz pytanie/propozycja kieruje do ciebie iz w skrypcie mozna ustawic limit polaczen co 50, czy mozna jakos wartosci wprowadzic indywidualnie ?? wedlug wlasnego upodobania
z gory bardzo dziekuje wszystkim za odpowiedzi
pozdrawiam
szablix |
|
|