1 .\" Copyright (c) 1999-2013 Apple Inc. All rights reserved.
3 .\" @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 .\" This file contains Original Code and/or Modifications of Original Code
6 .\" as defined in and that are subject to the Apple Public Source License
7 .\" Version 2.0 (the 'License'). You may not use this file except in
8 .\" compliance with the License. The rights granted to you under the License
9 .\" may not be used to create, or enable the creation or redistribution of,
10 .\" unlawful or unlicensed copies of an Apple operating system, or to
11 .\" circumvent, violate, or enable the circumvention or violation of, any
12 .\" terms of an Apple operating system software license agreement.
14 .\" Please obtain a copy of the License at
15 .\" http://www.opensource.apple.com/apsl/ and read it before using this file.
17 .\" The Original Code and all software distributed under the License are
18 .\" distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
19 .\" EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
20 .\" INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
21 .\" FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
22 .\" Please see the License for the specific language governing rights and
23 .\" limitations under the License.
25 .\" @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 .\" Copyright (c) 1985, 1991, 1993
28 .\" The Regents of the University of California. All rights reserved.
30 .\" Redistribution and use in source and binary forms, with or without
31 .\" modification, are permitted provided that the following conditions
33 .\" 1. Redistributions of source code must retain the above copyright
34 .\" notice, this list of conditions and the following disclaimer.
35 .\" 2. Redistributions in binary form must reproduce the above copyright
36 .\" notice, this list of conditions and the following disclaimer in the
37 .\" documentation and/or other materials provided with the distribution.
38 .\" 4. Neither the name of the University nor the names of its contributors
39 .\" may be used to endorse or promote products derived from this software
40 .\" without specific prior written permission.
42 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
43 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
44 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
45 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
46 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
47 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
48 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
49 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
50 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
51 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
54 .\" @(#)ping.8 8.2 (Berkeley) 12/11/93
63 packets to network hosts
69 .Op Fl G Ar sweepmaxsize
70 .Op Fl g Ar sweepminsize
71 .Op Fl h Ar sweepincrsize
73 .Op Fl k Ar trafficclass
74 .Op Fl K Ar netservicetype
76 .Op Fl M Cm mask | time
81 .Op Fl s Ar packetsize
85 .Op Fl Fl apple-connect
94 .Op Fl k Ar trafficclass
95 .Op Fl K Ar netservicetype
97 .Op Fl M Cm mask | time
102 .Op Fl s Ar packetsize
107 .Op Fl Fl apple-connect
115 .No protocol Ap s mandatory
117 datagram to elicit an
118 .Tn ICMP ECHO_RESPONSE
119 from a host or gateway.
125 header, followed by a
127 and then an arbitrary number of
129 bytes used to fill out the packet.
130 The options are as follows:
131 .Bl -tag -width indent
137 character when no packet is received before the next packet
139 To cater for round-trip times that are longer than the interval
140 between transmissions, further missing packets cause a bell only
141 if the maximum number of unreceived packets has increased.
147 character in the output when any packet is received.
148 This option is ignored
149 if other format options are present.
151 Bind the socket to interface
154 This option is an Apple addition.
156 Prohibit the socket from using the cellular network interface.
157 This option is an Apple addition.
164 If this option is not specified,
166 will operate until interrupted.
167 If this option is specified in conjunction with ping sweeps,
168 each sweep will consist of
172 Set the Don't Fragment bit.
176 option on the socket being used.
179 Outputs packets as fast as they come back or one hundred times per second,
185 is printed, while for every
187 received a backspace is printed.
188 This provides a rapid display of how many packets are being dropped.
189 Only the super-user may use this option.
191 This can be very hard on a network and should be used with caution.
193 .It Fl G Ar sweepmaxsize
194 Specify the maximum size of
196 payload when sending sweeping pings.
197 This option is required for ping sweeps.
198 .It Fl g Ar sweepminsize
201 payload to start with when sending sweeping pings.
202 The default value is 0.
203 .It Fl h Ar sweepincrsize
204 Specify the number of bytes to increment the size of
207 each sweep when sending sweeping pings.
208 The default value is 1.
210 Source multicast packets with the given interface address.
211 This flag only applies if the ping destination is a multicast address.
216 .Em between sending each packet .
217 The default is to wait for one second between each packet.
218 The wait time may be fractional, but only the super-user may specify
219 values less than 0.1 second.
220 This option is incompatible with the
223 .It Fl k Ar trafficclass
224 Specifies the traffic class to use for sending ICMP packets.
225 The supported traffic classes are
226 BK_SYS, BK, BE, RD, OAM, AV, RV, VI, VO and CTL.
229 uses the control traffic class (CTL).
230 This option is an Apple addition.
231 .It Fl K Ar netservicetype
232 Specifies the network service type to use for sending ICMP packets.
233 The supported network service type are BK_SYS, BK, BE, RV, AV, RD, OAM, VI, SIG and VO.
234 Note this overrides the default traffic class (-k can still be specified after -K to use both).
235 This option is an Apple addition.
237 Suppress loopback of multicast packets.
238 This flag only applies if the ping destination is a multicast address.
244 sends that many packets as fast as possible before falling into its normal
246 Only the super-user may use this option.
247 .It Fl M Cm mask | time
256 print the netmask of the remote machine.
258 .Va net.inet.icmp.maskrepl
259 MIB variable to enable
263 print the origination, reception and transmission timestamps.
265 Set the IP Time To Live for outgoing packets.
266 If not specified, the kernel uses the value of the
271 No attempt will be made to lookup symbolic names for host addresses.
273 Exit successfully after receiving one reply packet.
276 specifies IPsec policy for the ping session.
277 For details please refer to
280 .Xr ipsec_set_policy 3 .
282 You may specify up to 16
284 bytes to fill out the packet you send.
285 This is useful for diagnosing data-dependent problems in a network.
288 will cause the sent packet to be filled with all
291 Somewhat quiet output.
293 display ICMP error messages that are in response to our query messages.
296 flag was required to display such errors, but
298 displays all ICMP error messages.
299 On a busy machine, this output can be overbearing.
304 prints out any ICMP error messages caused by its own ECHO_REQUEST
308 Nothing is displayed except the summary lines at startup time and
317 the route buffer on returned packets.
318 Note that the IP header is only large enough for nine such routes;
321 command is usually better at determining the route packets take to a
322 particular destination.
323 If more routes come back than should, such as due to an illegal spoofed
324 packet, ping will print the route list and then truncate it at the correct
326 Many hosts ignore or discard the
330 Bypass the normal routing tables and send directly to a host on an attached
332 If the host is not on a directly-attached network, an error is returned.
333 This option can be used to ping a local host through an interface
334 that has no route through it
335 (e.g., after the interface was dropped by
338 Use the following IP address as the source address in outgoing packets.
339 On hosts with more than one IP address, this option can be used to
340 force the source address to be something other than the IP address
341 of the interface the probe packet is sent on.
343 is not one of this machine's interface addresses, an error is
344 returned and nothing is sent.
345 .It Fl s Ar packetsize
346 Specify the number of data bytes to be sent.
347 The default is 56, which translates into 64
349 data bytes when combined
353 This option cannot be used with ping sweeps.
355 Set the IP Time To Live for multicasted packets.
356 This flag only applies if the ping destination is a multicast address.
358 Specify a timeout, in seconds, before ping exits regardless of how
359 many packets have been received.
365 that are received are listed.
367 Time in milliseconds to wait for a reply for each packet sent.
368 If a reply arrives later, the packet is not printed as replied, but
369 considered as replied when calculating statistics.
371 Use the specified type of service.
372 .It Fl Fl apple-connect
373 Connects the socket to the destination address.
374 This option is an Apple addition.
376 Prints the time a packet was received.
377 This option is an Apple addition.
382 for fault isolation, it should first be run on the local host, to verify
383 that the local network interface is up and running.
384 Then, hosts and gateways further and further away should be
386 Round-trip times and packet loss statistics are computed.
387 If duplicate packets are received, they are not included in the packet
388 loss calculation, although the round trip time of these packets is used
389 in calculating the round-trip time statistics.
390 When the specified number of packets have been sent
392 or if the program is terminated with a
394 a brief summary is displayed, showing the number of packets sent and
395 received, and the minimum, mean, maximum, and standard deviation of
396 the round-trip times.
406 signal, the current number of packets sent and received, and the
407 minimum, mean, and maximum of the round-trip times will be written to
408 the standard error output.
410 This program is intended for use in network testing, measurement and
412 Because of the load it can impose on the network, it is unwise to use
414 during normal operations or from automated scripts.
415 .Sh ICMP PACKET DETAILS
416 An IP header without options is 20 bytes.
420 packet contains an additional 8 bytes worth of
422 header followed by an arbitrary amount of data.
425 is given, this indicated the size of this extra piece of data
427 Thus the amount of data received inside of an IP packet of type
430 will always be 8 bytes more than the requested data space
435 If the data space is at least eight bytes large,
437 uses the first eight bytes of this space to include a timestamp which
438 it uses in the computation of round trip times.
439 If less than eight bytes of pad are specified, no round trip times are
441 .Sh DUPLICATE AND DAMAGED PACKETS
444 utility will report duplicate and damaged packets.
445 Duplicate packets should never occur when pinging a unicast address,
446 and seem to be caused by
447 inappropriate link-level retransmissions.
448 Duplicates may occur in many situations and are rarely
450 a good sign, although the presence of low levels of duplicates may not
451 always be cause for alarm.
452 Duplicates are expected when pinging a broadcast or multicast address,
453 since they are not really duplicates but replies from different hosts
456 Damaged packets are obviously serious cause for alarm and often
457 indicate broken hardware somewhere in the
459 packet's path (in the network or in the hosts).
460 .Sh TRYING DIFFERENT DATA PATTERNS
463 layer should never treat packets differently depending on the data
464 contained in the data portion.
465 Unfortunately, data-dependent problems have been known to sneak into
466 networks and remain undetected for long periods of time.
467 In many cases the particular pattern that will have problems is something
468 that does not have sufficient
470 such as all ones or all zeros, or a pattern right at the edge, such as
473 necessarily enough to specify a data pattern of all zeros (for example)
474 on the command line because the pattern that is of interest is
475 at the data link level, and the relationship between what you type and
476 what the controllers transmit can be complicated.
478 This means that if you have a data-dependent problem you will probably
479 have to do a lot of testing to find it.
480 If you are lucky, you may manage to find a file that either
482 be sent across your network or that takes much longer to transfer than
483 other similar length files.
484 You can then examine this file for repeated patterns that you can test
492 value of an IP packet represents the maximum number of IP routers
493 that the packet can go through before being thrown away.
494 In current practice you can expect each router in the Internet to decrement
497 field by exactly one.
501 specification recommends setting the
505 packets to 64, but many systems use smaller values
511 The maximum possible value of this field is 255, and most
517 .Tn ICMP ECHO_REQUEST
519 This is why you will find you can
521 some hosts, but not reach them with
528 prints the ttl value from the packet it receives.
529 When a remote system receives a ping packet, it can do one of three things
532 field in its response:
535 Not change it; this is what
537 systems did before the
542 value in the received packet will be 255 minus the
543 number of routers in the round-trip path.
545 Set it to 255; this is what current
550 value in the received packet will be 255 minus the
551 number of routers in the path
559 Set it to some other value.
560 Some machines use the same value for
562 packets that they use for
564 packets, for example either 30 or 60.
565 Others may use completely wild values.
570 utility exits with one of the following values:
571 .Bl -tag -width indent
573 At least one response was heard from the specified
576 The transmission was successful but no responses were received.
579 These values are defined in
596 utility was written by
598 while at the US Army Ballistics
601 Many Hosts and Gateways ignore the
605 The maximum IP header length is too small for options like
607 to be completely useful.
609 not much that can be done about this, however.
611 Flood pinging is not recommended in general, and flood pinging the
612 broadcast address should only be done under very controlled conditions.
616 option is not worth much on busy hosts.