Freesco, NND, CDN, EOS

http://www.freesco.pl
Dzisiaj jest czwartek, 26 czerwca 2025, 01:35

Strefa czasowa UTC+2godz.




Nowy temat Odpowiedz w temacie  [ Posty: 11 ] 
Autor Wiadomość
Post: wtorek, 13 grudnia 2005, 22:45 
Offline
Użytkownik

Rejestracja: czwartek, 4 sierpnia 2005, 14:57
Posty: 338
Lokalizacja: Nowy Sącz
Postaram sie zobrazowac sytuacje, ktora nurtuje mnie od pewnego czasu. Otoz: zaczne od poczatku... posiadam mrtg, ktore zlicza mi ilosc obecnie korzystajacych z Internetu uzytkownikow na podstawie "niceshaper stats". Pojawila sie pewna niescislosc, mianowicie przyuwazylem, ze nawet po calkowitym wylaczeniu mojego komputera niceshaper stats wykazuje, iz jestem aktywny, malo tego pokazuje minimalny ruch w granicach 0,2 - 0,7. Jak nie trudno sie domyslec, przy obecnej sytuacji wykaz z mrtg nie jest dokladny. Zapytacie pewnie co jest tego przyczyna? Posiadam na serwerze przekierowanie na port 6881-6882 (Torrent). Stad bierze sie ten niepotrzebny ruch w sieci. W momecie kiedy wylaczam kompa przychodza odwolania na moj serwer, ktore przekazuje je na moje IP. Pakiety wracaja z flaga unreplied itp, co generuje niepotrzebny ruch w sieci, a nie tylko ja uzywam torrenta. Nie byloby problemu, gdyby te polaczenia zanikaly po jakiejs chwili, niestety potrafia tak krazyc nawet przez cala noc.
Czy ktos ma jakis pomysl jak nad tym zapanowac?

: [/] [] ()
echo 30 > /proc/sys/net/ipv4/netfilter/ip_conntrack_generic_timeout
echo 10 > /proc/sys/net/ipv4/netfilter/ip_conntrack_icmp_timeout
echo 5 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close
echo 20 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait
echo 320 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
echo 20 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_fin_wait
echo 30 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_last_ack


To tez juz u mnie dziala, niemniej jednak chyba nie spelnia sie w 100%.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 14 grudnia 2005, 00:39 
Offline
PGF

Rejestracja: niedziela, 14 lipca 2002, 14:33
Posty: 3234
Lokalizacja: Radziejów
POwiedz co serwer obchodzi, ze masz wylaczonego kompa?

Luzie ze swiata przysylaja ci pakiety dla twojego torrenta na port 6881 serwera i co serwer robi, przesyla zgodnie z przekierowaniem na adres twojego komputera i mrtg zlicza, dopiero jak eth1 stwierdzi ze nie ma takiego adresu w sieci to pakiety trafiaja dio krainy wiecznych lowow

A tak, miedzy nami to nie masz wiekszych problemów :?:

_________________
Nie jestem NEKROMANTĄ, nie wróżę z flaków!
Alkohol pity z umiarem nie szkodzi nawet w największych ilościach!
Przeczytaj nim zapytasz
Obrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 14 grudnia 2005, 17:54 
Offline
Użytkownik

Rejestracja: czwartek, 4 sierpnia 2005, 14:57
Posty: 338
Lokalizacja: Nowy Sącz
No trafiaja do krainy wiecznych lowow, ale mrtg na tej podstawie robi zle wykresy.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 14 grudnia 2005, 17:58 
Offline
Użytkownik

Rejestracja: czwartek, 19 sierpnia 2004, 15:18
Posty: 1273
Lokalizacja: Tychy
a kto ci obiecał że mrtg liczy prawidłowo userów na podstawie niceshapera ??


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 14 grudnia 2005, 17:59 
Offline
Użytkownik

Rejestracja: czwartek, 4 sierpnia 2005, 14:57
Posty: 338
Lokalizacja: Nowy Sącz
Nikt mi nie obiecal, taki mam poprostu skrypt i zlicza dobrze, gdyby nie powyzsza sytuacja.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 14 grudnia 2005, 18:02 
Offline
Użytkownik

Rejestracja: czwartek, 19 sierpnia 2004, 15:18
Posty: 1273
Lokalizacja: Tychy
to zmień na taki :
Cytuj:
#!/bin/sh
x=0
#jakie IP .. ja mam od 2-13
for (( ip=2 ; ip<=13 ; ip++ ))
do
hosty=`arping -f -w 2 -I eth1 192.168.0.$ip | grep "Unicast" | awk '{print $1}'`
if [ $hosty ]
then
let x+=1
fi
done

echo $x
hosty=`cat /etc/hosts | grep -v "^#" | grep [0123456789] | wc -l `
let hosty-=2
echo $hosty
uptime | sed -e 's/^.*up *//g' -e 's/, *[0-9] *u.*$//g'
hostname


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 14 grudnia 2005, 18:24 
Offline
Użytkownik

