On 7/02/2011, at 2:33 AM, kellyremo wrote:

> 
> I have 2 script. Script "A", Script "B".
> 
> Script "A" is regulary watching the "dhcpacks" [dhcp release is configured to 
> 2mins] in the logs, for the past 2 minutes. it writes the MAC addresses to a 
> file [/dev/shm/dhcpacks-in-last-2min.txt] every 2 minutes. Ok, this is 
> working, active clients are in this file. Super!

"The past 2 minutes" is not a good indication of "active client" (unless that's 
your maximum lease time). It would be better to look in the dhcp.leases file 
somewhere under /var. There are at least Perl libraries (and very likely Python 
libraries too) for parsing this file easily.

> 
> Script "B": http://pastebin.com/raw.php?i=wvhwhPWu
> I'm trying to create a script, that watches the changes in 
> "/dev/shm/dhcpacks-in-last-2min.txt" file [in every 1 sec].

Why on earth are you putting it under /dev/shm/?

Surely /tmp, /var/tmp, or /var/lib/FOO would be better.

> Ok. But: my "watcher" script [the pastebined] is not working fine...sometime 
> it works, sometime it send that someone "XY logged out", but it's not true! 
> nothing happened, and the problem is not in the Script "A".

I think your log-out detection is faulty. The only way you could reasonably 
infer this is if either a DHCP RELEASE message has been received, or the lease 
has not been renewed after the lease-expiry.

What is your lease-time?

> Can someone help me point out, what am i missing? How can i watch a file [in 
> every sec], that contains only MAC addresses, and if someone doesn't get 
> dhcpack in 2 minutes, the file "/dev/shm/dhcpacks-in-last-2min.txt" changes, 
> and that clients MAC address will be gone from it, and i need to know, who 
> was it [pastebined my script..but somethings wrong with it].

I would suggest a solution based around dhcp.leases and something like gamin

Hope it helps,
Cameron

_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos

Reply via email to