Newsgroup: it.comp.os.linux.sys
Titolo: network check: l'ho inventato io! :-)

Non so se vi e` mai capitato di avere un server collegato
permanentemente ad internet che, di tanto in tanto, diventa
apparentemente morto, perche` un router, o uno switch di rete, sono, a
loro volta, apparentemente morti, e quindi non c'e` traffico di rete.
Beh, a me ogni tanto succede, ed in genere risolvo scollegando
l'alimentazione degli stessi, per poi ricollegarla.
Fin qui tutto bene, ma cio` implica che qualcuno deve sempre essere
presente.
Un paio di settimane or sono, pero`, mentre ero fuori per un week-end,
un cliente cui proprio serviva la posta, mi chiama disperato perche il
mailserver era irragiungibile. Ho dovuto prendere l'automobile e
ritornare alla base, rovinandomi il fine settimana.
A questo punto serviva una soluzione, economica e veloce.
Ho preso un po' di componenti elettronici riciclati qua e la, ho
scritto una decina di righe di codice in C, ed ora ho nel mio crontab
un programma, che chiameremo "network check", il quale esegue il ping
dal server x al router y e, se c'e` errore, scollega l'alimentazione
di tutti i componenti di rete da x ad y, per poi ricollegarla. E mi
genera pure un log file! :-)
Funziona sulla porta parallela, di cui usa un solo bit.
Sara` stupido, magari esisteva gia` (non lo so, io l'ho inventato da
zero), ma ora sono un uomo libero e pronto per le meritate vacanze.
:-)))))

 zero), ma ora sono un uomo libero e pronto per le meritate vacanze.
No, adesso devi pubblicare lo schema ed il codice!
Davide
-- 
Impossible, adj.:
	(1) I wouldn't like it and when it happens I won't approve;
(2) I can't be bothered; (3) God can't be bothered.  Meaning (3) may
perhaps be valid but the others are 101% whaledreck.
		-- Chad C. Mulligan, "The Hipcrime Vocab"

 :-)))))
Complimenti, ma io darei anche un'occhiata a routers e switch apparentemente
morti.
Ho macchine cisco con uptimes di quattro anni circa, il tuo caso mi
preoccupa. :-)
saluti affidabili

No, adesso devi pubblicare lo schema ed il codice!
Non si puo` trovare un metodo che mi consenta di guadagnare qualche
euro, tipo pubblico il software gratis, ma vendo l'hardware, o
pubblico lo schema gratis, ma vendo il software? :-))))



Ma quanto costano le tue macchine Cisco? Le mie (roba consumer), tre
anni fa, le ho pagate meno di 600'000 Lire (oggi spenderei un terzo).
Direi che, con la differenza, mi accontento del mio dispositivo, ed il
resto dei soldi me lo spendo in cene con gli amici, o in vacanze.
Ovviamente se hai le macchine in una sala macchine dedicata, stai
tranquillo. Ma non si sa mai. Magari il gruppo di continuita` ha un
sussulto. Magari un fulmine passa in zona e manda in shock qualcosa.
Chissa`?! Io preferisco avere una procedura automatica che almeno
tenta il ripristino. Se poi non ci riesce, almeno intenvengo sapendo
che ho a che vedere con un guasto reale, e mi porto direttamente
switch e router di ricambio, nonche` fattura da saldare. :-)
Peraltro, adesso che dispongo di un log degli interventi del
dispositivo, potro` stabilire con esattezza quante volte la rete va in
palla, stilando anche una classifica di affidabilita` dei componenti.
Sta cosa e` iniziata ieri mattina quasi per gioco, ma adesso mi pare
proprio di aver realizzato una cosa utilissima, tipo un watchdog.

 pubblico lo schema gratis, ma vendo il software? :-)))
Software Gpl (che magari c'è chi ti ci fa le gui per il cliente ecc ecc
Hardware impaccalo tu e vendilo a basso costo :)
-- 
Giepi The Great | Linux User #33229 | Powered By Fedora Core 1.0
"I signori Mason e Steinberg, suppongo"
"La supposta e' giusta"
(Nati con la camicia)

 euro, tipo pubblico il software gratis, ma vendo l'hardware, o
Nessuno ti impedisce di pubblicare lo schema e _vendere_ il software.
Basta che lo vendi con licena GPL poi...
Davide
-- 
Is your job running?  You'd better go catch it!

 pubblico lo schema gratis, ma vendo il software? :-))))
Per come la vedo io, con il niente tempo a disposizione che abbiamo tutti,
se fai un bel pacchettino e vendi il tutto ad una cifra abbordabile, avrai
frotte di sistemisti ai tuoi piedi... :-)
Se invece vuoi €$cifrone_galattico allora sarà meglio che vai di brevetto...
ciao
fb
-- 
Ci vuole tutta una vita per capire che non é necessario capire tutto
(anonimo cinese)
Linux user # 313470


complimenti!
AlfaZulu

frotte di sistemisti ai tuoi piedi... :-)
In effetti, si puo` fare un oggetto che costa tipo 50 Euro, o al
massimo 100, se serve pilotare piu` cose. Ma ora che ho cominciato,
sinceramente vedo infinite applicazioni. Perche` fermarsi alla rete?
Ci sono stampanti che hanno bisogno di reset, ci sono server che hanno
bisogno di reset, ci sono operatori e programmatori che hanno bisogno
di scosse ad alta tensione, per svegliarsi, ecc, ecc. Tutte cose che
posso controllare col mio dispositivo, aumentando il numero di bit
impiegati. :-)
Lasciatemi un po' di tempo, che qui mi viene fuori un'astronave
interstellare! :-)

 pubblico lo schema gratis, ma vendo il software? :-))))
