Installation

Requirements

  • Python 3.12 or higher

  • pip (bundled with Python 3.12+)

  • Supported operating systems: Linux, Windows, macOS

Optional system utilities (needed for specific commands):

Utility

Required by

traceroute / tracepath

network-base traceroute (Linux)

tracert

network-base traceroute (Windows — built-in)

whois

network-base whois

ip / ifconfig / route

network-base params, network-base route (Linux)

ss

network-base connections (Linux)

net-tools (route -n)

network-base params on some Linux distros



Development Version

To install the latest development snapshot directly from GitHub:

pip install git+https://github.com/alexeev-prog/nadzoring.git

Or clone and install in editable mode for contributing:

git clone https://github.com/alexeev-prog/nadzoring.git
cd nadzoring
pip install -e ".[dev]"

Installing Optional System Dependencies

Linux (Debian / Ubuntu):

sudo apt update
sudo apt install net-tools traceroute whois iproute2

Linux (RHEL / CentOS / Fedora):

sudo dnf install net-tools traceroute whois iproute

macOS (Homebrew):

brew install iproute2mac whois

Windows:

tracert and arp are built into Windows. No additional installs required for basic functionality.


ARP Monitoring: Additional Setup

The arp monitor-spoofing command uses Scapy for raw packet capture, which requires elevated privileges on most systems.

Linux — grant raw-socket capability to avoid running as root:

sudo setcap cap_net_raw+ep $(which python3)

Or simply run the command with sudo.

Windows — run your terminal as Administrator.

macOS — run with sudo.


Traceroute: Privilege Setup (Linux)

The network-base traceroute command requires raw-socket access on Linux. Use one of the following approaches:

# Option 1: run with sudo
nadzoring network-base traceroute --sudo example.com

# Option 2: grant capability to traceroute binary
sudo setcap cap_net_raw+ep $(which traceroute)

# Option 3: use tracepath (no root required — automatic fallback)
# Nadzoring tries tracepath automatically if traceroute fails

Verifying the Installation

Run a quick smoke test after installing:

# Check tool is reachable
nadzoring --help

# Resolve a well-known domain
nadzoring dns resolve google.com

# Reverse DNS lookup
nadzoring dns reverse 8.8.8.8

# Ping a host
nadzoring network-base ping 1.1.1.1

# Show local network parameters
nadzoring network-base params