PING(8)PING(8)NAMEping - send ICMP ECHO_REQUEST packets to network hosts
SYNOPSISping [ -dfqrv ] host [ packetsize [ count [ preload ]]]
DESCRIPTION
The DARPA Internet is a large and complex aggregation of network hard‐
ware, connected together by gateways. Tracking a single-point hardware
or software failure can often be difficult. Ping utilizes the ICMP
protocol's mandatory ECHO_REQUEST datagram to elicit an ICMP
ECHO_RESPONSE from a host or gateway. ECHO_REQUEST datagrams
(``pings'') have an IP and ICMP header, followed by a struct timeval,
and then an arbitrary number of ``pad'' bytes used to fill out the
packet. Default datagram length is 64 bytes, but this may be changed
using the command-line option. Other options are:
-v Verbose output. ICMP packets other than ECHO RESPONSE that are
received are listed.
-q Quiet output. Nothing is displayed except the summary line on
termination.
-f Flood ping. Outputs packets as fast as they come back or one
hundred times per second, whichever is more. For every
ECHO_REQUEST sent a period '.' is printed, while for ever
ECHO_REPLY received a backspace is printed. This provides a
rapid display of how many packets are being dropped.
-r Bypass the normal routing tables and send directly to a host on
an attached network. If the host is not on a directly-attached
network, an error is returned. This option can be used to ping
a local host through an interface that has no route through it
(e.g., after the interface was dropped by routed(8C)).
-d Set the SO_DEBUG option on the socket being used.
When using ping for fault isolation, it should first be run on the
local host, to verify that the local network interface is up and run‐
ning. Then, hosts and gateways further and further away should be
``pinged''. Ping sends one datagram per second, and prints one line of
output for every ECHO_RESPONSE returned. No output is produced if
there is no response. If an optional count is given, only that number
of requests is sent. Round-trip times and packet loss statistics are
computed. When all responses have been received or the program times
out (with a count specified), or if the program is terminated with a
SIGINT, a brief summary is displayed. If preload is given, ping sends
that many packets as rapidly as possible before falling into its normal
mode of behavior.
This program is intended for use in network testing, measurement and
management. It should be used primarily for manual fault isolation.
Because of the load it could impose on the network, it is unwise to use
ping during normal operations or from automated scripts.
DETAILS
For those that care. An IP header without options is 20 bytes. An
ICMP ECHO_REQUEST packet contains an additional 8 bytes worth of ICMP
header followed by an arbitrary amount of data. When a packetsize is
given, this indicated the size of this extra blob of data (the default
is 56). Thus the amount of data received inside of an IP packet of
type ICMP ECHO_REPLY will always be 8 bytes more than the requested
data space (the ICMP header).
If the data space is at least eight bytes large, ping uses the first
eight bytes of this space to include a timestamp which it uses in the
computation of round trip times. This explains why if less than eight
bytes of pad are requested, no round trip times are given.
BUGS
Flood pinging the broadcast address is not recommended.
AUTHOR
Mike Muuss
SEE ALSOnetstat(1), ifconfig(8C)4.3 Berkeley Distribution May 23, 1986 PING(8)