*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> ping (8)              



NAME    [Toc]    [Back]

       ping - Sends ICMP ECHO_REQUEST packets to network hosts

SYNOPSIS    [Toc]    [Back]

       /usr/sbin/ping  [-dfnqruvLR] [-b num] [-c count] [-i wait]
       [-l preload] [-p pattern] [-s packetsize]  [-tnumber]  [-I
       interface] [-G[!] @addr1@addr2...] [-V version] host

OPTIONS    [Toc]    [Back]

       Specifies  the  size  of  the receive buffer.  You can use
       this when specifying very large packet sizes with  the  -s
       option.  By default, the size of the receive buffer is set
       to 48K  or  to  the  size  specified  by  the  -s  option,
       whichever   is  greater.   The  -b  option  overrides  the
       default.   Stops  after  sending  (and  receiving)   count
       ECHO_RESPONSE  packets.   Set  the  SO_DEBUG option on the
       socket being used.  Floods ping.  Outputs packets as  fast
       as  they  come  back or 100 times per second, whichever is
       more. For every ECHO_REQUEST sent,  a  (dot)  is  printed,
       while  for  every ECHO_REPLY received a backspace is used.
       This provides a rapid display  of  how  many  packets  are
       being  dropped.  Only  the  superuser may use this option.
       This can be very hard on a network and should be used with
       caution  (see  Cautions).   Specifies the source route for
       packets to travel to the destination host.  The route consists
  of  one  or  more node names or addresses.  Use the
       ampersand character (@) to  separate  multiple  addresses.
       You can specify up to 10 addresses.

              The  exclamation  mark (!) indicates that this is a
              strict source route; ping uses only  the  specified
              hosts for intermediate hops.

              If  any of the specified addresses is a hostname, a
              lookup is performed and the protocol common to  all
              addresses  is used.  If there is no common protocol
              (for example, one host has only  IPv4  address  and
              one  host  has  only  IPv6  address),  an  error is
              printed.  If all hosts  have  both  IPv4  and  IPv6
              addresses,  IPv6  is  used.   You can override this
              option with the  -V  option.   Waits  wait  seconds
              between  sending  each  packet.   The default is to
              wait for 1 second between each packet. This  option
              is  incompatible with the -f option.  [IPv6 only]
              Sends packets through interface  instead  of  using
              the  interface  specified in the routing tables for
              the host.  Displays every 100th reply only and displays
 a message indicating lost packets.

              A  packet  loss  rate of just 1% is enough to seriously
 impact UDP-based protocols  like  NFS.   This
              option  enables  you  to  measure loss rates and to
              determine how bursty they are.  All  lost  messages
              are reported with the following message:

              Lost sequence number(s) number

              The  number  value is a single number or a range or
              numbers.  If preload is specified, ping sends  that
              many  packets  as  fast  as possible before falling
              into  its  normal  mode  of  behavior.   Only   the
              superuser  may  use  this option.  This can be very
              hard on a network and should be used  with  caution
              (see  Cautions).   Numeric output only.  No attempt
              will be made to look up  symbolic  names  for  host
              addresses.  This  occurs  only when displaying ICMP
              packets other than ECHO_RESPONSE.  You may  specify
              up to 16 pad bytes to fill out the packet you send.
              This is useful for diagnosing data-dependent  problems
  in  a  network. For example, -p ff will cause
              the sent packet to be filled with  all  1s  (ones).
              Quiets  output.   Nothing  is  displayed except the
              summary lines at start-up time and  when  finished.
              [ICMP  over  IPv4  only]   Records route.  Includes
              the RECORD_ROUTE option in the ECHO_REQUEST  packet
              and  displays the route buffer on returned packets.
              Note that the IP header is only  large  enough  for
              nine such routes. Many hosts ignore or discard this
              option.  Bypasses the  normal  routing  tables  and
              directly  sends  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
              send ping to a local  host   through  an  interface
              that  has  no  route through it (for example, after
              the interface was dropped  by  routed).   Specifies
              the number of data bytes to be sent. The default is
              56, which translates into 64 ICMP data  bytes  when
              combined  with  the  8  bytes  of ICMP header data.
              Sets the timeout period (in seconds)  for  ping  to
              wait   before  terminating.   The  default  timeout
              period is 10 seconds.  This option is  only  useful
              with  -c  1 option.  Displays the time in microseconds
 (three decimal places).  In  order  to  ensure
              this   microsecond   precision,  the  NTP_TIME  and
              MICRO_TIME kernel options must be on.   By  default
              NTP_TIME and MICRO_TIME kernel options are off.  If
              these kernel options are off  and  this  option  is
              used,  the  time  is  displayed  to  three  decimal
              places, but  in  milliseconds.   Specifies  verbose
              output.  ICMP packets other than ECHO_RESPONSE that
              are received are listed.   Specifies  the  Internet
              Protocol (IP) version number to enable the resolver
              to return the correct address.  If you are  issuing
              a ping command to a host name (not IP address) that
              has both IPv4 and IPv6 addresses,  by  default  the
              command  is issued using the IPv6 address.  Use the
              -V4 option if you want to use the IPv4 address.

