Skip to main content

LAN device discovery and TCP port scanning

Project description

philiprehberger-net-scanner

Tests PyPI version License

LAN device discovery and TCP port scanning.

Install

pip install philiprehberger-net-scanner

Usage

Network Discovery

from philiprehberger_net_scanner import scan_network

devices = scan_network("192.168.1.0/24", timeout=2.0)
for device in devices:
    print(f"{device.ip} - {device.hostname or 'unknown'} ({device.response_time_ms:.1f}ms)")

Port Scanning

from philiprehberger_net_scanner import scan_ports

# Scan common ports
ports = scan_ports("192.168.1.1", ports="common")
for port in ports:
    print(f"Port {port.number}: {port.state} ({port.service})")

# Scan specific range
ports = scan_ports("192.168.1.1", ports=range(1, 1024), timeout=0.5)

# Scan specific ports
ports = scan_ports("192.168.1.1", ports=[22, 80, 443, 3306, 5432])

Async Port Scanning

import asyncio
from philiprehberger_net_scanner import async_scan_ports

ports = asyncio.run(async_scan_ports("192.168.1.1", ports=range(1, 65536), timeout=0.5))

API

scan_network(cidr, timeout?, max_workers?, resolve_hostnames?) -> list[Device]

Discover devices on a network using TCP connect probes.

scan_ports(host, ports?, timeout?, max_workers?) -> list[PortResult]

Scan TCP ports on a host. ports can be "common", a range, or a list[int].

async_scan_ports(host, ports?, timeout?, concurrency?) -> list[PortResult]

Async version using asyncio for high-performance scanning.

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 Distribution

philiprehberger_net_scanner-0.1.3.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

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

philiprehberger_net_scanner-0.1.3-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file philiprehberger_net_scanner-0.1.3.tar.gz.

File metadata

File hashes

Hashes for philiprehberger_net_scanner-0.1.3.tar.gz
Algorithm Hash digest
SHA256 7db530f2a27fb8b8eab58c80cb8ac9428f51ae201182d314d73dfa06a8405d33
MD5 819c9fd02086859db2c5ad433096eaae
BLAKE2b-256 9cb20ebf617f0b1f2cad39cc94d6dd2e5ffb9cafab2afc4f9a40f64a5f5c5859

See more details on using hashes here.

File details

Details for the file philiprehberger_net_scanner-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for philiprehberger_net_scanner-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 dba5a3aec8b4ce66a8175f0fdb90c2c4119bc0506bd397ab45c9cb2000a5b40b
MD5 1d2a4665b191eca0560571ac74054fea
BLAKE2b-256 0c057d76d201b308a83f69b00a0ac2f38f181d71023714e514d56de7d70ee536

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