← All tools

domcyrus/rustnet

Popularity 75 Updated Development & Build

Per-process network monitoring for your terminal with deep packet inspection. Cross-platform, sandboxed.

githubauto-collected

Installation

A directly usable install command is not verified yet. Check the project documentation or releases.

<p align="center" <img src="https://raw.githubusercontent.com/domcyrus/rustnet/main/assets/rustnet.svg" alt="RustNet logo" width="96" height="96" </p

<h1 align="center"RustNet</h1

<p align="center" <a href="https://ratatui.rs/"<img src="https://ratatui.rs/built-with-ratatui/badge.svg" alt="Built with Ratatui"</a <a href="https://github.com/domcyrus/rustnet/actions"<img src="https://github.com/domcyrus/rustnet/workflows/Rust/badge.svg" alt="Build status"</a <a href="https://crates.io/crates/rustnet-monitor"<img src="https://img.shields.io/crates/v/rustnet-monitor.svg" alt="Crates.io version"</a <a href="https://github.com/domcyrus/rustnet/releases"<img src="https://img.shields.io/github/v/release/domcyrus/rustnet.svg" alt="Latest release"</a <a href="LICENSE"<img src="https://img.shields.io/badge/license-Apache--2.0-blue.svg" alt="Apache 2.0 license"</a </p

<p align="center"<strongEnglish</strong | <a href="README.zh-CN.md"简体中文</a | <a href="README.ja.md"日本語</a</p

RustNet is a terminal network monitor that shows live TCP, UDP, and QUIC connections alongside the processes that own them. It runs on Linux, macOS, Windows, and FreeBSD.

Install

On macOS or Linux with Homebrew:

brew install rustnet

Packet capture needs platform-specific permissions. See the installation guide for Linux capabilities, macOS PKTAP and BPF access, other package managers, and troubleshooting.

Release status: The highlights, GIF, and screenshots below reflect v1.6.0. The guides linked from main may also describe unreleased changes. For the installed release, use the v1.6.0 documentation and check rustnet --version and rustnet --help.

Demo

<p align="center" <img src="./assets/rustnet.gif" alt="RustNet demo" width="800" </p

Highlights

  • Shows each connection's process, state, traffic, and application protocol in a terminal UI that works over SSH.
  • Identifies protocols such as HTTP, TLS/SNI, DNS, SSH, and QUIC through packet inspection.
  • Filters connections by process, address, port, protocol, and more.
  • Exports captures as PCAP or annotated PCAPNG for analysis in Wireshark.
  • Reduces privileges after startup and uses platform sandboxing where supported.

See the usage guide, architecture guide, and security guide for feature details.

Screenshots

<table <tr <td align="center"<strongOverview</strong<brLive connections and traffic<br<img src="./assets/screenshots/overview.png" width="400" alt="RustNet Overview"</td <td align="center"<strongDetails</strong<brProcess, protocol, and peer information<br<img src="./assets/screenshots/details.png" width="400" alt="RustNet Details"</td </tr <tr <td align="center"<strongGraph</strong<brTraffic and application charts<br<img src="./assets/screenshots/graph.png" width="400" alt="RustNet Graph"</td <td align="center"<strongActivity</strong<brTraffic by process<br<img src="./assets/screenshots/interfaces.png" width="400" alt="RustNet Activity"</td </tr </table

Other installation methods