xref: /freebsd/sbin/ping/ping.8 (revision 3e8eb5c7f4909209c042403ddee340b2ee7003a5)
1.\" Copyright (c) 1985, 1991, 1993
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 3. Neither the name of the University nor the names of its contributors
13.\"    may be used to endorse or promote products derived from this software
14.\"    without specific prior written permission.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26.\" SUCH DAMAGE.
27.\"
28.\"     @(#)ping.8	8.2 (Berkeley) 12/11/93
29.\" $FreeBSD$
30.\"
31.Dd November 26, 2020
32.Dt PING 8
33.Os
34.Sh NAME
35.Nm ping
36.Nd send
37.Tn ICMP
38or
39.Tn ICMPv6 ECHO_REQUEST
40packets to network hosts
41.Sh SYNOPSIS
42.Nm
43.Op Fl 4AaDdfHnoQqRrv
44.Op Fl .\& Ns Ar chars
45.Op Fl C Ar pcp
46.Op Fl c Ar count
47.Op Fl G Ar sweepmaxsize
48.Op Fl g Ar sweepminsize
49.Op Fl h Ar sweepincrsize
50.Op Fl i Ar wait
51.Op Fl l Ar preload
52.Op Fl M Cm mask | time
53.Op Fl m Ar ttl
54.Op Fl P Ar policy
55.Op Fl p Ar pattern
56.Op Fl S Ar src_addr
57.Op Fl s Ar packetsize
58.Op Fl t Ar timeout
59.Op Fl W Ar waittime
60.Op Fl z Ar tos
61.Ar IPv4-host
62.Nm
63.Op Fl 4AaDdfHLnoQqRrv
64.Op Fl .\& Ns Ar chars
65.Op Fl C Ar pcp
66.Op Fl c Ar count
67.Op Fl I Ar iface
68.Op Fl i Ar wait
69.Op Fl l Ar preload
70.Op Fl M Cm mask | time
71.Op Fl m Ar ttl
72.Op Fl P Ar policy
73.Op Fl p Ar pattern
74.Op Fl S Ar src_addr
75.Op Fl s Ar packetsize
76.Op Fl T Ar ttl
77.Op Fl t Ar timeout
78.Op Fl W Ar waittime
79.Op Fl z Ar tos
80.Ar IPv4-mcast-group
81.Nm
82.Op Fl 6AaDdEfHNnOoquvYyZ
83.Op Fl .\& Ns Ar chars
84.Op Fl b Ar bufsiz
85.Op Fl c Ar count
86.Op Fl e Ar gateway
87.Op Fl I Ar interface
88.Op Fl i Ar wait
89.Op Fl k Ar addrtype
90.Op Fl l Ar preload
91.Op Fl m Ar hoplimit
92.Op Fl P Ar policy
93.Op Fl p Ar pattern
94.Op Fl S Ar sourceaddr
95.Op Fl s Ar packetsize
96.Op Fl t Ar timeout
97.Op Fl W Ar waittime
98.Op Ar IPv6-hops ...
99.Ar IPv6-host
100.Sh DESCRIPTION
101The
102.Nm
103utility invoked with an IPv4 target
104.Ns ( Ar IPv4-host No or Ar IPv4-mcast-group Ns )
105uses the
106.Tn ICMP
107.No protocol Ap s mandatory
108.Tn ECHO_REQUEST
109datagram to elicit an
110.Tn ICMP ECHO_RESPONSE
111from a host or gateway.
112.Tn ECHO_REQUEST
113datagrams
114.Pq Dq pings
115have an IP and
116.Tn ICMP
117header, followed by a
118.Dq struct timeval
119and then an arbitrary number of
120.Dq pad
121bytes used to fill out the packet.
122.Pp
123When invoked with an IPv6 target
124.Ns ( Ar IPv6-host Ns ) Ns ,
125it uses the
126.Tn ICMPv6
127protocol's mandatory
128.Tn ICMP6_ECHO_REQUEST
129datagram to elicit an
130.Tn ICMP6_ECHO_REPLY
131.Ns .
132.Tn ICMP6_ECHO_REQUEST
133datagrams have an IPv6 header and
134.Tn ICMPv6
135header formatted as documented in RFC 2463.
136.Pp
137When invoked with a hostname, the version to which the target is resolved first is used.
138In that case, the options and arguments used must be valid for the specific IP version, otherwise
139.Nm
140exits with an error.
141If the target is resolved to both IPv4 and IPv6, the specific IP version can be requested by
142.Fl 4
143or
144.Fl 6
145options, respectively.
146For backwards-compatibility, ICMPv6 can also be selected by invoking the binary
147as
148.Nm ping6 .
149.Ss Options common to both IPv4 and IPv6 targets
150.Bl -tag -width indent
151.It Fl .\& Ns Ar chars
152By default, for every
153.Tn ECHO_REQUEST
154sent, a period
155.Dq .\&
156is printed, while for every
157.Tn ECHO_REPLY
158received, a backspace is printed.
159This option takes an optional string argument listing characters
160that will be printed one by one in the provided order
161instead of the default period.
162.Pp
163Example usage:
164.Bd -literal -offset indent
165ping -.0123456789 freebsd.org
166.Ed
167.It Fl A
168Audible.
169Output a bell
170.Tn ( ASCII
1710x07)
172character when no packet is received before the next packet
173is transmitted.
174To cater for round-trip times that are longer than the interval
175between transmissions, further missing packets cause a bell only
176if the maximum number of unreceived packets has increased.
177.It Fl a
178Audible.
179Include a bell
180.Tn ( ASCII
1810x07)
182character in the output when any packet is received.
183.It Fl C Ar pcp
184Add an 802.1p Ethernet Priority Code Point when sending a packet.
1850..7 uses that specific PCP, -1 uses the interface default PCP (or none).
186.It Fl c Ar count
187Stop after sending
188(and receiving)
189.Ar count
190.Tn ECHO_RESPONSE
191packets.
192If this option is not specified,
193.Nm
194will operate until interrupted.
195.Pp
196For an IPv4 target, if this option is specified in conjunction with ping sweeps,
197each sweep will consist of
198.Ar count
199packets.
200.It Fl D
201Disable fragmentation.
202.It Fl d
203Set the
204.Dv SO_DEBUG
205option on the socket being used.
206.It Fl f
207Flood ping.
208Outputs packets as fast as they come back or one hundred times per second,
209whichever is more.
210Implies
211.Fl .\&
212to print a period for every
213.Tn ECHO_REQUEST
214sent and a backspace for every
215.Tn ECHO_REPLY
216received.
217This provides a rapid display of how many packets are being dropped.
218Only the super-user may use this option.
219.Bf -emphasis
220This can be very hard on a network and should be used with caution.
221.Ef
222.It Fl H
223Hostname output.
224Try to do a reverse DNS lookup when displaying addresses.
225This is the opposite of the
226.Fl n
227option.
228.It Fl I Ar iface
229For an IPv4 target,
230.Ar iface
231is an IP address indentifying an interface from which the packets will be sent.
232This flag applies only if the ping target is a multicast address.
233.Pp
234For an IPv6 target,
235.Ar iface
236is a name of an interface (e.g. `em0') from which the packets will be sent.
237This flag applies if the ping target is a multicast address, or link-local/site-local
238unicast address.
239.It Fl i Ar wait
240Wait
241.Ar wait
242seconds
243.Em between sending each packet .
244The default is to wait for one second between each packet.
245The wait time may be fractional, but only the super-user may specify
246values less than 1 second.
247This option is incompatible with the
248.Fl f
249option.
250.It Fl l Ar preload
251If
252.Ar preload
253is specified,
254.Nm
255sends that many packets as fast as possible before falling into its normal
256mode of behavior.
257Only the super-user may use this option.
258.It Fl m Ar ttl
259For an IPv4 target, set the IP Time To Live for outgoing packets.
260If not specified, the kernel uses the value of the
261.Va net.inet.ip.ttl
262MIB variable.
263.Pp
264For an IPv6 target, set the IPv6 hoplimit.
265.It Fl n
266Numeric output only.
267No attempt will be made to lookup symbolic names for host addresses.
268This is the opposite of
269.Fl H ,
270and it is the default behavior.
271.It Fl o
272Exit successfully after receiving one reply packet.
273.It Fl P Ar policy
274.Ar policy
275specifies IPsec policy for the ping session.
276For details please refer to
277.Xr ipsec 4
278and
279.Xr ipsec_set_policy 3 .
280.It Fl p Ar pattern
281You may specify up to 16
282.Dq pad
283bytes to fill out the packet you send.
284This is useful for diagnosing data-dependent problems in a network.
285For example,
286.Dq Li \-p ff
287will cause the sent packet to be filled with all
288ones.
289.It Fl q
290Quiet output.
291Nothing is displayed except the summary lines at startup time and
292when finished.
293.It Fl S Ar src_addr
294Use the following IP address as the source address in outgoing packets.
295On hosts with more than one IP address, this option can be used to
296force the source address to be something other than the IP address
297of the interface the probe packet is sent on.
298.Pp
299For IPv4, if the IP address is not one of this machine's interface
300addresses, an error is returned and nothing is sent.
301.Pp
302For IPv6, the source address must be one of the unicast addresses of
303the sending node, and must be numeric.
304.It Fl s Ar packetsize
305Specify the number of data bytes to be sent.
306The default is 56, which translates into 64
307.Tn ICMP
308data bytes when combined
309with the 8 bytes of
310.Tn ICMP
311header data.
312.Pp
313For IPv4, only the super-user may specify values more than default.
314This option cannot be used with ping sweeps.
315.Pp
316For IPv6, you may need to specify
317.Fl b
318as well to extend socket buffer size.
319.It Fl t Ar timeout
320Specify a timeout, in seconds, before ping exits regardless of how
321many packets have been received.
322.It Fl v
323Verbose output.
324.Tn ICMP
325packets other than
326.Tn ECHO_RESPONSE
327that are received are listed.
328.It Fl W Ar waittime
329Time in milliseconds to wait for a reply for each packet sent.
330If a reply arrives later, the packet is not printed as replied, but
331considered as replied when calculating statistics.
332.El
333.Ss Options only for IPv4 targets
334.Bl -tag -width indent
335.It Fl 4
336Use IPv4 regardless of how the target is resolved.
337.It Fl G Ar sweepmaxsize
338Specify the maximum size of
339.Tn ICMP
340payload when sending sweeping pings.
341This option is required for ping sweeps.
342.It Fl g Ar sweepminsize
343Specify the size of
344.Tn ICMP
345payload to start with when sending sweeping pings.
346The default value is 0.
347.It Fl h Ar sweepincrsize
348Specify the number of bytes to increment the size of
349.Tn ICMP
350payload after
351each sweep when sending sweeping pings.
352The default value is 1.
353.It Fl L
354Suppress loopback of multicast packets.
355This flag only applies if the ping destination is a multicast address.
356.It Fl M Cm mask | time
357Use
358.Dv ICMP_MASKREQ
359or
360.Dv ICMP_TSTAMP
361instead of
362.Dv ICMP_ECHO .
363For
364.Cm mask ,
365print the netmask of the remote machine.
366Set the
367.Va net.inet.icmp.maskrepl
368MIB variable to enable
369.Dv ICMP_MASKREPLY
370and
371.Va net.inet.icmp.maskfake
372if you want to override the netmask in the response.
373For
374.Cm time ,
375print the origination, reception and transmission timestamps.
376Set the
377.Va net.inet.icmp.tstamprepl
378MIB variable to enable or disable
379.Dv ICMP_TSTAMPREPLY .
380.It Fl Q
381Somewhat quiet output.
382.No Don Ap t
383display ICMP error messages that are in response to our query messages.
384Originally, the
385.Fl v
386flag was required to display such errors, but
387.Fl v
388displays all ICMP error messages.
389On a busy machine, this output can be overbearing.
390Without the
391.Fl Q
392flag,
393.Nm
394prints out any ICMP error messages caused by its own ECHO_REQUEST
395messages.
396.It Fl R
397Record route.
398Includes the
399.Tn RECORD_ROUTE
400option in the
401.Tn ECHO_REQUEST
402packet and displays
403the route buffer on returned packets.
404Note that the IP header is only large enough for nine such routes;
405the
406.Xr traceroute 8
407command is usually better at determining the route packets take to a
408particular destination.
409If more routes come back than should, such as due to an illegal spoofed
410packet, ping will print the route list and then truncate it at the correct
411spot.
412Many hosts ignore or discard the
413.Tn RECORD_ROUTE
414option.
415.It Fl r
416Bypass the normal routing tables and send directly to a host on an attached
417network.
418If the host is not on a directly-attached network, an error is returned.
419This option can be used to ping a local host through an interface
420that has no route through it
421(e.g., after the interface was dropped by
422.Xr routed 8 ) .
423.It Fl T Ar ttl
424Set the IP Time To Live for multicasted packets.
425This flag only applies if the ping destination is a multicast address.
426.It Fl z Ar tos
427Use the specified type of service.
428.It Ar IPv4-host
429hostname or IPv4 address of the final destination node.
430.It Ar IPv4-mcast-group
431IPv4 multicast address of the final destination nodes.
432.El
433.Ss Options only for IPv6 targets
434.Bl -tag -width indent
435.It Fl 6
436Use IPv6 regardless of how the target is resolved.
437.It Fl b Ar bufsiz
438Set socket buffer size.
439.It Fl e Ar gateway
440Specifies to use
441.Ar gateway
442as the next hop to the destination.
443The gateway must be a neighbor of the sending node.
444.It Fl k Ar addrtype
445Generate ICMPv6 Node Information Node Addresses query, rather than echo-request.
446.Ar addrtype
447must be a string constructed of the following characters.
448.Bl -tag -width Ds -compact
449.It Ic a
450requests unicast addresses from all of the responder's interfaces.
451If the character is omitted,
452only those addresses which belong to the interface which has the
453responder's address are requests.
454.It Ic c
455requests responder's IPv4-compatible and IPv4-mapped addresses.
456.It Ic g
457requests responder's global-scope addresses.
458.It Ic s
459requests responder's site-local addresses.
460.It Ic l
461requests responder's link-local addresses.
462.It Ic A
463requests responder's anycast addresses.
464Without this character, the responder will return unicast addresses only.
465With this character, the responder will return anycast addresses only.
466Note that the specification does not specify how to get responder's
467anycast addresses.
468This is an experimental option.
469.El
470.It Fl N
471Probe node information multicast group address
472.Pq Li ff02::2:ffxx:xxxx .
473.Ar host
474must be string hostname of the target
475(must not be a numeric IPv6 address).
476Node information multicast group will be computed based on given
477.Ar host ,
478and will be used as the final destination.
479Since node information multicast group is a link-local multicast group,
480outgoing interface needs to be specified by
481.Fl I
482option.
483.Pp
484When specified twice, the address
485.Pq Li ff02::2:xxxx:xxxx
486is used instead.
487The former is in RFC 4620, the latter is in an old Internet Draft
488draft-ietf-ipngwg-icmp-name-lookup.
489Note that KAME-derived implementations including
490.Fx
491use the latter.
492.It Fl O
493Generate ICMPv6 Node Information supported query types query,
494rather than echo-request.
495.Fl s
496has no effect if
497.Fl O
498is specified.
499.It Fl u
500By default,
501.Nm
502asks the kernel to fragment packets to fit into the minimum IPv6 MTU.
503The
504.Fl u
505option
506will suppress the behavior in the following two levels:
507when the option is specified once, the behavior will be disabled for
508unicast packets.
509When the option is more than once, it will be disabled for both
510unicast and multicast packets.
511.It Fl Y
512Same as
513.Fl y ,
514but with old packet format based on 03 draft.
515This option is present for backward compatibility.
516.Fl s
517has no effect if
518.Fl y
519is specified.
520.It Fl y
521Generate ICMPv6 Node Information DNS Name query, rather than echo-request.
522.Fl s
523has no effect if
524.Fl y
525is specified.
526.It Ar IPv6-hops
527IPv6 addresses for intermediate nodes,
528which will be put into type 0 routing header.
529.It Ar IPv6-host
530IPv6 address of the final destination node.
531.El
532.Ss Experimental options only for IPv6 target
533.Bl -tag -width indent
534.It Fl E
535Enables transport-mode IPsec encapsulated security payload.
536.It Fl Z
537Enables transport-mode IPsec authentication header.
538.El
539.Pp
540When using
541.Nm
542for fault isolation, it should first be run on the local host, to verify
543that the local network interface is up and running.
544Then, hosts and gateways further and further away should be
545.Dq pinged .
546Round-trip times and packet loss statistics are computed.
547If duplicate packets are received, they are not included in the packet
548loss calculation, although the round trip time of these packets is used
549in calculating the round-trip time statistics.
550When the specified number of packets have been sent
551(and received)
552or if the program is terminated with a
553.Dv SIGINT ,
554a brief summary is displayed, showing the number of packets sent and
555received, and the minimum, mean, maximum, and standard deviation of
556the round-trip times.
557.Pp
558If
559.Nm
560receives a
561.Dv SIGINFO
562(see the
563.Cm status
564argument for
565.Xr stty 1 )
566signal, the current number of packets sent and received, and the
567minimum, mean, maximum, and standard deviation of the round-trip times
568will be written to the standard output.
569.Pp
570This program is intended for use in network testing, measurement and
571management.
572Because of the load it can impose on the network, it is unwise to use
573.Nm
574during normal operations or from automated scripts.
575.Sh ICMP PACKET DETAILS
576An IP header without options is 20 bytes.
577An
578.Tn ICMP
579.Tn ECHO_REQUEST
580packet contains an additional 8 bytes worth of
581.Tn ICMP
582header followed by an arbitrary amount of data.
583When a
584.Ar packetsize
585is given, this indicated the size of this extra piece of data
586(the default is 56).
587Thus the amount of data received inside of an IP packet of type
588.Tn ICMP
589.Tn ECHO_REPLY
590will always be 8 bytes more than the requested data space
591(the
592.Tn ICMP
593header).
594.Pp
595If the data space is at least eight bytes large,
596.Nm
597uses the first eight bytes of this space to include a timestamp which
598it uses in the computation of round trip times.
599If less than eight bytes of pad are specified, no round trip times are
600given.
601.Sh DUPLICATE AND DAMAGED PACKETS
602The
603.Nm
604utility will report duplicate and damaged packets.
605Duplicate packets should never occur when pinging a unicast address,
606and seem to be caused by
607inappropriate link-level retransmissions.
608Duplicates may occur in many situations and are rarely
609(if ever)
610a good sign, although the presence of low levels of duplicates may not
611always be cause for alarm.
612Duplicates are expected when pinging a broadcast or multicast address,
613since they are not really duplicates but replies from different hosts
614to the same request.
615.Pp
616Damaged packets are obviously serious cause for alarm and often
617indicate broken hardware somewhere in the
618.Nm
619packet's path (in the network or in the hosts).
620.Sh TRYING DIFFERENT DATA PATTERNS
621The
622(inter)network
623layer should never treat packets differently depending on the data
624contained in the data portion.
625Unfortunately, data-dependent problems have been known to sneak into
626networks and remain undetected for long periods of time.
627In many cases the particular pattern that will have problems is something
628that does not have sufficient
629.Dq transitions ,
630such as all ones or all zeros, or a pattern right at the edge, such as
631almost all zeros.
632It is not
633necessarily enough to specify a data pattern of all zeros (for example)
634on the command line because the pattern that is of interest is
635at the data link level, and the relationship between what you type and
636what the controllers transmit can be complicated.
637.Pp
638This means that if you have a data-dependent problem you will probably
639have to do a lot of testing to find it.
640If you are lucky, you may manage to find a file that either
641cannot
642be sent across your network or that takes much longer to transfer than
643other similar length files.
644You can then examine this file for repeated patterns that you can test
645using the
646.Fl p
647option of
648.Nm .
649.Sh IPv4 TTL DETAILS
650The
651.Tn TTL
652value of an IP packet represents the maximum number of IP routers
653that the packet can go through before being thrown away.
654In current practice you can expect each router in the Internet to decrement
655the
656.Tn TTL
657field by exactly one.
658.Pp
659The
660.Tn TCP/IP
661specification recommends setting the
662.Tn TTL
663field for
664.Tn IP
665packets to 64, but many systems use smaller values
666.No ( Bx 4.3
667uses 30,
668.Bx 4.2
669used 15).
670.Pp
671The maximum possible value of this field is 255, and most
672.Ux
673systems set
674the
675.Tn TTL
676field of
677.Tn ICMP ECHO_REQUEST
678packets to 255.
679This is why you will find you can
680.Dq ping
681some hosts, but not reach them with
682.Xr telnet 1
683or
684.Xr ftp 1 .
685.Pp
686In normal operation
687.Nm
688prints the ttl value from the packet it receives.
689When a remote system receives a ping packet, it can do one of three things
690with the
691.Tn TTL
692field in its response:
693.Bl -bullet
694.It
695Not change it; this is what
696.Bx
697systems did before the
698.Bx 4.3 tahoe
699release.
700In this case the
701.Tn TTL
702value in the received packet will be 255 minus the
703number of routers in the round-trip path.
704.It
705Set it to 255; this is what current
706.Bx
707systems do.
708In this case the
709.Tn TTL
710value in the received packet will be 255 minus the
711number of routers in the path
712.Em from
713the remote system
714.Em to
715the
716.Nm Ns Em ing
717host.
718.It
719Set it to some other value.
720Some machines use the same value for
721.Tn ICMP
722packets that they use for
723.Tn TCP
724packets, for example either 30 or 60.
725Others may use completely wild values.
726.El
727.Sh EXIT STATUS
728The
729.Nm
730utility exits with one of the following values:
731.Bl -tag -width indent
732.It 0
733At least one response was heard from the specified
734.Ar host .
735.It 2
736The transmission was successful but no responses were received.
737.It any other value
738An error occurred.
739.El
740.Sh EXAMPLES
741The following will send ICMPv6 echo request to
742.Li dst.foo.com .
743.Bd -literal -offset indent
744ping -6 -n dst.foo.com
745.Ed
746.Pp
747The following will probe hostnames for all nodes on the network link attached to
748.Li wi0
749interface.
750The address
751.Li ff02::1
752is named the link-local all-node multicast address, and the packet would
753reach every node on the network link.
754.Bd -literal -offset indent
755ping -6 -y ff02::1%wi0
756.Ed
757.Pp
758The following will probe addresses assigned to the destination node,
759.Li dst.foo.com .
760.Bd -literal -offset indent
761ping -6 -k agl dst.foo.com
762.Ed
763.Sh SEE ALSO
764.Xr netstat 1 ,
765.Xr icmp 4 ,
766.Xr icmp6 4 ,
767.Xr inet6 4 ,
768.Xr ip6 4 ,
769.Xr ifconfig 8 ,
770.Xr routed 8 ,
771.Xr traceroute 8 ,
772.Xr traceroute6 8
773.Rs
774.%A A. Conta
775.%A S. Deering
776.%T "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification"
777.%N RFC 2463
778.%D December 1998
779.Re
780.Rs
781.%A Matt Crawford
782.%T "IPv6 Node Information Queries"
783.%N draft-ietf-ipngwg-icmp-name-lookups-09.txt
784.%D May 2002
785.%O work in progress material
786.Re
787.Sh HISTORY
788The
789.Nm
790utility appeared in
791.Bx 4.3 .
792The
793.Nm ping6
794utility with IPv6 support first appeared in the WIDE Hydrangea IPv6
795protocol stack kit.
796.Pp
797IPv6 and IPsec support based on the KAME Project
798.Pq Pa https://www.kame.net/
799stack was initially integrated into
800.Fx 4.0 .
801.Pp
802The
803.Nm ping6
804utility was merged to
805.Nm
806in Google Summer of Code 2019.
807.Sh AUTHORS
808The original
809.Nm
810utility was written by
811.An Mike Muuss
812while at the US Army Ballistics
813Research Laboratory.
814.Sh BUGS
815Many Hosts and Gateways ignore the IPv4
816.Tn RECORD_ROUTE
817option.
818.Pp
819The maximum IP header length is too small for options like
820.Tn RECORD_ROUTE
821to be completely useful.
822.No There Ap s
823not much that can be done about this, however.
824.Pp
825Flood pinging is not recommended in general, and flood pinging the
826broadcast address should only be done under very controlled conditions.
827.Pp
828The
829.Fl v
830option is not worth much on busy hosts.
831