Files
dnsmasq/contrib/reverse-dns/reverse_dns.sh
2015-02-23 21:38:11 +00:00

30 lines
532 B
Bash

#!/bin/bash
# $Id: reverse_dns.sh 4 2015-02-17 20:14:59Z jo $
#
# Usage: reverse_dns.sh IP
# Uses the dnsmasq query log to lookup the name
# that was last queried to return the given IP.
#
IP=$1
qmIP=`echo $IP | sed 's#\.#\\.#g'`
LOG=/var/log/dnsmasq.log
IP_regex='^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$'
if ! [[ $IP =~ $IP_regex ]]; then
echo -n $IP
exit
fi
NAME=`tac $LOG | \
grep " is $IP" | head -1 | \
sed "s#.* \([^ ]*\) is $qmIP.*#\1#" `
if [ -z "$NAME" ]; then
echo -n $IP
else
echo -n $NAME
fi