>Интересует именно алгоритм ? Точно! =)
>Хватаем все пакеты приходящие на хост,
>если источника нет в куче, добавляем и пишем в лог
>что появился если известен, обновляем метку времени,
>периодически смотрим у кого слишком старая метка времени,
>того исключаем
>из кучи и пишем в лог, что отключился.
>УСЁ..
Значит так. Вообщем эта система включенных-выключенных компов будет сидеть на единственном сервере в сети - на той машине, которая у всех прописана гойтом и которая раздает всем инет. То есть, можно предположить, что машины все время будут что-то хотеть от этого сервера и сервер будет все время ловить пакеты от них.
Честно говоря, я не очень понимаю, зачем выпендриваться-ловоить пакеты. Если пакет пришел, то сервер автоматически апгрейдет свою таблицу мак адресов. То есть можно просто смотреть таблицу. (пожалуйста, поправьте меня если я не прав). Простблема в другом - если мы будем раз в n минут смотреть эту таблицу - есть вероятность, что мы попадем в том момент, когда компьютер включен, но записть в арп таблице на сервере устарела и в логах он будет показан как выключенный (именно для этого в скрипте, который я приводил в первом посте сначала идет nmap, чтобы было какое-то общение с машинами и арп таблица обновилась). Но, как я уже говорил - nmap - это зло - нафиг нужна дополнительная нагрузка на сеть если ее можно избежать (я очень надеюсь, что ее можно избежать =)
>прим1. хватать можно только заголовки пакетов, была-бы адресная часть
>прим2. перевод хоста с промиск вряд-ли поможет, современные свичи и так >отрежут всё лишнее
Извини, 2-ое примечание немножко не понял, может быть "в" промиск?
>прим3. алг. настолько элементарен, что как правило ищутся более сложные >решения
Если не сложно, пожалуйста, расскажи об альтернативных вариантах?
Заранее большое спасибо.