LINUX.ORG.RU
ФорумAdmin

мониторинг соответствия IP-MAC


0

0

Не подскажете прогу для мониторинга соответствия IP-MAC ?
Нужно отследить смену IP адреса пользователем. В идеале хотелось бы найти программу, которая бы запоминала какой IP адрес использует конкретный компьютер и писала бы в лог предупреждения, если с этого физического адреса пойдет трафик с другим IP.

Есть какие варианты?

anonymous

arp -a|awk '{print $4,$2}'|sed '{s/[()]//g}' >> arp.ref
cat arp.ref |sort|uniq > arp.tmp
mv -f arp.tmp arp.ref
cat arp.ref |awk '{print $1}'|uniq -d|mail -s "Multiple ARP/IP pairs found for this ARP's" root

Соединяешь все это в один скрипт и ставишь его в крон шлюза с такой периодичностью, с какой хочешь следить за ситуацией(письма однако будешь получать с той же завидной регулярностью).

anonymous
()
Ответ на: комментарий от anonymous

первая версия доволько коряво получилась-письма будут идти независимо от того, найдены множественные пары для MAC адресов или нет, что быстро надоест. А посему так:

arp -a|awk '{print $4,$2}'|sed '{s/[()]//g}' >> arp.ref
cat arp.ref |sort|uniq > arp.tmp
mv -f arp.tmp arp.ref
RESULT=`cat arp.ref |awk '{print $1}'|uniq -d`
if [ "a$RESULT" != "a" ]; then
echo $RESULT|mail -s "Multiple MAC/IP pairs found for this ARPs" root
fi

Теперь это будет ругаться только когда появятся лишние пары и будет ругаться до тех пор пока не разрулишь ситуацию и не удалишь лишнюю строчку из arp.ref

anonymous
()
Ответ на: комментарий от anonymous

на почту постоянно идет <incomplite>, в arp.tmp такой записи нет, интересно откуда берет?

anonymous
()
Ответ на: комментарий от anonymous

Кстати, arp -a почему то выдает список всего из ~10 позиций, хотя к серверу обращаются не менее 60 компьютеров....
Почему так может быть и где подкрутить?

anonymous
()
Ответ на: комментарий от anonymous

arp таблица постоянно обновляется и старые записи оттуда удаляются. incomplete возникают когда машинка отключилась, а запись еще не исчезла, то есть машина про IP еще помнит, ARP'а уже нет. Скрипт постепенно соберет первую информацию по машинкам в твоей сети, когда они все постепенно появятся в сети. Чтобы избавиться от incomplete меняем первую строку скрипта с
arp -a|awk '{print $4,$2}'|sed '{s/[()]//g}' >> arp.ref
на
arp -a|grep -v incomplete|awk '{print $4,$2}'|sed '{s/[()]//g}' >> arp.ref

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.