#!/usr/pkg/bin/bash # # dhcpwho - parsing script for dhcpd.leases file # sorts last records for every ip # v0.1, 2008(c) nikolay hristov # http://www.horizon9.org/~geroy/ # # may be used under BSD License # dpath="/var/db" for tmp in `cat $dpath/dhcpd.leases|grep ^lease|awk '{ print $2 }'|sort|uniq` do date=`cat /var/db/dhcpd.leases|grep -A 8 $tmp|grep start|awk '{ print $3" "$4 }'|tail -1` client=`cat /var/db/dhcpd.leases|grep -A 8 $tmp|grep client|uniq` if [ "$client" = "" ]; then client=" no hostname \"none\";" fi mac=`cat /var/db/dhcpd.leases|grep -A 8 $tmp|grep ethernet|uniq` echo "$tmp : $client" echo " $mac : $date" echo "" done