Package: traixroute
IntroductiontraIXrouteis a tool that detects if and where a traceroute path crosses an IXP fabric. It uses multiple criteria to verify IXP crossings in the light of replies from third-party interfaces or inaccuracies in the available data about IP addresses assigned to IXPs. These discrepancies mislead simple heuristics based solely on the IP address prefixes allocated to IXPs. The detection uses data from  PeeringDB, Packet Clearing House and RouteViews. In addition,traIXrouteuses in the background the standardtraceroutetool or thescampertool, which implements the Paris traceroute technique to deal with inaccurate paths due to load balancers[1]. It is open source under GPLv3.The heuristics used by traIXroute and their evaluation are described in the following paper:G. Nomikos, X. Dimitropoulos.“traIXroute: Detecting IXPs in traceroute paths”. In Proceedings of the Passive and Active Measurements Conference (PAM’16) 31 March - 1 April 2016, Heraklion, Greece.G. Nomikos, X. Dimitropoulos.“Detecting IXPs in Traceroute Paths Using traIXroute”. RIPE Labs, 3 Aug 2016.traIXrouteenhances for the first time its features interoperating with theRemote Peering Jedi tool. For now, only data for DE-CIX (Frankfurt), Any2 (Los Angeles), AMS-IX, France-IX, LINX and MSK-IX are included.InstallationThe program has been tested on Linux and Mac OS X. Detailed installation instructions can be found in the INSTALL file in the repository. You can install all the necessary packages running:The latest version is available onpypi, the Python Package Index:$ pip3 install traixroute
$ scamper-install (To enable probes using scamper)
$ traixroute (To build the configuration files in the home directory)
$ traixroute --helpIt is also possible to download the latest archive from github:$ curl -L https://github.com/gnomikos/traIXroute/archive/v2.3.tar.gz | tar zx
$ sh traIXroute-2.3/setup/install.sh
$ ./traIXroute-2.3/bin/traixrouteIf usinggit:$ git clone https://github.com/gnomikos/traIXroute.git
$ sh traIXroute/setup/install.sh
$ ./traIXroute/bin/traixrouteIMPORTANTIn case you run Mac OS X, ensure you have installed the Xcode command line developer tools before. To install run:$ xcode-select --installA software update popup window will appear. You need to install only the command line developer tools by clicking the “Install” button and then agree to the Terms of Service. This process will download and install the Command Line Tools package.If you have problems, please contact George Nomikos (gnomikos [at] ics.forth.gr).DependenciesPython 3—traIXrouterequires Python 3.5 or greater.Scamper— A tool provided by CAIDA for probing the Internet in parallel, so that bulk data can be collected in a timely fashion.Traceroute— A diagnostic tool for measuring Internet paths and their per hop delay.Click here for other dependencies.DocumentationDocumentation can be foundhere. The documentation covers the available command line options, how to extend or overwrite the data from PeeringDB and the Packet Clearing House with user-provided data, how to customize or extend traIXroute detection rules, and a diagram of its modules.LicenceThe source code oftraIXrouteis released under the GNU General Public License, version 3. A copy can be found in the LICENSE file.Copyright © traIXroute, 2016.AuthorstraIXroutewas written by Michalis Bamiedakis (mbam [at] ics [dot] forth [dot] gr), Dimitris Mavrommatis (mavromat [at] ics [dot] forth [dot] gr) and George Nomikos (gnomikos [at] ics [dot] forth [dot] gr) from the INternet Security, Privacy, and Intelligence REsearch (INSPIRE) Group in the Institute of Computer Science of the Foundation for Research and Technology - Hellas (FORTH). The research was supervised by Prof. Xenofontas Dimitropoulos (fontas [at] ics [dot] forth [dot] gr).Contact Author: George Nomikos (gnomikos [at] ics [dot] forth [dot] gr)AcknowledgementsThe research that led totraIXroutewas supported by the European Research Council (ERC) Grant 338402 - The NetVolution Project (www.netvolution.eu).References[1]Augustin, B., Friedman, T. and Teixeira, R., “Multipath tracing with Paris traceroute.”In End-to-End Monitoring Techniques and Services, 2007. Workshop on, pp. 1-8.IEEE, 2007.