Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » Ping-скрипты

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3

Открыть новую тему     Написать ответ в эту тему

KAPJICOH

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ, очень нужен скрипт, который бы пинговал заданный ip в локалке и показывал статус. Перерыл кучу всего есть только платные-навороченные.
Помогите!

 
Ping-скрипты

 
[SSI]

Цитата:
djelektronik: ета фича ни на одном нормальном сервере не будет включена

Код:
<pre><!--#exec cmd="ping 127.0.0.1 -n 1" --></pre>

 
[Perl]
http://cgi.resourceindex.com/Programs_and_Scripts/Perl/Internet_Utilities/
http://www.hotscripts.com/Perl/Scripts_and_Programs/Networking_Tools/Ping/index.html
Простейший случай:

Код:
#!/usr/bin/perl
# by Haze
print "ping 127.0.0.1";

 
* WebUtilНабор сетевых утилит для браузера, включающий  ping, whois, finger, nslookup, traceroute, dnsquery, host и календарь.
 
[PHP]
http://www.hotscripts.com/PHP/Scripts_and_Programs/Networking_Tools/Ping/index.html
http://php.resourceindex.com/Complete_Scripts/Internet_Utilities/
 
© by Cheery

Код:
<?  
$ip='адрес_машины';  
exec("ping -n 1 -w 200 $ip",$output, $status);
// под *nix заменить -n 1 на -c 1  
if ($status==0)  
echo "Online";  
else  
echo "Offline";  
?>  

Параллельное выполнение..
ping.php

Код:
 
