Skip to main content

Network Analysis CLI/TUI tool — ping, traceroute, port scan, DNS, whois, speedtest

Project description

net-analyzer

Network Analysis CLI/TUI Tool — ping, traceroute, port scan, DNS resolution, whois lookups, and speed tests, all from the terminal.

Features

  • ping — ICMP echo request with statistics (raw ICMP or system ping fallback)
  • trace — Traceroute via UDP probes with TTL stepping (raw socket or system fallback)
  • scan — TCP connect port scan on 20 common ports (SSH, HTTP, HTTPS, MySQL, etc.)
  • dns — DNS resolution showing A, AAAA records and canonical names
  • whois — Domain whois lookup via raw TCP connection to whois servers
  • speedtest — Download speed test using test files from speedtest.tele2.net
  • all — Comprehensive run: DNS + ping + trace + scan + whois in one command
  • TUI mode — Interactive curses-based menu interface (--tui)

Installation

From source

# Clone or copy the project
cd net-analyzer

# Install in editable mode
pip install -e .

As a standalone script

python -m net_analyzer ping google.com

Usage

CLI Commands

# Ping a host (4 packets)
net-analyzer ping google.com

# Ping with custom count
net-analyzer ping google.com 10

# Traceroute
net-analyzer trace cloudflare.com

# Port scan (20 common ports)
net-analyzer scan localhost

# DNS resolution
net-analyzer dns github.com

# Whois lookup
net-analyzer whois example.com

# Speed test (download 10MB file)
net-analyzer speedtest

# Speed test with custom size (1MB, 10MB, 50MB, 100MB)
net-analyzer speedtest 50MB

# Run ALL network checks against a host
net-analyzer all example.com

# Show help
net-analyzer --help

TUI Mode

net-analyzer --tui

Navigate with arrow keys, press Enter to select, type target when prompted.

Examples

# Quick network diagnostics
$ net-analyzer all google.com

# Check if a web server is running
$ net-analyzer scan myserver.local

# Trace the route to a CDN
$ net-analyzer trace cloudflare.com

Requirements

  • Python 3.8+
  • No external dependencies (standard library only)
  • ping / traceroute system commands (optional — raw sockets used when available)

Performance Notes

  • Raw ICMP ping and raw traceroute require root/Administrator permissions. If unavailable, the tool falls back to calling the system ping/traceroute commands.
  • Port scanning uses TCP connect (SYN-ACK) — no elevated privileges needed.
  • Speedtest downloads a file from speedtest.tele2.net — internet connection required.

Project Structure

net-analyzer/
├── pyproject.toml
├── README.md
└── src/
    └── net_analyzer/
        ├── __init__.py
        ├── __main__.py      # Entry point
        ├── cli.py           # All CLI commands + dispatch
        └── tui.py           # Curses TUI interface

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

evolver_net_analyzer-1.0.0-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file evolver_net_analyzer-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for evolver_net_analyzer-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f37751b0553ed1cae2f79619a5d213ae3f1f48db246d397422e16b4bbffed856
MD5 59f8ddc8a6a62573a658c1b79407e139
BLAKE2b-256 5e8f6491675b597baa0bcd4a33518f038645d8fd1867a2d13c4ffe5eabff8396

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page