Погода: -12°C
  • Надо написать прожку под Линукс. Которая - бы стояла на "сервере" :))) и мониторила все машинки в сети, чтобы можно было зайти на него и посмотреть, какие машины включены, а какие - нет.
    Но также пресекала, точнее просто сигнализировала, что кто-то поменял себе ip самовольно!
    т.е. надо сделать проверку по mac!

    Все что написано мною - IMHO!

  • Как понимаю, это влегкую можно свести к команде ping. Если пинга нет, машина выключена, насчет смены ip случай посложнее. Но думаю на Перле это можно решить. Первую часть по крайней мере легко.

  • Делал я такое пару лет назад. Проблема на фирме была - сотрудники, работавшие по ночам, включали чужие машины и выходили в сеть (платный диалап).
    Решение. Маленький скрипт на перле запускает ping по всем ip в локальной сети раз в 5 минут и данные скидывает в БД на MySql. В любой момент можно было посмортеть html-страничку, на которой высвечивались сведения о работающих.неработающих машинах. С mac-адресами решили не извращаться - юзеры не настолько опытные( а опытный и сетевую карту мог бы поментять :-). К тому же делалось все в тайне от персонала и результат был - поймали нехороших человеков "с поличным".
    Единственная возможная сложность для Win-программера - формат вывода команды ping на Linux и NT несколько отличается, но любой грамотный человек такое настроит. Так что, пишите под Win, а для Linux чуть-чуть подкорректируете.

  • >... сигнализировала, что кто-то поменял себе ip самовольно!
    Если выход во внешний мир идет через линух-сарвер, то проще запретить воопбще все IP Вашей сети, кроме законных (host.allow-host.deny) тогда самовольная смена IP просто ничего не даст.

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

  • Интерестно мне все это стало, и решил я после работы попробовать таки написать подобную прогу, и вот что получилось:
    --------------

    #! /usr/bin/perl
    @ipaddr=("192.168.1.1","192.168.1.2","192.168.1.3");

    foreach $x (0..$#ipaddr)
    {

    system "ping $ipaddr[$x] -n 4 >res" || die "Error";

    open (FL, "res") || die;
    @res=;
    close(FL);

    unlink "res";

    foreach $y (0..$#res)
    {
    if ($res[$y]=~/TTL/i)
    {
    print "Компьютер $ipaddr[$x] включен!\n";
    goto nextaddr;
    }
    }
    print "Компьютер $ipaddr[$x] выключен!\n";

    nextaddr:
    }

    Правда писал ее под Виндовсом, но и в Линуксе должна без переделок работать.

  • 2chervick: дело в том, что у нас в сетке есть люди очень грамотные, блин!:улыб:т.е. надо еще и по мас делать проверку!:хммм:но вот КАК??

    2Rootman: твою пражку не пробовал, пасиб! но фишка в том, что если я пингую машинку из под rh 6.2 и машины нету в сетке, то пинг просто "вешается" т.е. снимается только по Ctrl+c!

    2"Тезкович":улыб:: дело в том, что у нас в сетке не все машины включены круглосуточно!!! просто есть люди, которые могут делать так:
    пишут скрипт, чтобы пинговались машины (как у меня на серваке) и когда машина выключена, то занимают ее ip! т.е. просто свой интерфейс down, а потом поднимает с другим ip. или в наглую занимает ip пользователя, который сидит под Виндами!!!
    у нас ведь в сетке машин 6 под Линухом висят и за ними сидят ДАЛЕКО не ламеры!

    Все что написано мною - IMHO!

  • Если в пинге использовать ключ -n (указывает количество пингов), то не должна вешаться.
    Насчет МАС адресов, его можно определить с помощью системной команды ARP.

  • Я думаю лучше будет поднять зарплату этим 6 человекам и поставить камеру наблюдения.

  • у нас ведь в сетке машин 6 под Линухом висят и за ними сидят ДАЛЕКО не ламеры!

    Слушай, а договориться? Если это не мелкое юзверьё - имхо, реально. Ну, или они тебя просто проверяют на профпригодность... Тогда докажи!

    Another one bites the dust!

Записей на странице:

Перейти в форум

Модератор: