
Sniffnet
github.com/gyulyvgc/sniffnet- Category
- Cybersecurity
- Rank
- No. 202Tools index
- Type
- APP
- Builder
- gyulyvgc
- GitHub
- 41.1k stars
- Latest release
- v1.5.1
- Date
About
This is a shipped network monitoring tool for analyzing internet traffic.
What it does
Sniffnet turns packet captures into an approachable desktop view of network activity. Choose an adapter or open a PCAP capture, apply filters, then inspect connections, traffic charts, programs, domains, autonomous systems, and host locations. It can also export PCAP reports, watch favorite entities, raise event notifications, and flag addresses from imported IP blacklists.
Why it's ranked here
Sniffnet combines capture, inspection, enrichment, and alerts in one desktop application. That breadth is backed by practical distribution across three operating systems and several processor families. Embedded geographic and autonomous-system databases reduce setup for host context, while PCAP import and export keep captures portable. The required native dependencies and packet-capture permissions make installation less trivial than the polished interface suggests.
What's good
The inspection model connects raw traffic with information people can act on: originating programs, remote domains, autonomous systems, countries, recognized services, and local-network peers. Real-time charts provide a quick overview, while searchable connection details support closer investigation. Favorites, thumbnail mode, custom notifications, and blacklists make extended observation useful. PCAP import and export let users revisit or share captures without abandoning a standard format.
Tradeoffs
Packet capture depends on operating-system libraries and permissions. Linux packages require audio, packet-capture, and font configuration libraries, and RPM installation grants raw-network capabilities. Older hardware or graphics drivers may expose rendering problems, with a CPU renderer offered as a fallback. The command line mainly starts capture or manages configuration; the supplied material does not present a programmable library, network API, or remote collection service.
How to use it well
Use Sniffnet when you want a local, visual workflow for understanding which programs and hosts exchange traffic. Start with an adapter, narrow the stream with filters, inspect enriched connections, and add notifications or favorites for recurring watch points. Import saved PCAP data for offline investigation and export captures for other tools. Choose something else when automation, library embedding, an API, or centralized monitoring is the core requirement.
Technical notes+
Cargo.toml defines a Rust 2024 binary using iced for the GUI, pcap and etherparse for capture and parsing, clap for command-line parsing, MaxMind readers for enrichment, Tokio for asynchronous work, and Plotters integrations for charts; it forbids unsafe Rust and enables strict Clippy warnings. src/main.rs builds the iced application around Sniffer and loads embedded fonts and the window icon. src/cli/mod.rs exposes adapter startup, configuration-path lookup, default restoration, and Windows log access, with inline configuration tests. src/gui/sniffer.rs owns capture state, traffic statistics, notification state, search, charts, blacklist data, latency results, and program lookup. src/mmdb/asn.rs and src/mmdb/country.rs embed default MMDB data, accept custom databases, and contain IPv4 and IPv6 lookup tests.
Observed
- License
- Dual-licensed under MIT OR Apache-2.0.
- Primary language
- Rust, using the 2024 edition.
- Interface
- Desktop GUI with command-line options for adapter startup and configuration management.
- Platform support
- Windows, macOS, and Linux distributions are provided.
- Packaging
- Windows MSI, macOS DMG, and Linux AppImage, DEB, and RPM packages are offered across multiple architectures.
- Capture interchange
- Imports and exports PCAP capture reports.
- Safety policy
- The Rust manifest forbids unsafe code.
- Test structure
- Unit tests are embedded within source modules for configuration and MMDB lookup behavior.
Read from README.md, Cargo.toml, src/main.rs, src/cli/mod.rs, src/gui/mod.rs, src/mmdb/mod.rs, src/mmdb/asn.rs, src/chart/mod.rs, src/utils/mod.rs, src/report/mod.rs, src/gui/sniffer.rs, src/mmdb/country.rs, src/countries/mod.rs, src/networking/mod.rs, src/translations/mod.rs.
What it can do
Monitor internet traffic in real-time
Network interface selection → Live traffic data and statistics
Analyze network packet flows
Network packets from selected interface → Detailed packet information and flow analysis
Track bandwidth usage by application
System network activity → Per-application bandwidth consumption data
Filter network traffic by protocol
Raw network traffic and protocol selection → Filtered traffic data for specific protocols
Display connection details for network sessions
Active network connections → Source/destination IP addresses, ports, and connection status
Generate network traffic reports
Collected traffic monitoring data → Statistical reports and traffic summaries
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.