4.27 Jak sprawdzić, które komputery w sieci są włączone?

Ostatnia modyfikacja: 2003-03-26 19:38:14

Najprostszym sposobem na sprawdzenie czy dana maszyna jest dostępna w sieci jest wysłanie do niej tzw. ping'a. Komputery działające odpowiedzą na takie zapytanie natomiast maszyny wyłączone rzecz jasna takowej nie udzielą. W praktyce skrypt realizujący takie zapytanie może wyglądać tak:

<?php
exec
('ping -c1 -q tu_ip_hosta'$skan);
preg_match("/([0-9]+)% packet loss/"join(' '$skan), $wynik);

if (
$wynik[1] != '100')
    echo 
'On-Line';
else
    echo 
'Off-Line';
?>

Pierwsza linia wysyła ping do danego komputera, druga linia natomiast za pomocą regexpa wyciąga procent pakietów, które zginęły. Jeśli liczba ta wynosi 100% to znaczy że nasz host docelowy jest nieosiągalny. W powyższym przykładzie pięciokrotnie pingujemy maszynę docelową aby wstępnie wykluczyć problemy z siecią. Skanując jednak sieć lokalna w której mamy pewność przepływu danych spokojnie licznik możemy ustawić na 1 aby zbyt nie wydłużać czasu wykonania skryptu.


Powrót do indeksu