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/.
Witam, czy jest mozliwe zerwanie isteniejacych polaczen na routerze, tak aby klient zaczal nawiazywac je ponownie ?? Chodzi mi dokładnie o zerwanie polaczen ESTABLSHED w /proc/net/ip_conntrack
Najlepiej gdyby sie to udalo dla 1 klienta, ale jak trzeba bedzie zerwac wszytkim to jakos przerzyje :).
Dzieki
Offline
no tak, ale wszystkie. a koledze chyba chodzilo o konkretne?
Offline
jeśli zapycha się ip_conntrack, można poleceniem:
sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=86400
zmniejszyć czas trwania połączenia (z reguły sa to połącznia źle zakończone przez programy p2p) zmniejszyć z domyślnych 5 dni na np 24 godz(86400s).
Ale niestety nie wiem dlaczego w jądrze 2.4.27 wartość można zmienić, a w 2.4.22 nie ma takiej zmiennej
Czy zmiana w pliku /źródłą_jądra2.4.22/net/ipv4/netfilter/ip_conntrack_proto_tcp.c tej wartości i skompilowanie jądra da zamierzony efekt?
Offline
no ja odpwiadalm na zadane pytanie ale mozna ustwic czas trwania nawianych polaczen
echo 360 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait echo 640 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
Offline
BiExi: zrestartowanie interfejsow sieciowych nie zrywa polaczen. moze gdyby przerwa byla dlozsza, ale niestety na to nie moge sobie pozwolic.
ustawienie czasu podrzymania polaczenia moze sie przydac, ale ma to swoje wady w postaci takiej ze trzeba jednak przeczekac te 24h
Offline
ale po co na 24h ustwiac czas jak widzisz na moim rzykladzie zas jest krutszy :]
pozatym resetujesz ysstem zapodajesz z wiersza polecen to co wyzej napisalam i masz spokuj....
Offline
te 24 godz. podałem przykładowo, czas można przecież ustawić dowolny.
tylko, że u mnie problemem jest to , że w 2.4.22 (2.4.27 nie ma problemu) nie mam tych zmiennych
ip_conntrack_tcp_timeout_close_wait i ip_conntrack_tcp_timeout_established
więc nie mogę wpisać nowych wartości.
jest tylko ip_conntrack_max[/quote]
Offline
ok, ale zmiana parametrow
[b]Kod:[/b]
echo 360 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait
echo 640 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established[/quote]
i tak wplywa tylko na nowo nawiazane polaczenia, te ktore juz sa ESTABLISHED dalej maja swoj ( domyslnie 5 dniowy ) czas "zycia"
ps. ustawienie czasu na tak mala wartos tez nie jest dobrym pomyslem, zaczynaja sie problemy ze sciaganiem wiekszych rzeczy
Nie ma nie idzie... jest nie umiem.
Offline
ustawienie czasu na tak mala wartos tez nie jest dobrym pomyslem, zaczynaja sie problemy ze sciaganiem wiekszych rzeczy[/quote]
Właśnie ten czas jest ciężki do ustalenia. Ogólnie wg mnie zmiana tych czasów to rozwiązanie zastępcze i żeby było całkiem dobrze najlepiej zastosować HTB z jakimś filtrowaniem
Zarejestrowany użytkownik Linuksa #361563
Offline
ewentualnie nakladac limity prywatnie uzytkownikom na nawiazywane polaczenia, ale moim zdaniem skracanie czasu nawiazanych polaczen jest dobra metodom bo wieszosc tych nawiazanych polacen juz nie powinna anwet istniec :]
Offline
BiExi: no wlasnie od tego cala sprawa sie zaczela, ja nalozylem ograniczenia ale problem jest w tym ze klient ma juz nawiazanych okolo 1600 polaczen i nic z nimi nie moge zrobic tylko czekac :)
Offline
wiesz podejzewam ze to czekanie nie wyjdzie CI na dobre bo restarcie servera (reboot) polazcenia nawiazane znikaja jesli sie zapoda limity zaraz po restarcie to jest spokuj i wtedy ustawiasz krutki czas na polaczenia nawiazane :] wtedy wszelkie polaczenia ktore sie przeterminowaly dosc szybko znikaja i nie zapelniaja tablicy conntrac co dodatkowo odciaza server :]
wiem bo ten problem w jedenj z sieci ktora sie opiekuje pojawil sie jakis rok temu :] ale od roku mam zalorzony limicik i nie mam ograniczony czas trwania tych polaczen i jest spokuj.....
Offline
http://lemat.priv.pl/index.php?m=page&pg_id=86
Natknąłem się dziś na to. Może pomoże.[/quote]
Właśnie o tym pisałem wyżej i już wiem że można. Skompilowałem jądro po zmianie w pliku:
źródłą_jądra2.4.22/net/ipv4/netfilter/ip_conntrack_proto_tcp.c
wartości zmiennej
Kod:
unsigned long ip_ct_tcp_timeout_established = 5DAYSz 5DAYS na 12HOURS i teraz domyślną wartością ip_conntrack_tcp_timeout_established jest 43200[s] (12 godz).
Zarejestrowany użytkownik Linuksa #361563
Offline
A wiesz może jak zastosować to:
${IPTABLES} -A FORWARD -p tcp -s ${net} -o ${pub} --dport 1024:65535 -m connlimit --connlimit-above 20 -j DROP
dokładniej chodzi mi w którym miejscu to dopisać. Czy przed masqaradą czy po oraz co zamiast zmiennych NET (ip łącza) oraz PUB.
Offline
nie zabardzo znam się jeszcze na tym ale jak ma limitować połączenia w twojej sieci to raczej już za maskaradą.
Offline
Mick:
po pierwsze sciagnij sobie Patch-O-Matic ( jezeli jeszcze nie masz http://www.netfilter.org/files/patch-o-matic-ng-20040621.tar.bz2) i po rozpakowaniu w katalogu POM odpal ./runme connlimit (przeczytaj sobie o innych ciekawych opcjach)
potem kompilujesz jajko z nowymi opcjami
------po tych zabiegach-------------------------
mozesz teraz przystapic do dopisywania regulek w firewallu
iptables -A FORWARD -p tcp -s $ip --dport 1024:65535 -m connlimit --connlimit-above 20 -j DROP
gdzie za $ip mozesz podstawic poszczegolnych uzytkownikow.
rozwiazanie to jest o tyle dobre ze ogranicza tylko ruch na "wysokich" portach, czyli mozna normalnie surfowac po www
Offline
Wszystko mam z p-o-m bo sobie wcześniej kompilowałem. Wiesz może jaka wartośc ograniczeń połączeń byłaby dobra tzn nie chce aby innym nie działało p2p ale chce aby robili to rozważnie a nie właczone naraz dc torrent i jeszcze edonkey.
Offline
ja mam teraz limit 100, jak mialem bez ograniczen to ilosc polaczen siegala 1600 na uzytkownika, po wprowadzeniu ograniczen zeden klient sie nie skarzyl ( jeszcze ) :)
Offline
te limity są dobre dla sieci , ale soft p2p się sztacha ... ludziska mi marudzili i zrezygnowałem .....
aaa.. zeby zerwac istniejące połączenia bez restartu trzeba posadzic networking i przeładowac moduł ip_conntrack (o ile skompilowany jako moduł :) ) i networking zapuscic od nowa :)
Offline
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00009 | SET NAMES latin2 |
0.00178 | 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='3.16.212.0' WHERE u.id=1 |
0.00089 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.16.212.0', 1738279259) |
0.00056 | SELECT * FROM punbb_online WHERE logged<1738278959 |
0.00071 | SELECT topic_id FROM punbb_posts WHERE id=6707 |
0.00005 | SELECT id FROM punbb_posts WHERE topic_id=821 ORDER BY posted |
0.00059 | 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=821 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00299 | 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=821 ORDER BY p.id LIMIT 0,25 |
0.00103 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=821 |
Total query time: 0.00886 s |