Mailinglisten-Archive |
Norbert Pfeiffer wrote: >>Meine Vermutung ist, >>daß VB einen Broadcast macht und guckt, wer antwortet. > > denke ich auch mal ... > wie macht man einen "Broadcast" - <dummguck> > > Das Ganze liegt im Schichtmodell doch weit weg vom OS, > da muesste sich doch was platformneutrales nauen lassen ? Also ich kann dir sagen wie man einen Broadcast PING macht, wenn Dir das etwas nützt. Aber keine Ahnung wie das in PHP zu implementieren geht. 192.168.1.255 ----------^^^ das ist die Broadcat Adresse, alle Rechner die auf ICMP Ping Signale antworten antworten darauf. [evtl antworten einige aber nicht, weil die Firewall des entsprechenden Rechners das verbietet]. in meiner Version von Ping geht das am einfachsten so: ping -bw 1 192.168.1.255 b broadcast (ich weiss, dass 255 die Broadcast Adresse ist) w deadline Specify a timeout, in seconds, before ping exits regardless of how many packets have been sent or received. In this case ping does not stop after count packet are sent, it waits either for deadline expire or until count probes are answered or for some error notification from network. ACHTUNG! In früheren Versionen von Ping wurde "b" nicht gebraucht und "w" hatte eine andere Bedeutung. Ich benütze folgenden ping unter GNU/Linux in der Version: ds_(at)_work:~> ping -V ping utility, iputils-ss020124 ds_(at)_work:~> Durch die obige Kommandozeile ist folgendes sicher: 1.) Alle Hosts die innerhalb von einer Sekunde antworten können werden gezählt 2.) Kein Host wird doppelt gezählt (da ein weiter Ping erst nach 1 Sekunde geschickt werden würde, da ist aber die DEADLINE bereits vorbei und wir zählen ihn nicht mehr 3.) Die Ausführung ist SICHER nach 1 Sekunde beendet! Hilft das? Grüße, dominik
php::bar PHP Wiki - Listenarchive