DESCRIPTION    [Toc]    [Back]

       The ping command uses the ICMP (Internet  Control  Message
       Protocol)  protocol's  mandatory  ECHO_REQUEST datagram to
       elicit an ICMP ECHO_RESPONSE from the  specified  host  or
       gateway  host, where host is a network name or IP address.
       ECHO_REQUEST datagrams (pings) have an IP (Internet Protocol)
  and  ICMP  header,  followed by a struct timeval and
       then an arbitrary number of pad bytes used to fill out the
       packet.   The  operating  system  supports both ICMPv4 and

       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 running.   Then,  hosts  and  gateways
       further  and further away should be sent the ping command.
       Round-trip times and packet loss statistics are  computed.
       If  duplicate  packets are received, they are not included
       in the packet loss calculations, although  the  round-trip
       time  of these packets is used in calculating the minimum,
       average, and maximum round-trip time  numbers.   When  the
       specified  number of packets have been sent (and received)
       or if the program is terminated with  a  SIGINT,  a  brief
       summary is displayed.

       This  program is intended for use in network testing, measurement,
 and management.  Because  of  the  load  it  can
       impose  on  the  network,  it is unwise to use ping during
       normal operations or from automated scripts.

   ICMPv4 Packet Details    [Toc]    [Back]
       An IPv4 header without options  is  20  bytes.  An  ICMPv4
       ECHO_REQUEST  packet  contains an additional 8 bytes worth
       of ICMPv4 header followed by an arbitrary amount of  data.
       When  a  packetsize  is  given, this indicates the size of
       this extra piece of data (the default is  56).  Thus,  the
       amount  of  data received inside of an IPv4 packet of type
       ICMP ECHO_REPLY will always  be  8  bytes  more  than  the
       requested data space (the ICMPv4 header).

       If the data space is at least 8 bytes large, ping uses the
       first 8 bytes of this space to include a timestamp,  which
       it  uses  in  the computation of round-trip times. If less
       than 8 bytes of pad are specified, no round-trip times are

   Duplicate and Damaged Packets    [Toc]    [Back]
       The  ping  command will report duplicate and damaged packets.
 Duplicate packets should never occur, and seem to  be
       caused by inappropriate link-level retransmissions. Duplicates
 may occur in many  situations  and  are  rarely  (if
       ever)  a good sign, although the presence of low levels of
       duplicates may not always be cause for alarm.

       Damaged packets are obviously serious cause for alarm  and
       often  indicate  broken  hardware  somewhere  in  the ping
       packet's path (in the network or in the hosts).

   Trying Different Data Patterns    [Toc]    [Back]
       The (inter)network layer should never treat  packets  differently
  depending on the data contained in the data portion.
 Unfortunately,  data-dependent  problems  have  been
       known  to  sneak  into  networks and remain undetected for
       long periods of time. In many cases the particular pattern
       that  will  have  problems is something that does not have
       sufficient transitions, such as all 1s (ones)  or  all  0s
       (zeros),  or  a  pattern right at the edge, such as almost
       all 0s (zeros).  It is not necessarily enough to specify a
       data  pattern  of all 0s (zeros) (for example) on the command
 line because the pattern that is of  interest  is  at
       the data-link level, and the relationship between what you
       enter and what the controllers  transmit  can  be  complicated.

       This  means  that if you have a data-dependent problem you
       will probably have to do a lot of testing to find  it.  If
       you  are  lucky, you may manage to find a file that either
       cannot be sent across your  network  or  that  takes  much
       longer  to  transfer  than other similar length files. You
       can then examine this file for repeated patterns that  you
       can test using the -p option of ping.

   IPv4 TTL Details    [Toc]    [Back]
       The  TTL  value  of  an IPv4 packet represents the maximum
       number of IPv4 routers that  the  packet  can  go  through
       before  being  thrown  away.  In  current practice you can
       expect each router in the Internet to  decrement  the  TTL
       field by exactly 1 (one).

       The TCP/IP specification states that the TTL field for TCP
       packets should be set to 60, but many systems use  smaller
       values (4.3BSD uses 30, 4.2BSD used 15).

       The  maximum possible value of this field is 255, and most
       UNIX  compatible  systems  set  the  TTL  field  of   ICMP
       ECHO_REQUEST packets to 255. This is why you will find you
       can use the ping command on some hosts, but not reach them
       with telnet or ftp.

       In  normal  operation,  ping prints the TTL value from the
       packet it receives.  When a remote system receives a  ping
       packet,  it  can do one of three things with the TTL field
       in its response: Not change it; this is what Berkeley UNIX
       compatible  systems did before the 4.3BSD release. In this
       case, the TTL value in the received  packet  will  be  255
       minus  the  number of routers in the round-trip path.  Set
       it to 255; this is what current Berkeley  UNIX  compatible
       systems  do.   In this case, the TTL value in the received
       packet will be 255 minus the number of routers in the path
       from  the remote system to the host that received the ping
       command.  Set it to some other value.  Some  machines  use
       the  same  value  for ICMPv4 packets that they use for TCP
       packets; for example, either 30 or 60. Others may use completely
 wild values.

