I've been using
Net::DNS::Resolver, which you can put the dns server name in the constructor. Something like the following:
use Net::DNS::Resolver;
my $nameserver = "10.1.10.42";
my $resolver = Net::DNS::Resolver->new(
nameservers=>[$nameserver],
recurse =>1,
debug =>0, );
my @addresses = ();
my $host ='yahoo.com';
my $query = $resolver->search($host);
if ($query){
foreach my $rr ($query->answer) {
next unless $rr->type eq "A";
push @addresses,$rr->address if $rr->address =~/^[\d\.]+$/;
}
} else {
warn "query failed: ", $resolver->errorstring, "\n";
}