Esistono gia' robe del genere, ma costano troppo. Se riesci a fare
un'hardware rivendibile (che si possa guardare e maneggiare senza il
rischio di rimanerci attaccati, insomma), invece che con parallela
dotata di seriale (PIC), USB o meglio ethernet
(
http://www.rabbitsemiconductor.com/
) o ibrido totalemte modulare
(
www.ibutton.com
), a fare il software poi ci vuole poco e c'e' sempre
qualcuno in grado di farlo meglio di come lo possa fare chiunque altro
(in altre parole, sperare di vendere il software per un hardware open,
IMO e' follia. Quanti di quelli che hanno un UPS APC usano l'orrido
software di APC invece di apcupsd?).
Perche' ad esempio ho il sospetto che la tua ciavatta telecomandata non
sia in grado di dare feedback sullo stato della presa, ne di rilevare se
un'apparecchiatura stia assorbendo corrente o meno. Funzioni che con una
parallela e' difficile implementare, se mai ne venisse voglia.
	ampliatamente,
	   Cthulhu
-- 
http://www.rlyeh.it/Rantolii/

 Sara` stupido, magari esisteva gia` (non lo so, io l'ho inventato da
Certo che esiste gia`. Ad esempio un controller ad 8 vie lo trovi qui:
http://electronickits.com/kit/complete/elec/ck1621.htm
Viene fornita anche la documentazione da cui si ricavano i valori da 
mandare in output sulla parallela per attivare/disattivare ognuno degli 
otto relay presenti nel box. Per Linux basta usare uno skeleton tipo questo:
------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <asm/io.h>
#define base 0x378           /* printer port base address */
#define value 255            /* numeric value to send to printer port */
main(int argc, char **argv)
{
    if (ioperm(base,1,1))
     fprintf(stderr, "Couldn't get the port at %x\n", base), exit(1);
    outb(value, base);
}
------------------------------------------------------------------
-- 
Vincenzo

 sinceramente vedo infinite applicazioni. Perche` fermarsi alla rete?
Giusto, oggi la Lan, domani il mondo! Io mi offro come distributore
nei Paesi Bassi.
Davide
-- 
The first time, it's a KLUDGE!
The second, a trick.
Later, it's a well-established technique!
		-- Mike Broido, Intermetrics

 
Esistono varie soluzioni, come ad esempio le ciabatte intelligenti della
Cyclades, con il vantaggio che puoi sapere lo stato della presa (magari
l'avevi lasciata volutamente spenta per alimentare solo in caso di
emergenza il server di backup) e la corrente assorbita (utile per capire
se ci sono malfuzionamenti). Il costo però è tipicamente di 50€ a presa
c.a. (ci sono ciabatte da 8 prese a 400€ quindi), il tutto controllabile
da seriale.
Le controindicazioni di staccare corrente con un piccolo relé a 12V sono
le seguenti:
se l'alimentatore del server si cuoce, magari per il tempo necessario al
fusibile per intervenire i contatti del relé si fondono tra loro
rendendolo di fatto inutilizzabile in futuro (si risolve magari
montandolo su zoccolo).
I relé piccolini tengono correnti fino a 3A, e un server PUO' assorbire
tranquillamente di piu'. Anche in questo caso succede che il relé non
riesce a staccare i contatti.
Infine molti dei server, soprattutto rack-mount, oggi disponibili NON
hanno la parallela ma solo la seriale (dovresti modificare lo schema
inserendo ad esempio un MC14469 per la conversione e indirizzamento) o
USB (e li ti divertiresti parecchio). Esistono anche dei piccoli
integrati che implementano Ethernet + TCP/IP direttamente sul chip, ma
il costo ovviamente sale.
Io ho adottato una soluzione simile alla tua, ma mi son permesso di
inserirmi in parallelo sul tasto di reset e power ATX (quindi due
contatti per computer) per intervenire di li. La cosa ovviamente non è
universalmente applicabile, perchè è antipatico mettere le mani sul
server, ma mi sono evitato di avere a che fare, nella mia circuiteria a
bassa tensione, con la 220V.

parallela e' difficile implementare, se mai ne venisse voglia.
Funzioni che e` possibile implementare ma che, al momento, esulano dal
mio progetto. Sulla parallela ho gia` costruito diversi sistemi di
controllo, che operano correntemente in alcuni musei italiani...


http://electronickits.com/kit/complete/elec/ck1621.htm
Vabbe`, pazienza, ho scoperto l'acqua fresca. :-)
Ma si tratta di due cose diverse, comunque. Ovvio che utilizzino i
medesimi concetti di base.

riesce a staccare i contatti.
Si, ma io non devo togliere alimentazione ad un server, solo a router
e switch di rete, che non posso credere assorbano cosi` tanto (i miei
assorbono 20W circa). Il software GIRA su un server, ma puo` girare
anche su un vecchio 386/486/k5, montato ad hoc, solo per questi
controlli. Gli basta una parallela ed una connessione di rete.
Per resettare il server, basta eseguire un check software sullo stato
della rete, e nel caso di rete non funzionante (magari scheda di rete
impazzita), si puo` lanciare un reboot...
Insomma, bisogna pur mettere dei paletti, altrimenti veramente si
parla del sesso degli angeli. E si, lo so che ti chiami Angelo. :-)

#include <asm/io.h>
Questo funziona solo su piattaforma i386. Bisognerebbe usare un altro
io.h. Adesso non ho la documentazione sottomano, dovrei fare un
accesso ssh altrove, e sapete quanto sia difficile :-)

e-person wrote:

Puoi costruire l'aggeggio su richiesta no ?!?
Ciao.
-- 
*** Linux user # 198661 --- ICQ 33500725 ***
***  Home  
http://web.tiscali.it/kailed
  ***
       ***  Powered by SuSeLinux  ***