CAUTIONS    [Toc]    [Back]

       Many hosts and gateways ignore the RECORD_ROUTE option.

       Flooding  and  preloading  the  ping command is not recommended
 in general, and  flooding  ping  on  the  broadcast
       address  should  only be done under very controlled conditions.

FILES    [Toc]    [Back]

       Specifies the command path

SEE ALSO    [Toc]    [Back]

       Commands: netstat(1), ifconfig(8)

       Daemons: gated(8), routed(8)

       RFC 792, Internet Control Message Protocol, Postel, J.

       RFC 2463, Internet Control Message Protocol  (ICMPv6)  for
       the  Internet  Protocol  Version  6  (IPv6) Specification,
       Conta, A., and Deering, S.

[ Back ]
 Similar pages
Name OS Title
ping Linux send ICMP ECHO_REQUEST packets to network hosts
ping FreeBSD send ICMP ECHO_REQUEST packets to network hosts
ping OpenBSD send ICMP ECHO_REQUEST packets to network hosts
ping IRIX send ICMP ECHO_REQUEST packets to network hosts
ping6 OpenBSD send ICMPv6 ECHO_REQUEST packets to network hosts
ping6 FreeBSD send ICMPv6 ECHO_REQUEST packets to network hosts
ping HP-UX send ICMP Echo Request packets to network host
ipsend FreeBSD sends IP packets
nsip OpenBSD software network interface encapsulating NS packets in IP packets
ipresend FreeBSD resend IP packets out to network
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service