Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: Dns lookups

by hippo (Curate)
on Dec 11, 2013 at 17:04 UTC ( #1066661=note: print w/ replies, xml ) Need Help??


in reply to Dns lookups

Any reason not to use gethostbyname() instead?

perl -MSocket -e '@h=gethostbyname($_) and print "$_\n".inet_ntoa($h[4])."\n\n" for @ARGV;' perlmonks.org bing.com example.com

Still no good for IPv6, obviously, but a bit less wheel reinvention.


Comment on Re: Dns lookups
Select or Download Code
Re^2: Dns lookups
by perlaintdead (Scribe) on Dec 11, 2013 at 23:17 UTC

    haha. yeah i guess i should have looked into that module a bit more. I was just using what i was familiar with; needed something quick and dirty.

      and also you don't need those parens for gethostbyname

Re^2: Dns lookups
by perlaintdead (Scribe) on Dec 12, 2013 at 00:47 UTC

    you can also get rid of that pesky array

    use Socket;print "$_\n".inet_ntoa((gethostbyname$_)[4])."\n\n" for @AR +GV;

      The array is there to cope with the possibility of an unresolvable host. If you try your example above with args like

      ./pllookup.pl dklghslfhslgshj.com foo.com

      the unresolvability of dklghslfhslgshj.com would cause it to die on the first argument, whereas with the array it will just skip that and carry on to the remaining args. To my mind that's a better UX but others may disagree.

        The golfer in me couldn't resist

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1066661]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (17)
As of 2014-10-23 14:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (125 votes), past polls