in reply to Adding an nslookup to a log script

I've never used it, but Net::Nslookup seems to do what you want.

my $name = nslookup(host => $ip, type => "PTR") || $ip;

I'd like to make three suggestions:

1) Cache the results of your queries so you do lookup the same IP addresses over and over again. This will greatly improve your script's performance.

if (!$name_cache{$ip}) { $name_cache{$ip} = nslookup(host => $ip, type => "PTR") || $ip; } my $name = $name_cache{$ip};

2) You may want to insert a slight pause between lookups to give the DNS server a chance to breath. I don't know the proper etiquette in this situation.

3) You may want to make the reverse lookup optional. It can put a fair load on the DNS server, and it can slow down your program greatly.