<?    
$ip=$_GET['ip'];  
if (!preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/',$ip)) {echo "Sorry, wrong request"; exit;}
$down='down.gif';  
$up='up.gif';    
exec("ping -n 1 -w 200 $ip",$output, $status);  
header('Content-type: image/gif');  
// под *nix заменить -n 1 на -c 1    
if ($status==0)    
readfile($up);    
else    
readfile($down);    
?>
 
   
page.html  

Код:
 
....  
<img src='ping.php?ip=1.1.1.1'>  
<img src='ping.php?ip=1.1.1.2'>  
....  
 

 
 
 
© by Uriel:
windows:
Код:
<?php  
function pingIP($IP)  
{  
exec('ping ' .$IP, $past);  
$convert=convert_cyr_string($past[3],d,w);  
if (strpos($convert, "Ответ")===false)  
echo ("<font color=#000099><b>OFFLINE!</b></font>");  
else echo ("<font color=#00ff33><b>ONLINE!</b></font>");  
 
$convert1=convert_cyr_string($past[0],d,w);  
echo $convert1;  
}  
 
pingIP("127.0.0.1");  
?>  

Linux:  

Код:
<?php  
function ping($IP)  
{exec('ping -c 2 -i 0.2 ' .$IP,$ping);  
$nachalo = substr($ping[1],0,4);  
if ($nachalo!=="From")  
echo "<font color=green><b>ONline</b></font>";  
else  
echo "<font color=red><b>OFFline</b></font>";  
}  
 
echo "User - is ";  
ping('192.168.0.2');  
?>

 
 
[ASP]
http://www.hotscripts.com/ASP/Scripts_and_Components/Networking_Tools/Ping/index.html
 
[всё вместе ]
http://www.hotscripts.com/cgi-bin/search.cgi?bool=AND&query=ping&catid=all
 
 

Другие темы по скриптам:
* клиентские скрипты   (JavaScript, JScript, VBScript)
* серверные скрипты (Perl, PHP, ASP и т.д.)

    ~ скрипты для создания/редактирования HTML-кода в браузере и скрипты для редактирования файлов из браузера
    ~ скрипты службы знакомств
    ~ whois-скрипты
    ~ баннерообменные скрипты
    ~ скрипты счетчиков посещений
    ~ скрипты файлового обменника
    ~ скрипты чатов
    ~ скрипты фотогалереи
    ~ новостные скрипты  
    ~ скрипты и программы для рассылки
    ~ скрипты поиска
    ~ скрипты магазинов
    ~ сервисы, скрипты, софт для ведения дневников онлайн
    ~ скрипты гостевых книг
    ~ скрипты и службы голосований/опросов
    ~ скрипты и программы для создания карты сайта
    ~ доски объявлений
    ~ защита ссылок (antileech)
    ~ скрипт аукциона
    ~ скрипты каталогов (catalogue)
    ~ админ-панели для хостинга
    ~ скрипты для конвертации XLS и DOC/RTF-файлов в HTML
    ~ переадресовка по дням недели
    ~ phpMyAdmin: установка, настройка, проблемы
    ~ скрипты для открытия новых окон: на весь экран, заданного размера, в определённом месте экрана, неизменяемого размера и мн.др.

Всего записей: 10 | Зарегистр. 26-02-2002 | Отправлено: 02:02 13-03-2002 | Исправлено: Cheery, 00:33 16-04-2005
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shader

Цитата:
passthru(''ping -i 0.1 -c 10 -q '.$ip');

вы уверены, что использовали этот код? он нерабочий из за кавычек.. ну да ладно
 

Цитата:
-i 0.1 - это искусственная маленькая задержка. Если ее сделать -i 0, то это будет почти то же самое, что и опция -f. А теперь интереснее. Если 0.1 заменить на 0.2, то команда прекрасно выполняется и даёт полноценный вывод:

 
какая ОС? под виндами такое нельзя.. под шапкой пишет, что  

Цитата:
ping: cannot flood; minimal interval, allowed for user, is 200ms

а первая строчка именно с данными как и у вас. так что проблема проблема не в php, а в том, что система не разрешает использовать интервалы меньше 200 ms


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:54 25-04-2008
Shader



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
*смущённо чешет репу* да.. дело было не в бобине. Забыл совершенно, что -f рутовая опция, а отстутствие сообщения об ошибке только усугубило мой склероз.
 
Решение:

Код:
passthru('/usr/bin/sudo -u root ping -i 0.1 -c 10 -q 172.16.130.137');

И в файл /etc/sudoers добавить:

Код:
apache  ALL = NOPASSWD: /bin/ping

где apache - пользователь из-под которого запускается скрипт.

Всего записей: 54 | Зарегистр. 14-09-2003 | Отправлено: 20:19 25-04-2008
masik

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
как в перле сделать чтобы при нажатии на ссылку (например айпи адрес), открывалось окно (cmd) с пингом этого айпи???
 
ну например, представьте табличку со списком айпи адресов (html)
каждый айпи - типо ссылка
тыкаешь на эту ссылку, и на компе (с виндой) открывается окно cmd, с пингом этого айпи.. чтобы отрабатывалась команда:  
ping 192.168.0.1 -t -l 65
 

Всего записей: 17 | Зарегистр. 07-09-2003 | Отправлено: 10:29 14-08-2008 | Исправлено: masik, 10:34 14-08-2008
StasikOS

Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
masik: а Perl на стороне сервера мало относится к запуску нового процесса на браузере клиента. А то можно было бы запросто сделать запуск cmd с, например, очисткой пары системных папок или чего-то в этом роде.

Всего записей: 1 | Зарегистр. 18-03-2008 | Отправлено: 16:02 14-08-2008
kloha



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
$cmd=shell_exec("ping -c 1 -w 200 $ip")'
Кто мне может сказать что значат в этом коде -c и -w

Всего записей: 4 | Зарегистр. 05-03-2009 | Отправлено: 18:06 05-03-2009
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kloha
Windows:

Цитата:
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
            [-r count] [-s count] [[-j host-list] | [-k host-list]]
            [-w timeout] target_name
 
Options:
    -t             Ping the specified host until stopped.
                   To see statistics and continue - type Control-Break;
                   To stop - type Control-C.
    -a             Resolve addresses to hostnames.
    -n count       Number of echo requests to send.
    -l size        Send buffer size.
    -f             Set Don't Fragment flag in packet.
    -i TTL         Time To Live.
    -v TOS         Type Of Service.
    -r count       Record route for count hops.
    -s count       Timestamp for count hops.
    -j host-list   Loose source route along host-list.
    -k host-list   Strict source route along host-list.
    -w timeout     Timeout in milliseconds to wait for each reply.

- нет -c
Linux - много, поэтому
http://www.rt.com/man/ping.8.html
 


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:39 05-03-2009
kloha



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
<?php
 
////////// CONFIGURATION /////////////////
$ips_array=array("PC_1_NAME:xxxxxxx","PC_2_NAME:192.168.x.x","PC_3_NAME:192.168.x.x"); // здесь описательное имя name:ipaddress
////////// END OF CONFIGURATION //////////
function ping($PC,$ip){
$cmd=shell_exec("ping -c 1 -w 200 $ip");
 
  $dati_mount=explode(",",$cmd);
  if (eregi ("0", $dati_mount[1], $out)) {$connesso="<img src=\"off.gif\">";}
  if (eregi ("1", $dati_mount[1], $out)) {$connesso="<img src=\"on.gif\">";}
  $esito="$connesso [$ip] <b>$PC</b><br>";
return $esito;
}
 
while(list($k,$v)=each($ips_array)){
 $dati_ip=explode(":",$v);
 $esito=ping($dati_ip[0],$dati_ip[1]);
 echo $esito;
}
?>
 

Вот нашол такой скрипт для пинга .но мне надо чтобы пингавал все время с интервалом в пару минут .кто может подсказать как это сделать.

Всего записей: 4 | Зарегистр. 05-03-2009 | Отправлено: 15:52 08-03-2009
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kloha
Формируете html страницу и в заголовке (head) ее указываете
<meta http-equiv="refresh" content="5" />
где цифра - через сколько обновить страницу

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 18:22 08-03-2009
kloha



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня еще есть такой вопрос .Вот у меня идет постоянно пинг вдруг пинг пропал и я хочу что бы мне на почту пришло извещение или может можно сделать так что бы где то у меня логи записывались.

Всего записей: 4 | Зарегистр. 05-03-2009 | Отправлено: 19:45 08-03-2009
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kloha

Цитата:
и я хочу что бы мне на почту пришло извещение

www.php.net/mail

Цитата:
может можно сделать так что бы где то у меня логи записывались.

www.php.net/fopen
www.php.net/fwrite
www.php.net/fclose

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 17:56 09-03-2009
leputain



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
как с винды с моей тачки shell-скриптом порпинговать лист хостов и записать для них результат куда нить в отдельный файл? подскажите, пожалуйста.

Всего записей: 1434 | Зарегистр. 24-11-2002 | Отправлено: 08:38 01-07-2009
leputain



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вопрос решен софтиной ping probe

Всего записей: 1434 | Зарегистр. 24-11-2002 | Отправлено: 13:24 01-07-2009
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
leputain
а какое отношение это имеет к данной теме?
для этого есть Помощь сисадмину

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:15 01-07-2009
mark74

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Допустим, у меня есть десяток терминал-серверов, чью доступность мне надо проконтролировать.
 
Надо бы как-то это дело автоматизировать. Бегло тему просмотрел - ни чего подходящего не заметил. Мне видится такое решение: страница в нете обращение к которой инициирует сканирование заданного списка серверов, ну и выводит результат последнего сканирования...
 
кто видел этот скрипт и где его видели?

Всего записей: 485 | Зарегистр. 25-01-2009 | Отправлено: 08:07 26-08-2010
login8



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
А скриптов какие бы пинг измеряли незнаете?

Всего записей: 43 | Зарегистр. 31-03-2012 | Отправлено: 00:15 01-04-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3

Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » Ping-скрипты


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru