View previous topic :: View next topic |
Author |
Message |
quantumwire Guru
Joined: 15 Oct 2003 Posts: 403 Location: Lausanne
|
Posted: Fri Sep 23, 2005 12:31 pm Post subject: Necessito scriptino in bash/perl/pyton... |
|
|
Ho bisogno di un semplicissimo scriptino (perferibilmente in bash) per monitorare il traffico rete totale sia in entrata che in uscita su una generica scheda di rete.
Chiamiamo questo scriptino "netmonitor".
Volendo basarmi sull'output di ifconfig:
Code: | [root@sigaro ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:80:C8:37:70:4F
inet addr:128.178.54.96 Bcast:128.178.54.255 Mask:255.255.255.0
inet6 addr: fe80::280:c8ff:fe37:704f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1910381 errors:0 dropped:0 overruns:0 frame:0
TX packets:113297 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:268007982 (255.5 Mb) TX bytes:10605309 (10.1 Mb)
eth1 Link encap:Ethernet HWaddr 00:80:C8:37:46:13
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::280:c8ff:fe37:4613/64 Scope:Link
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:28950 errors:0 dropped:0 overruns:0 frame:0
TX packets:633 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2861987 (2.7 Mb) TX bytes:64537 (63.0 Kb)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1200 errors:0 dropped:0 overruns:0 frame:0
TX packets:1200 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:99870 (97.5 Kb) TX bytes:99870 (97.5 Kb)
|
vi spiego cosa deve fare lo script "netmonitor":
1 - deve ricevere come parametri il device da monitorare ed il nome di un file dove poter scrivere il traffico tipo: "# netmonitor eth0 traffic.dat"
2 - deve leggere l'output di ifconfig e memorizzarsi i due valori in Mb(yte) per il traffico totale in entrata ed in uscita ("RX bytes:268007982 (255.5 Mb) TX bytes:10605309 (10.1 Mb)")
3 - deve aspettare un certo periodo di tempo (ad esempio in bash: sleep 10m)
4 - deve rileggere l'output di ifconfig e memorizzarsi i due nuovi valori per il traffico totale in entrata ed in uscita ("RX bytes:268007982 (400 Mb) TX bytes:10605309 (10.9 Mb)")
5 - deve fare la differenza tra i rispettivi valori del traffico (400 - 255.5 e 10.9 - 10.1) e scriverli in due colonne distinte sul file "traffic.dat"
6 - tornare al punto 3
Il file "traffic.dat" dovrebbe risultare cosi formattato:
Code: | 144.5 0.8
130.6 1.2
126.1 0.3
....
|
Chiaramente il plot delle due colonne mi dara' il traffico totale in & out avuto ogni 10 minuti dal momento in cui e' stato lanciato "netmonitor".
Grazie a tutti. |
|
Back to top |
|
|
comio Advocate
Joined: 03 Jul 2003 Posts: 2191 Location: Taranto
|
Posted: Fri Sep 23, 2005 1:26 pm Post subject: |
|
|
non me ne volere... ma la tua richiesta mi turba.
Prova a scrivere qualche riga di codice... magari ci dici cosa non ti va, e noi ti diamo una mano.
Ti consiglio di vedere: awk, cut, sed, sleep
ciao _________________ RTFM!!!!
e
http://www.comio.it
|
|
Back to top |
|
|
IlGab Guru
Joined: 26 Nov 2004 Posts: 486
|
Posted: Fri Sep 23, 2005 1:26 pm Post subject: |
|
|
Al posto che usare ifconfig non ti conviene leggere i dati da
? |
|
Back to top |
|
|
xchris Advocate
Joined: 10 Jul 2003 Posts: 2824
|
Posted: Fri Sep 23, 2005 1:27 pm Post subject: |
|
|
io vorrei il porting di autocad sotto linux..
chi me lo fa?
scusa la battuta... ma comio ha ragione
scrivi qc ed eventualmente ti aiutiamo
ciao _________________ while True:Gentoo() |
|
Back to top |
|
|
ProT-0-TypE Veteran
Joined: 20 Dec 2003 Posts: 1624 Location: Cagliari
|
Posted: Fri Sep 23, 2005 1:29 pm Post subject: |
|
|
usa direttamente questo:
Code: | * net-analyzer/vnstat
Available versions: ~1.1 1.4 ~1.4-r1
Installed: 1.4
Homepage: http://humdi.net/vnstat/
Description: Console-based network traffic monitor that keeps statistics of network usage |
_________________ [Vuoi guadagnare navigando?] |
|
Back to top |
|
|
.:deadhead:. Advocate
Joined: 25 Nov 2003 Posts: 2963 Location: Milano, Italy
|
|
Back to top |
|
|
Cazzantonio Bodhisattva
Joined: 20 Mar 2004 Posts: 4514 Location: Somewere around the world
|
Posted: Fri Sep 23, 2005 1:49 pm Post subject: |
|
|
Io invevce preferirei un isola caraibica alle montagne innevate e due dolci presenze al posto di una (ma rinuncerei alla trapunta)... mi accontento in ogni caso...
A parte gli scherzi ma è un progetto di script che hai intenzione di creare te oppure stai cercando uno che te lo faccia? (immagino a pagamento... in questo caso mi sa che il gentoo forum non è il posto adatto per offrire contratti di lavoro ) _________________ Any mans death diminishes me, because I am involved in Mankinde; and therefore never send to know for whom the bell tolls; It tolls for thee.
-John Donne |
|
Back to top |
|
|
quantumwire Guru
Joined: 15 Oct 2003 Posts: 403 Location: Lausanne
|
Posted: Fri Sep 23, 2005 2:57 pm Post subject: |
|
|
Ho provato vnstat e va bene... ha comunque il problema dei 4Gb che avrei anch'io scrivendo lo script. Credo infatti sia un limite nel numero di bits devoluti all'interno del kernel per la conta del numero di bytes trasmessi e ricevuti.
Il problema e' allora come monitorare il traffico gi una rete ad 1GB dato che il transfer rate e' di circa 90/100 Mb/sec... per trasmettere/ricevere 4Gb basta meno di un minuto.
PS: Non e' un progetto... e' solo che stanno monitorando il traffico della rete che sto gestendo e devo sapere se quello che "loro" mi dicono corrisponde a verita'... e' solo un problema di tempo perche questo monitoraggio "esterno" e' partito oggi e finira' domani ed io l'ho saputo solo all'ultimo minuto... tutto qua.
Chiedo scusa se la mia richiesta per la scrittura di uno script "alla buona" e' sembrata un "fammelo tu che io non ne ho voglia mezza" quando invece era un "mi potete aiutare che sto con l'acqua alla gola ed ho bisogno di qualcosa di funzionante al volo".
FLAME ON
Questo atteggiamento mi ricorda quello che quasi tutti noi abbiamo nel guidare la nostra macchina ovvero... pensiamo che tutti gli altri guidatori siano per definizione dei "cogli__i". Immaginate la solita scena: il semaforo diventa verde e la macchina che avete davanti non parte immedatamente... e' molto piu' difficile per noi pensare che magari quella macchina possa avere un problema.
FLAME OFF
Last edited by quantumwire on Fri Sep 23, 2005 3:22 pm; edited 5 times in total |
|
Back to top |
|
|
comio Advocate
Joined: 03 Jul 2003 Posts: 2191 Location: Taranto
|
Posted: Fri Sep 23, 2005 3:00 pm Post subject: |
|
|
quantumwire wrote: | Ho provato vnstat e va bene... ha comunque il problema dei 4Gb che avrei anch'io scrivendo lo script. Credo infatti sia un limite nel numero di bits devoluti all'interno del kernel per la conta del numero di bytes trasmessi e ricevuti.
Il problema e' allora come monitorare il traffico gi una rete ad 1GB dato che il transfer rate e' di circa 90/100 Mb/sec... per trasmettere/ricevere 4Gb basta meno di un minuto. |
pensato di usare qualche cosa di serio... tipo MRTG, ntop (ok... avevo detto serio...)?
ciao _________________ RTFM!!!!
e
http://www.comio.it
|
|
Back to top |
|
|
akiross Veteran
Joined: 02 Mar 2003 Posts: 1170 Location: Mostly on google.
|
Posted: Fri Sep 23, 2005 3:01 pm Post subject: |
|
|
Giusto per stare in topic con la firma di comio: http://www.tldp.org/LDP/abs/html/
Ohh, non serve che ci ringrazi! Qui siamo tutti disponibili a linkare manuali da leggere.
Buon lavoro
EDIT: Scherzi a parte, lo scriptino l'ho capito ma non mi e' chiaro cosa c'entrano i 4gb. _________________ Libera scienza in libero stato.
Horizon of Events |
|
Back to top |
|
|
makoomba Bodhisattva
Joined: 03 Jun 2004 Posts: 1856
|
Posted: Fri Sep 23, 2005 3:05 pm Post subject: |
|
|
quantumwire wrote: | Il problema e' allora come monitorare il traffico gi una rete ad 1GB dato che il transfer rate e' di circa 90/100 Mb/sec... per trasmettere/ricevere 4Gb basta meno di un minuto. |
aumenti la frequenza di campionamento e tieni conto dell'azzeramento del contatore |
|
Back to top |
|
|
ProT-0-TypE Veteran
Joined: 20 Dec 2003 Posts: 1624 Location: Cagliari
|
Posted: Fri Sep 23, 2005 3:05 pm Post subject: |
|
|
mrtg e ntop sono abbastanza diversi da quello che voleva fare lui (e hanno molte più funzioni che probabilmente non gli servono)
per quanto riguarda il problema dei 4gb... beh dovresti far andare lo script ogni minuto _________________ [Vuoi guadagnare navigando?] |
|
Back to top |
|
|
Ic3M4n Advocate
Joined: 02 Nov 2004 Posts: 3489 Location: Bergamo.
|
Posted: Fri Sep 23, 2005 3:18 pm Post subject: |
|
|
oppure utilizzare più variabili ed aumentarne una ad una soglia dell'altra...
es banale: centinaia decine unità... |
|
Back to top |
|
|
randomaze Bodhisattva
Joined: 21 Oct 2003 Posts: 9985
|
Posted: Fri Sep 23, 2005 8:10 pm Post subject: |
|
|
quantumwire wrote: | Questo atteggiamento mi ricorda quello che quasi tutti noi abbiamo nel guidare la nostra macchina ovvero... pensiamo che tutti gli altri guidatori siano per definizione dei "cogli__i". Immaginate la solita scena: il semaforo diventa verde e la macchina che avete davanti non parte immedatamente... e' molto piu' difficile per noi pensare che magari quella macchina possa avere un problema. |
Verissimo. Sarebbe molto piú facile se il guidatore della macchina con il probema spendesse una frazione di secondo per mettere le doppie frecce.
Esattamente come una tua precisazione del tipo "purtroppo ne ho bisogno entro oggi e con le mie conoscenze di scripting non ci riuscirei" sarebbe stata gradita. Certo, non sarebbe stata in grado di assicurarti una soluzione ma sicuramente qualche acida risposta in meno la avresti avuta. _________________ Ciao da me! |
|
Back to top |
|
|
xchris Advocate
Joined: 10 Jul 2003 Posts: 2824
|
Posted: Fri Sep 23, 2005 10:02 pm Post subject: |
|
|
cmq non mi pare che ci fosse tutto questo acidume...
in fin dei conti si sta scherzando
se in qualunque modo ti ho offeso accetta la me scuse...
era solo uno scherzo ad un post un po' insolito
ciao _________________ while True:Gentoo() |
|
Back to top |
|
|
GiRa l33t
Joined: 07 Apr 2005 Posts: 717
|
Posted: Sat Sep 24, 2005 5:45 am Post subject: |
|
|
Beh: primo Come fare domande in modo intelligente.
Poi: io ti consiglio di usare iptables per fare una cosa del genere. Se hai molta molta fretta installi webmin, nella sezione net c'è il bandwidth monitor basato su iptables.
Edit: detesto il parsing di phpbb che immagina che io non chiuda i tag quando in realtà li chiudo (e li apro a mano). |
|
Back to top |
|
|
akiross Veteran
Joined: 02 Mar 2003 Posts: 1170 Location: Mostly on google.
|
Posted: Sat Sep 24, 2005 6:57 am Post subject: |
|
|
Sara' che ho da poco la patente (9 mesi), sara' che sono paziente, sara' che sono intelligente, ma non ho mai suonato un clacson o fatto i fari per dire a qualcuno di muoversi al semaforo (anzi, mai usati in strada se non per segnalazione )
Si comunque concordo col dire che potevi anche risparmiarti un atteggiamento simile. Per carita' nessuno sa tutto, pero' venire a chiedere "mi date una mano?" oppure venire a dire "fatemi questo perche' mi serve", la sostanza e' anche quella (io te lo avrei fatto in 5 minuti lo scriptino, anche volentieri), ma e' la forma che non va bene, per questo ti ho linkato l'ABS anziche' farti lo script.
@GiRa: non puoi aprirli e chiuderli con lo stesso metodo? fai prima mi sa
Ciauz _________________ Libera scienza in libero stato.
Horizon of Events |
|
Back to top |
|
|
GiRa l33t
Joined: 07 Apr 2005 Posts: 717
|
Posted: Sat Sep 24, 2005 7:53 am Post subject: |
|
|
akiross wrote: |
@GiRa: non puoi aprirli e chiuderli con lo stesso metodo? fai prima mi sa |
E' quello che faccio! Faccio tutto a mano altrimenti cerca il mouse, muovilo, fatica! E' phpBB che ha voglia di essere luserfriendly |
|
Back to top |
|
|
|