Sniffnet 是一款跨平台、直观且可靠的网络流量监控应用程序。它能让您实时查看网络连接、流量统计、地理位置等丰富信息,并支持自定义过滤和通知。


1. 系统要求

  • 操作系统:Windows、macOS 或 Linux。
  • 权限:在大多数操作系统上,监控网络流量可能需要管理员/root 权限。
  • 网络:需要网络连接以进行 IP 地理位置查询等功能。

2. 安装方式

Sniffnet 提供了多种安装方式,您可以根据自己的偏好选择。

2.1 下载预编译安装包(推荐)

从项目的 GitHub Releases 页面 下载适用于您操作系统和架构的最新版本。

  • macOS
    • Intel:下载 sniffnet-macos-x64.pkg
    • Apple Silicon:下载 sniffnet-macos-arm64.pkg
  • Windows:下载 sniffnet-windows-x64.msi
  • Linux:提供多种格式,请根据您的发行版选择:
    • Debian/Ubuntu.deb 包。
    • Fedora/RHEL.rpm 包。
    • 通用格式.AppImage 文件(下载后 chmod +x 并运行)。

2.2 通过包管理器安装(便捷)

  • macOS (Homebrew)

    1
    brew install sniffnet
  • Windows (Winget)

    1
    winget install GyulyVGC.sniffnet
  • Linux:部分发行版的官方仓库可能已包含 Sniffnet,或可使用 Snap/Flatpak 安装(请参考项目文档)。

2.3 从源码构建(面向开发者)

如果您想从源码运行或贡献代码,请遵循以下步骤:

  1. 前提条件:安装 RustCargo(通过 rustup)以及系统依赖(如 libpcap 开发库)。

    • Ubuntu/Debiansudo apt install libpcap-dev
    • macOS:通常已具备,或需要 Xcode Command Line Tools。
    • Windows:需要安装 Npcap(以 WinPcap 兼容模式安装)。
  2. 克隆并运行

    1
    2
    3
    git clone https://github.com/GyulyVGC/sniffnet.git
    cd sniffnet
    cargo run --release

3. 核心功能与使用

启动 Sniffnet 后,您可以看到一个直观的仪表盘,实时显示网络活动。

3.1 选择网络适配器

  • 启动时,您需要选择一个要监控的网络适配器(如 Wi-Fi 或以太网)。
  • 您可以通过下拉菜单随时切换适配器。

3.2 核心视图与信息

  • 总体统计:顶部面板显示总流量、数据包数、当前速率等。
  • 实时图表:以折线图形式展示上传和下载流量强度。
  • 连接列表:主表格列出了所有活动连接,包括:
    • 本地和远程 IP 地址及端口。
    • 远程主机的地理位置(城市/国家)。
    • 域名ASN(自治系统号)。
    • 识别出的上层服务(如 HTTP、HTTPS、DNS)或潜在威胁(如木马)。
    • 生成流量的程序名称(需要权限)。
  • 过滤:您可以根据协议、端口、IP 地址等条件过滤显示的连接。
  • 收藏:您可以将重要的主机、服务或程序添加到收藏夹,以便快速关注。
  • 通知:您可以设置自定义通知规则,当特定网络事件(如连接到某个 IP)发生时收到提醒。

3.3 高级功能

  • 导入/导出 PCAP:支持导入和导出标准的 PCAP 格式文件,便于离线分析或使用其他工具。
  • IP 黑名单:您可以导入自定义的 IP 黑名单,以高亮显示潜在的危险连接。
  • 主题:支持浅色/深色主题,并可以创建自定义主题。

4. 常见问题排查

问题 可能原因 解决方案
应用提示“未找到网络适配器”或无法捕获流量 缺少依赖库(如 libpcap)或权限不足 Linux:安装 libpcap-devWindows:确保已安装 Npcap。macOS:检查系统权限。所有系统:尝试以管理员/root 权限运行应用。
界面渲染异常(图标变黑、颜色错误) 图形驱动不兼容 wgpu 渲染器 设置环境变量以切换渲染后端:ICED_BACKEND=tiny-skia,然后重新启动应用。
地理位置信息无法显示 网络连接问题或内置数据库未更新 检查网络连接。Sniffnet 使用 MaxMind 数据库,初次启动或版本更新时会自动下载。
无法识别程序名称 权限不足(Windows 需管理员,macOS 需辅助功能权限) 以管理员身份运行应用。在 macOS 的系统偏好设置中授予 Sniffnet 辅助功能权限。

5. 总结

Sniffnet 是一个功能强大且直观的网络流量监控工具,适合网络管理员、开发者和对网络活动感兴趣的所有用户。

核心使用路径

  1. 下载安装:根据您的操作系统选择合适的方式(安装包、包管理器或源码)。
  2. 启动并授权:首次启动时,系统会请求监控网络的权限,请务必授予。
  3. 选择适配器:选择您要监控的网络接口(如 Wi-Fi)。
  4. 探索界面:观察实时连接、流量图表和统计信息。使用过滤和收藏功能定制您的视图。
  5. 深入分析:如需分析特定文件,可导入 PCAP 文件;或设置通知关注重要事件。

建议:如果您是第一次使用,建议从项目 Wiki 的快速入门指南开始,以了解所有功能细节。如果遇到依赖问题,请务必参考项目文档中的“Required Dependencies”页面。

项目地址:https://github.com/GyulyVGC/sniffnet