On Wed, 2004-05-19 at 11:51, iulian wrote:
> PS. am facut tot cu scripturi shell + iptables si grafice cu traficul pe
> > fiecare utilizator in parte. Daca te intere da un mail si detaliez.
> M-ar interesa si pe mine chestia asta pentru ca as vrea sa fac grafice
> pentru fiecare ip de pe o interfata (am mai multe alias-uri pe fiecare
> interfata din router, care sunt gw pentru mai multe retele).
>
mrtg e f.simpatic pt ca accepta date de oriunde cu conditia sa fie
structurate cam asa: 4 linii de text:
1->un nr ce reprezinta valoarea pentru input (desen cu verde)
2->--||-- pentru output (linia albastra)
3-> \__ linii de text ce se vor copia identic in pag de web (nu-s
4-> / importante)
si practic din kestia asta potzi face scripturi shel din care sa
generezi cele 4 linii si sa le pazezi lui mrtg.
Cum am facut eu pentru graficele clientilor:
in iptables am facut 2 chainuri (fromastral si eth1)
fromastral are ceva de genu: (pentru fiecare client in parte)
iptables -A fromastral -d 192.168.2.100 -j ACCEPT
dupa cum se numeste chainu.... va dati seama ca ia traficul ce vine de
la astral si ce merge catre client (download)
la fel se face si pentru upload:
iptables -A eth1 -s 192.168.2.100 -m mac --mac-source 00:08:C7:19:04:6C
-j ACCEPT
aici ii filtrez pe clienti di dupa mac (sa nu isi skimbe vreunul ip-ul
sa faca trafic in contul altuia) (in caz ca nu stie sa isi sckimbe maku
:) )
si ce mai tre sa faci e sa treci cele 2 chainuri in FORWARD
iptables -F FORWARD
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED -j
fromastral #pentru monitorizat traficul
iptables -A FORWARD -i eth1 -j eth1
acum pe baza la ce am facut in iptables pot genera graficele. in
scriptul urmator generez cele 4 linii necesare (io lam salvat in
/bin/stat):
##########################CrissT##########################
#incoming
iptables -L fromastral -nvx| grep "$1 "|awk '{print $2}'
#outgoing
iptables -L eth1 -nvx| grep "$1 "|awk '{print $2}'
#uptime
date
#name of target
echo $1
###########################################################
scriptu se executa cu parametru adresa ip a clientului.EX:
[EMAIL PROTECTED] root]# stat 192.168.2.107
15739775
1856928
Tue May 18 13:34:34 EEST 2004
192.168.2.107
si mai trebuie adaugat in mrtg.cfg clientul:
### 192.168.2.100
Target[100_astral]: `/bin/stat 192.168.2.100`
MaxBytes[100_astral]: 1250000
Title[100_astral]: Graficul Transferului
PageTop[100_astral]: <H1>192.168.2.100</H1>
===================================================================
in principiu se poate face grafic cam pentru orice. trebuie sa va faceti
numai scriptul care sa scoata cele 4 linii.
Am reusit sa fac grafic cu mrtg si pentru spatiul de pe hdd (vad pe
grafice cand se umplu partitiile)
Sper ca v-am putut ajuta cu ceva :) si spor la scriptuit :)
Pentru cei mai avansati in programarea bash: poate gasiti voi ceva
optimizari pentru gramada de pipeuri pe care le-am tras in scripturi
(banuiesc ca awk stie, problema e ca nu stiu eu (awk) suficient pentru a
nu mai lega atatea awkuri in pipe
CrissT
>
>
> ---
> Detalii despre listele noastre de mail: http://www.lug.ro/
>
---
Detalii despre listele noastre de mail: http://www.lug.ro/