Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
MPING(8)		    System Manager's Manual		      MPING(8)

       mping  -	 send ICMP ECHO_REQUEST	packets	to multiple network hosts in a
       round-robbin fashion.  Mping support both IPv4 and IPv6 adresses	at the
       same time.

       mping  [	 -rqvpmfn46a] [	-c count] [ -i interval] [ -s packetsize] [ -w
       waittime] hosts...

       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.  Mping  utilizes  the  ICMP
       protocol's  mandatory  ECHO_REQUEST datagram to elicit an ICMP ECHO_RE-
       SPONSE from hosts and  gateways.	  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.

       Mping sends one datagram	per second, and	prints one line	of output  for
       every ECHO_RESPONSE returned.  No output	is produced if there is	no re-
       sponse.	If an optional count is	given, only that number	of requests is
       sent  to	 each  host.   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.

       -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)).

       -q     Quiet output.  Nothing is	displayed except the summary  line  on

       -v     Verbose  output.	ICMP packets other than	ECHO RESPONSE that are
	      received are listed.

       -p     Packed output. Redundant text is removed,	to save	diskspace when
	      large amount of output is	to be saved to disk.

       -m     Print out	median instead of max.

       -f     Print out	10/50/90-percentile instead of min/avg/max.

       -n     Don't look up ip-numbers.	Without	this option, mping will	try to
	      look up ip-numbers given as output, and translate	them to	 host-

       -4     Prefer IPv4 adress on multiple DNS hits.

       -6     Prefer IPv6 adress on multiple DNS hits.

       -a     Automatically  scale  SI	time  units (sec/msec/usec). Note that
	      this has no effect if used together with -p, as this  will  make
	      mping default to using msec.

       -c count
	      Number of	packets	to send	to each	host.

       -i interval
	      Time  (in	 msec)	to  wait  between each packet is sent out. The
	      packets are sent out in a	Round Robin fasion, so when  a	packet
	      is  sent	to the last host, the next packet to the first host is
	      sent waittime msec after.	The default setting is 10 packets  per

       -s packetsize
	      Size of the data space of	the ICMP packet	(-8 bytes).

       -w waittime
	      Time  (in	msec) to wait before a packet time-out and is reported
	      as lost (This option is not implemented yet).

       This program is intended	for use	in network  testing,  measurement  and
       management.  It should be used with care	not to overload	the network or
       the host	it's running on.

       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 ar-
       bitrary amount of data.	When a packetsize is given, this indicate  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.

       If using	mping on an IPv6 network, you will need	a kernel which support
       automatic packet	checksum generation for	IPv6. For GNU/Linux this means
       a fairly	new kernel is needed, namely >=	2.4.19.

       Mping need to be	setuid and owned by root to  be	 executed  by  unpriv-
       iledged users.  Please consider the security issues involved if you de-
       cide to do this.

       The program is  developed  under	 GNU/Linux,  and  tested  to  work  on
       GNU/Linux,  NetBSD  and	FreeBSD. Mping will probably work on most *NIX
       platforms, but feedback is appreciated.

       Mping-1.0 originally written by Vegard Engen for	UNINETT	in 1996, based
       heavily on ping(8) by Mike Muus.	Mping-1.0 was developed	on SunOS.

       Mping-1.3  was  a  bugfix  version written by Frank Aune	for UNINETT in
       2002. Mping-1.3 was developed on	GNU/Linux and designed to run on  Net-

       Mping-2.0  is  a	 rewrite of Mping-1.0 and Mping-1.3 and	was written by
       Frank Aune and Stig Venaas for UNINETT in 2003. Mping-2.0 is  based  on
       ping(8) and ping6(8) from the UNIX iputils package. Mping-2.0 is	devel-
       oped on GNU/Linux and NetBSD, and is designed to	run on both platforms.

       ping(8),	ping6(8), netstat(1), ifconfig(8C)

       Mping is	available from,	where you can see  how
       we utilize this simple tool in our network services.

				  Sep 1, 2003			      MPING(8)


Want to link to this manual page? Use this URL:

home | help