Trippy
A terminal network diagnostic that combines traceroute and ping views for routes, latency, loss, and address data.
Why consider Trippy?
Trippy is an open-source terminal diagnostic tool that combines traceroute and ping into an interactive user interface. It assists network engineers and developers in diagnosing latency, packet loss, and multi-path routing across network hops.
Learn Trippy by building
Practical setup notes, real use cases, and copy-ready examples in one focused guide.
In this guide5 sections
Overview of Trippy
Network diagnostics often require combining round-trip latency statistics with hop-by-hop path tracing to isolate packet loss and routing anomalies. Trippy combines the functionality of traceroute and ping and is designed to assist with the analysis of networking issues. By presenting a live terminal interface, network operators and developers can observe round-by-round path changes and latency jitter across every intermediate hop towards a destination host.
Cross-platform compatibility ensures diagnostic consistency across diverse server, desktop, and cloud environments. Trippy runs on Linux, BSD, macOS, and Windows. It can be installed from most package managers, precompiled binaries, or source. This flexibility allows engineers to diagnose connectivity problems on various operating systems using identical command-line flags and interactive keybindings.
Installation and Setup
Installing the utility through the Rust toolchain provides an up-to-date binary compiled directly for the target system architecture. According to the project instructions on Trippy's README, for example, to install Trippy from cargo:
cargo install trippy --lockedRunning Interactive Network Diagnostics
Launching a trace requires specifying a target hostname or IP address. Under standard operating system security configurations, creating raw ICMP and UDP sockets requires elevated network administrative privileges. According to the project instructions on Trippy's repository, to run a basic trace to example.com with default settings, use the following command:
sudo trip example.comDuring execution, the terminal user interface renders real-time statistics including hop numbers, hostnames, loss percentages, sent packets, and round-trip times. Modern releases introduce fine-grained control over network resolution. As noted in the 0.13.0 release notes, this release adds a new value for --addr-family called system. This value defers the choice of address family to the first address returned by OS resolver.
Advanced Tracing, Quality of Service, and Routing Analysis
Network engineers frequently need to inspect how intermediate routers handle differentiated traffic priorities and congestion markings. Trippy 0.13.0 release notes specify that the 0.13.0 release of Trippy includes several enhancements related to Type of Service (ToS) and adds new Dscp and Ecn columns. These telemetry columns decode Quality of Service information directly from incoming ICMP response headers.
trip example.com --tos 224 --tui-custom-columns holsravbwdtKMIn addition to packet classification headers, multi-path routing discovery is a core strength of the application architecture. As documented in the project README, Trippy draws heavily from mtr and also incorporates ideas from both libparistraceroute & Dublin Traceroute. This allows users to pinpoint Equal-Cost Multi-Path (ECMP) routing paths where packet flows diverge across load-balanced network segments.
Configuration and Architectural Foundations
Customizing application behavior permanently is managed through declarative configuration files. According to the release documentation, Trippy will now attempt to locate a trippy.toml or .trippy.toml config file in the XDG app config directory (i.e. $XDG_CONFIG_HOME/trippy or ~/.config/trippy) in addition to existing locations. Users can configure theme palettes, custom column sets, and default protocol parameters.
trip example.com --tui-timezone UTCFrom a software engineering perspective, the project leverages robust terminal and asynchronous networking primitives. The official repository on GitHub highlights that Trippy is made possible by ratatui (formerly tui-rs), crossterm as well as several foundational Rust libraries. Furthermore, comprehensive online documentation and guides are maintained at the official Trippy website, while the open-source codebase is published under the terms of the Apache-2.0 License, providing standard terms and conditions for use, reproduction, and distribution.
Related tools
More options with a similar category or technology profile.
diskus
Minimal, fast alternative to du -sh written in Rust using multi-threaded directory traversal.
peco
Simplistic interactive filtering tool for Unix pipelines, process lists, and file trees.
Dapr CLI
Command-line tool for managing Dapr distributed application runtime environments and sidecars.
Freeze
Generate beautiful image screenshots and SVGs of code snippets and terminal outputs.