Rejestracja: czwartek, 4 sierpnia 2005, 14:57
Posty: 338
Lokalizacja: Nowy Sącz
Dziekuje, zaraz sprawdze co z tego wyniknie.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 16 grudnia 2005, 09:25 
Offline
Użytkownik

Rejestracja: czwartek, 4 sierpnia 2005, 14:57
Posty: 338
Lokalizacja: Nowy Sącz
Skrypt niezly, nie powiem, troszke go przerobilem na swoje potrzeby:
: [/] [] ()
#!/bin/sh
hosty_nieaktywne=11
hosty_aktywne=0

for (( ip=2 ; ip<=48 ; ip++ ))
do
hosty=`arping -f -w 2 -I eth1 192.168.14.$ip | grep "Unicast" | awk '{print $1}'`
if [ $hosty ]
then
let hosty_aktywne+=1
fi
done

echo $hosty_aktywne
echo $hosty_nieaktywne
uptime | sed -e 's/^.*up *//g' -e 's/, *[0-9] *u.*$//g'
hostname

Ma niestety jedna wade, mianowicie, kiedy petla przechodzi poprzez kolejne adresy IP zajmuje jej to sporo czasu, okolo 2 min. Czy daloby sie ja ograniczyc tylko do wybranych IP? Nie do zakresu, ale do wybranych ip. Zapytacie dlaczego akurat tak? Otoz moj zakres to 2 - 48, z czego wiekszosc adresow z tego zakresu jest nie uzywana, poniewaz moja adresacja jest oparta o numery mieszkan uzytkownikow. Gdyby ilosc komputerow sie powiekszyla, wzrosnolby zakres do powiedzmy 2 - 200 to moze byc problem, poniewaz skrypt moze sie wykonywac dluzsza chwile.

PS. dla zakresu 2 - 100 skrypt wykonuje sie 4 min 52 sec. :-)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 16 grudnia 2005, 12:00 
Offline
MODERATOR

Rejestracja: sobota, 30 lipca 2005, 14:08
Posty: 3984
Lokalizacja: Rzeszów
Nie wiem, czy elegancko, ale powinno byc skutecznie ;)
: [/] [] ()
for (( ip=2 ; ip<=48 ; ip++ ))

zamien na
: [/] [] ()
for ip in 1 2 5 19 36 41


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 16 grudnia 2005, 14:15 
Offline

Rejestracja: poniedziałek, 31 stycznia 2005, 19:55
Posty: 74
Lokalizacja: Oświęcim
Napisałem kiedyś skrypcik, który odpytywał mi hosty w sieci (głównie accesspointy) trochę inną metodą. Wykorzystywał nmap'a i pinga. Po przeróbce na arping'a wygląda on tak:
: [/] [] ()
#!/bin/sh

HOSTS_FILE="./hosts.conf"
hosty_aktywne=0
hosty_nieaktywne=0
IFACE=$1
# jesli w wywolaniu nie podano interfejsu przyjmuje, ze chodzi o eth1
if [ "$1" = "" ];
  then IFACE="eth1"
  else IFACE=$1
fi

echo "Pobieram liste hostow z pliku $HOSTS_FILE"
while read linia; do
  #wyeliminowanie linii bedacych komentarzem
  CFG_LINE="`echo $linia | grep -vE '^[[:space:]]*(#|$)'`"
  if [ "$CFG_LINE" != "" ]; then
    ip="`echo $CFG_LINE | cut -d' ' -f1`"
    opis="`echo $CFG_LINE | cut -d' ' -f2`"
    hosty=`arping -f -w 2 -I $IFACE $ip | grep "Unicast" | awk '{print $1}'`
    if [ $hosty ]; then
      echo -e "[\33[1;32m  UP  \33[1;37m]" $ip $opis
      let hosty_aktywne+=1
    else
      echo -e "[\33[1;31m DOWN \33[1;37m]" $ip $opis
      let hosty_nieaktywne+=1
    fi
  fi
done < $HOSTS_FILE

echo Aktywne: $hosty_aktywne
echo Nieaktywne: $hosty_nieaktywne
uptime | sed -e 's/^.*up *//g' -e 's/, *[0-9] *u.*$//g'
hostname


plik konfiguracyjny 'hosts.conf' wygląda mniejwięcej tak:

: [/] [] ()
10.2.2.12       Jasiek
10.2.2.22       Felek
10.2.2.24       Franek

Format podobny do /etc/hosts więc jak ktoś chce, można sobie go podpiąć do skryptu.

//EDIT: Dodałem kolorki w skrypcie


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 16 grudnia 2005, 20:52 
Offline
Użytkownik

Rejestracja: czwartek, 4 sierpnia 2005, 14:57
Posty: 338
Lokalizacja: Nowy Sącz
Oooo, rewelacyjny jest ten skrypt, o to mi wlasnie chodzilo. Bardzo dziekuje!


Na górę
 Wyświetl profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 11 ] 

Strefa czasowa UTC+2godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 20 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
cron
Technologię dostarcza phpBB® Forum Software © phpBB Group
Hosting: Compus-Net
RobertKonik.pl