PDA

View Full Version : [PHP] Test Client su rete LAN


cagnaluia
09-08-2006, 09:25
Ciao,

sto facendo una paginetta con una tabella che contienetutte le macchine della rete che hanno un IP fisso.
Vorrei far si che, premendo un bottone, uno script mi faccia il test della connettività e mi risponda se Presente o meno.
Tipo Ping...

Però ho gia provato uno script che usa il ping del sistema e ci sono svariati problemi:
1. non è detto che su windows, il ping, sia lo stesso che su linux.
2. è moooolto lento. (se devo fare un test su piu macchine ci mette troppo).
3. dovrei inoltre riportare il risultato del ping su una variabile, fare un check delle parole per vedere la positività del risultato...

esiste una funzione integrata di PHP ? alla quale passo un indirizzo IP (una maschera, un gateway...) e mi dice se questo esiste o meno? In modo molto rapido.... oppure in modo parallelo se le richieste sono multiple?

andbin
09-08-2006, 10:47
sto facendo una paginetta con una tabella che contienetutte le macchine della rete che hanno un IP fisso.
Vorrei far si che, premendo un bottone, uno script mi faccia il test della connettività e mi risponda se Presente o meno.
Tipo Ping... Non mi risulta che tra le funzioni del PHP ce ne sia una specifica per fare il ping. Forse si potrebbero usare i socket, ho trovato del codice <qui> (http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=1786&lngWId=8).
In ogni caso manca una cosa importante ... PHP non è in grado di gestire più thread, quindi mancherebbe comunque il "parallelismo" utile per velocizzare l'esecuzione di più ping.

Credo che la soluzione migliore sia quella di fare questa cosa in un altro linguaggio, ad esempio in Perl. È in grado di gestire più thread e con dei moduli specifici (es. Net::Ping) può sicuramente eseguire il ping in modo semplice.
Non ho codice alla mano ma credo che sia fattibile.

cagnaluia
09-08-2006, 12:04
grazie e aggiungo anche questo, gentilmente offerto da un utente del forum html.it

http://forum.html.it/forum/showthread.php?s=&threadid=1016889