Jump to letter: [
3ABCDEFGHIJKLMNOPQRSTUVWXYZ
]
perl-Net-Ping - check a remote host for reachability
- Description:
This module contains methods to test the reachability of remote hosts on a network.
A ping object is first created with optional parameters, a variable number of hosts
may be pinged multiple times and then the connection is closed.
You may choose one of six different protocols to use for the ping. The "tcp" protocol
is the default. Note that a live remote host may still fail to be pingable by one or
more of these protocols. For example, www.microsoft.com is generally alive but not
"icmp" pingable.
With the "tcp" protocol the ping() method attempts to establish a connection to the
remote host's echo port. If the connection is successfully established, the remote
host is considered reachable. No data is actually echoed. This protocol does not
require any special privileges but has higher overhead than the "udp" and "icmp"
protocols.
Specifying the "udp" protocol causes the ping() method to send a udp packet to the
remote host's echo port. If the echoed packet is received from the remote host and
the received packet contains the same data as the packet that was sent, the remote
host is considered reachable. This protocol does not require any special privileges.
It should be borne in mind that, for a udp ping, a host will be reported as unreachable
if it is not running the appropriate echo service. For Unix-like systems see inetd(8)
for more information.
If the "icmp" protocol is specified, the ping() method sends an icmp echo message to
the remote host, which is what the UNIX ping program does. If the echoed message is
received from the remote host and the echoed information is correct, the remote host
is considered reachable. Specifying the "icmp" protocol requires that the program be
run as root or that the program be setuid to root.
If the "external" protocol is specified, the ping() method attempts to use the
Net::Ping::External module to ping the remote host. Net::Ping::External interfaces
with your system's default ping utility to perform the ping, and generally produces
relatively accurate results. If Net::Ping::External if not installed on your system,
specifying the "external" protocol will result in an error.
If the "syn" protocol is specified, the ping() method will only send a TCP SYN packet
to the remote host then immediately return. If the syn packet was sent successfully,
it will return a true value, otherwise it will return false. NOTE: Unlike the other
protocols, the return value does NOT determine if the remote host is alive or not
since the full TCP three-way handshake may not have completed yet. The remote host is
only considered reachable if it receives a TCP ACK within the timeout specified. To begin
waiting for the ACK packets, use the ack() method as explained below. Use the "syn"
protocol instead the "tcp" protocol to determine reachability of multiple destinations
simultaneously by sending parallel TCP SYN packets. It will not block while testing each
remote host. demo/fping is provided in this distribution to demonstrate the "syn" protocol
as an example. This protocol does not require any special privileges.
Packages