in reply to Missing subroutine

There isn't a "built-in" subroutine called "lookupaddress" in perl. There are, of course, several different ways of performing DNS queries.

I'm guessing you got the idea about a sub called "lookupaddress" from the Perl for System Administration Book. In the book, they offered several different ways of creating the "lookupaddress" subroutine.

Here's one of them. It uses Net::DNS, which may be of interest to you.

# this is straight from the o'reilly book. # the liberal use of globals is their idea, not mine :) # It populates a global hash without returning it, # and is probably only useful in the context of the book # exercise - sub lookupaddress{ my($hostname,$server) = @_; $res = new Net::DNS::Resolver; $res->nameservers($server); $packet = $res->query($hostname); if (!$packet) { warn "Unable to lookup data for $hostname from $server!\n"; return; } # stores the last RR we receive foreach $rr ($packet->answer) { $results{$server}=$rr->address; } }

Replies are listed 'Best First'.
Re: Re: Missing subroutine
by Kasper (Initiate) on Aug 03, 2001 at 11:27 UTC
    Thanks for the info, you're right I am using the Perl for System Administration book. I think I need to be a little more patient and actually READ the book istead of just pulling things out of it. I'll try to be more careful about asking questions in the future. I'm new to Perl and this site is great, tons of information and usable stuff. Thanks again for your answer.