Sniffnet Deployment & Usage Guide
Prerequisites
Runtime Requirements
- Operating System: Windows 10+, macOS 10.14+, or Linux (kernel 3.2+)
- Network Access: Root/administrative privileges (required for raw packet capture via libpcap/Npcap)
- Graphics: GPU supporting OpenGL 3.3+ or Vulkan (for the iced GUI framework)
- MMDB Databases: MaxMind GeoLite2 Country and ASN databases (optional, for geolocation features)
Build Requirements (From Source)
- Rust Toolchain: Version 1.74 or later (stable channel)
- System Libraries:
libpcap(packet capture)openssl(TLS/SSL support)pkg-config(library detection)
- Platform-Specific Tooling:
- Linux:
libpcap-dev,libssl-dev,build-essential,libfontconfig-dev - macOS: Xcode Command Line Tools (
xcode-select --install) - Windows: Visual Studio Build Tools 2019+ and Npcap SDK
- Linux:
Installation
Option 1: Pre-built Binaries (Recommended)
Download the latest release from GitHub Releases:
| Platform | x64/AMD64 | ARM64 | x86 |
|---|---|---|---|
| Windows | Sniffnet_Windows_x64.msi | Sniffnet_Windows_arm64.msi | Sniffnet_Windows_x86.msi |
| macOS | Sniffnet_macOS_Intel.dmg | Sniffnet_macOS_AppleSilicon.dmg | ā |
| Linux | Sniffnet_LinuxAppImage_amd64.AppImage | Sniffnet_LinuxAppImage_arm64.AppImage | ā |
Linux AppImage Setup:
chmod +x Sniffnet_LinuxAppImage_*.AppImage
./Sniffnet_LinuxAppImage_*.AppImage
Option 2: Build from Source
# Clone repository
git clone https://github.com/GyulyVGC/sniffnet.git
cd sniffnet
# Install dependencies (Ubuntu/Debian example)
sudo apt-get update
sudo apt-get install -y libpcap-dev libssl-dev pkg-config build-essential
# Build optimized release
cargo build --release --locked
# Binary location: ./target/release/sniffnet
Option 3: Cargo Install
# Install specific version tag
cargo install --git https://github.com/GyulyVGC/sniffnet.git --tag v1.3.0
Configuration
MaxMind Database Setup (Optional)
For country flags and ASN identification, download GeoLite2 databases:
- Register at MaxMind (free)
- Download
GeoLite2-Country.mmdbandGeoLite2-ASN.mmdb - Place in one of these locations:
- Same directory as the Sniffnet executable
$HOME/.config/sniffnet/(Linux/macOS)%APPDATA%\sniffnet\(Windows)
Environment Variables:
SNIFFNET_MMDDB_PATH: Custom path to MMDB directoryICED_BACKEND: Force graphics backend (wgpu,tiny-skia,glow) if display issues occur
Persistent Settings
Application preferences are stored in platform-standard config directories:
- Linux:
$XDG_CONFIG_HOME/sniffnet/(falls back to~/.config/sniffnet/) - macOS:
~/Library/Application Support/sniffnet/ - Windows:
%APPDATA%\sniffnet\
Build & Run
Development Mode
# Run with cargo (requires sudo for packet capture)
sudo cargo run
# Or build debug binary
cargo build
sudo ./target/debug/sniffnet