#!/usr/bin/env perl use strict; use warnings; use Net::DNS::Resolver; my $l_ip = '216.92.34.251'; # one of the perlmonks.org servers my @nameservers = qw[8.8.8.8 8.8.4.4]; # Googles DNS Servers my $l_dns_name = $l_ip; my $l_dns = Net::DNS::Resolver->new( nameservers => \@nameservers ); my $l_response = $l_dns->query($l_ip); if($l_dns->errorstring eq 'NOERROR') { my $l_record; foreach $l_record ($l_response->answer()) { print 'Got: ', $l_record->type(), ' -> ', $l_record->name(), "\n"; if($l_record->type() eq 'PTR') { $l_dns_name = $l_record->name(); last; } } } else { print $l_dns->errorstring, "\n"; }