• Stars
    star
    2,506
  • Rank 17,607 (Top 0.4 %)
  • Language
    C
  • License
    GNU General Publi...
  • Created over 11 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Official repository for mtr, a network diagnostic tool

WHAT IS MTR?

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

INSTALLING

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

./configure && make

Please note that this refers to the tarballs from https://www.bitwizard.nl/mtr/files/ and not the tarballs that github can produce.

(in the past, there was a Makefile in the distribution that did the ./configure for you and then ran make again with the generated Makefile, but this has suffered some bitrot. It didn't work well with git.)

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

./bootstrap.sh && ./configure && make

When it looks as if the compilation was successful, you can test mtr with

sudo ./mtr <host>

(fill in a hostname or IP address where it says ) or immediately continue on to installing:

make install

Note that mtr-packet 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, you'll need to use GNU make to build. (Use gmake rather than make.)

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 -Wl,-rpath=/usr/lib 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.)

Building on MacOS should not require any special steps.

USING MTR ON WINDOWS

Using mtr on Windows requires Windows Subsystem for Linux (WSL).
To install WSL with Ubuntu distribution (Default), see How to install Linux on Windows with WSL.

After complete initial process, simple as:

sudo apt-get -y install mtr

BUILDING FOR WINDOWS (TRADITIONAL METHOD)

If you prefer traditional method. Obtain Cygwin, see https://cygwin.com/install.html.

Next, re-run cygwin's setup-x86.exe (or setup-x86_64.exe if you're using 64bit cygwin) with the following arguments,

which will install the packages required for building:

    setup-x86.exe --package-manager --wait --packages automake,pkg-config,make,gcc-core,libncurses-devel,libjansson-devel

Build as under Unix:

    ./bootstrap.sh && ./configure && make

Finally, install the built binaries:

    make install

WHERE CAN I GET THE LATEST VERSION OR MORE INFORMATION?

mtr is now hosted on github. https://github.com/traviscross/mtr

See the mtr web page at http://www.BitWizard.nl/mtr/

Bug reports and feature requests should be submitted to the Github bug tracking system.

Patches can be submitted by cloning the Github repository and issuing a pull request, or by email to me. 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).

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

REW

More Repositories

1

freeswitch

FreeSWITCH mirror (not automatically updated)
C
26
star
2

libzrtp

Phil Zimmermann's SDK for ZRTP
C
21
star
3

ooh323c

An Open H.323 Library
C
15
star
4

libre

Non-official repository of old released libre packages
C
15
star
5

inotify-refresh

A tool for refreshing web browsers automatically
Shell
15
star
6

yealink-confenc

Tools for encrypting and decrypting Yealink configuration and key files
Shell
11
star
7

nyquist-compress-dynamics

An audacity/nyquist plugin for dynamic compression
Common Lisp
7
star
8

ldap-ad-utils

Some utilities for interacting with Active Directory via LDAP
Python
7
star
9

baresip

C
5
star
10

librem

C
5
star
11

compress-video-for-web

A simple tool to compress videos correctly for the web using ffmpeg
Shell
4
star
12

yealink-keycrack

C
4
star
13

bgaes

BGAES - Brian Gladman's implementation of AES
C
4
star
14

dangerdeep-svn

Mirror of Danger from the Deep raw SVN mirror
C++
3
star
15

ec2-api-tools

Amazon EC2 API Tools (Debian Packaging)
Shell
3
star
16

freeswitch-conf-load-test

A simple configuration for load-testing FreeSWITCH
Shell
3
star
17

tc-lua-vmem

A voicemail to email only system for FreeSWITCH
Lua
3
star
18

2014-yealink-crypto-report

2
star
19

zrtp-drafts

Standards documents for the ZRTP protocol
XSLT
2
star
20

freeswitch-training

FreeSWITCH training presentation
JavaScript
2
star
21

freeswitch-sounds

Debian packaging for FreeSWITCH sounds and music official repository
2
star
22

udp-mtu-tester

A simple tool to send UDP packets of increasing exact sizes
C
2
star
23

restund

C
2
star
24

ivrlib-micro

A library for interfacing with FreeSWITCH via embedded Lua
Lua
2
star
25

webrtc-demo

The contents of webrtc.freeswitch.org
JavaScript
1
star
26

draft-johnston-rtcweb-zrtp

Standard to use ZRTP over WebRTC
XSLT
1
star
27

apr

Temporary fork of APR for proposing patches upstream
C
1
star
28

expreval

ExprEval in C
C
1
star
29

chibi-scheme

An embedded scheme implementation
Scheme
1
star
30

test

test repo
1
star
31

ec2-ami-tools

Amazon EC2 AMI Tools (Debian Packaging)
Ruby
1
star
32

libre-demo

C
1
star
33

db-email-reports

A template script for running periodic reports against a database and emailing results
Shell
1
star
34

zrtp-discriminator

Discriminator Mode for ZRTP
1
star
35

kamailio-homer-postgresql

Configurations for running a Kamailio sipcapture/HOMER server using PostgreSQL
1
star
36

fizzbuzz

Git demo fizzbuzz
1
star
37

tc-lua-util

A concise utility library for Lua
Lua
1
star
38

tc-graph-pl

The classic tc-graph.pl for Linux Advanced Routing and Traffic Control
Perl
1
star
39

asyncawait-coroutines

Coroutines demonstration in stable Rust using async/await
Rust
1
star