Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Official repository for mtr, a network diagnostic tool
C Groff Other

Merge pull request #90 from garethrandall/master

Remove a warning message at compile time.
latest commit 4831ee5e35
@rewolff rewolff authored
Failed to load latest commit information.
img mtr v0.21
.gitignore Add git version handling to build system
AUTHORS Restore the name resolver query order to their relative position in
COPYING mtr v0.21
FORMATS Raw output: add x for a ping-packet-sent event. Added Yakovetsky Vladimir (vsyakovetsky)'s asn/ipinfo patch from laun…
Makefile.dist mtr v0.75
NEWS explanation of the version numbers in NEWS.
README Corrected the "without gtk" reference to "./configure --without-gtk",…
SECURITY SECURITY: Improve/fix wording, spelling, and formatting
TODO mtr v0.75
asn.c Moved include of config.h above all other includes.
asn.h removed double negatives for ipinfo define. Add autotools bootstrap script Fix issue #76: rationalize the discovery of a terminal handling library
curses.c added use-default-colors...
display.c Merge pull request #90 from garethrandall/master
display.h Raw output: add x for a ping-packet-sent event.
dns.c removed warning about IPV6 socket when IPV6 is not available at runtime
dns.h Support building on OS X
getopt.c Moved include of config.h above all other includes.
getopt.h mtr v0.76
getopt1.c Moved include of config.h above all other includes.
gtk.c changed the name of the ping timout timer from 'tag' to 'ping timeout…
hello.c mtr v0.73
mtr-curses.h mtr v0.76
mtr-gtk.h mtr v0.76
mtr.8 Filled in some of the missing man page sections.
mtr.c Add SCTP support (same way with tcp)
mtr.h added --filename=FILE option
net.c Raw output: add x for a ping-packet-sent event.
net.h fixed merge conflicts
raw.c Raw output: add x for a ping-packet-sent event.
raw.h Raw output: add x for a ping-packet-sent event.
report.c fix for printing space field in XML.
report.h --csv allows multiple service names as arguments
select.c fixed DNS confusion in select.c if dnsfd(6) == 0
select.h mtr v0.76
split.c Moved include of config.h above all other includes.
split.h mtr v0.76 Add git version handling to build system



  mtr combines the functionality of the 'traceroute' and 'ping' programs 
  in a single network diagnostic tool.

  As mtr starts, it investigates the network connection between the host
  mtr runs on and a user-specified destination host.  After it
  determines the address of each network hop between the machines, 
  it sends a sequence ICMP ECHO requests to each one to determine the 
  quality of the link to each machine.  As it does this, it prints
  running statistics about each machine.

  mtr is distributed under the GNU General Public License version 2.
  See the COPYING file for details.  


  If you're building this from a tarball, compiling mtr should be as
  simple as:


  It should first call the "configure" script and then run "make" again
  with the makefile that "configure" just generated. 

  If you're building from the git repository, you'll need to run:

	./ && ./configure && make

  After compiling, install:

	make install

  Note that mtr must be suid-root because it requires access to raw IP 
  sockets.  See SECURITY for security information.

  Older versions used to require a non-existent path to GTK for a
  correct build of a non-gtk version while GTK was installed. This is
  no longer necessary. ./configure --without-gtk should now work. 
  If it doesn't, try "make WITHOUT_X11=YES" as the make step. 

  On Solaris (and possibly other systems) the "gtk" library may be
  installed in a directory where the dynamic linker refuses to look when
  a binary is setuid. Roman Shterenzon reports that adding 
  to the commandline will work if you are using gnu LD. He tells me that
  you're out of luck when you use the sun LD. That's not quite true, as
  you can move the gtk libraries to /usr/lib instead of leaving them in
  /usr/local/lib.  (when the ld tells you that /usr/local/lib is untrusted
  and /usr/lib is trusted, and you trust the gtk libs enough to want them
  in a setuid program, then there is something to say for moving them
  to the "trusted" directory.)

  On Solaris, linking usually fails to find "wattr" or something like that.
  Somehow, I can't seem to be able to automate "configure" finding the right
  libs on Solaris. So, the solution is that you cut-and-paste the line
  doing the linking into a terminal window, and add "-lcurses" by hand. 
  Then it will link. Help on how to catch this in autoconf appreciated.

  On Mac OS X the nameserver8_compat.h needs to be included. I put the 
  include inside an "#if 0" section in the file "dns.c". If someone 
  knows how to make this automatic using autoconf / the configure script, 
  please tell me.... 

  This should now also work: 
  ./configure CFLAGS="-arch i386 -arch x86_64" LIBS="-lresolv" \
       --without-gtk --disable-endian-check --disable-dependency-tracking


  mtr is now hosted on github.

  See the mtr web page at  

  There used to be a mailinglist, but all it got was spam. So
  when the server was upgraded, the mailing list died. 

  Bug reports and feature requests should be submitted to the 
  bug tracker at launchpad:

  Patches can be submitted by Email to me, or submitted to the 
  bug tracker. Or you can clone the github repository and issue a pull
  request. Please use unified diffs. Usually the diff is sort of
  messy, so please check that the diff is clean and doesn't contain too
  much of your local stuff (for example, I don't want/need the "configure"
  script that /your/ automake made for you). 

-- REW

Something went wrong with that request. Please try again.