Command line
ping runs as suid root -- this is required when using the
icmp protocol, normal ping.
Net::Ping, by default, utilizes udp to attempt a connection to the echo port on the remote host. You may also attempt tcp connections to the echo service port.
When hosts are reported as "not returning ping requests" for your script, it means they aren't running the echo service.
In order to use icmp you will need to run your script as suid root -- otherwise you'll have to wrangle with return codes from the command line ping using system calls or backticks.
By the way, if there's a large number of hosts and a significant portion tend to be down, you might consider using something like merlyn's Parallel::ForkManager to ping hosts in parallel batches.
Matt
Update: after reading the docs, switched udp and tcp in my statements regarding the defaults.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.