A professional, fast concurrent local network scanner.
Project description
Local IP Finder (ipscanner)
A professional, cross-platform, fast concurrent local network scanner written in Python.
This tool automatically detects your local IP address and scans your entire /24 subnet using concurrency (ThreadPoolExecutor) for optimal performance, finding all active devices connected to your network.
Features
- Auto-detection: Automatically finds your machine's base network so no hardcoding is necessary.
- Concurrent Scanning: Uses high-performance threading to ping multiple IPs up to 254 times concurrently.
- Cross-Platform: Configures
pingcommands based on the OS (Windows, macOS, Linux). - Graceful Interruptions: Supports fast exit with clean cancellation of threads during
Ctrl+C. - Customizable: Allows defining explicit subnets, thread pool sizing, and timeouts.
- ARP Resolution: Lists the ARP table at the end of the scan to map IPs to MAC addresses.
Output Example
2026-03-11 11:20:05 [INFO] Auto-detected local IP: 10.121.186.162 (Base network: 10.121.186)
2026-03-11 11:20:05 [INFO] Scanning network 10.121.186.0/24 with 50 concurrent threads...
2026-03-11 11:20:06 [INFO] Active IP found: 10.121.186.1
2026-03-11 11:20:06 [INFO] Active IP found: 10.121.186.39
2026-03-11 11:20:07 [INFO] Scan complete. Found 2 active devices.
Retrieving ARP table mapping...
...
Installation
You can install the tool directly from PyPI using pip:
pip install ipscanner
Usage
You can run the script right away to auto-scan your local subnet:
ipscanner
Advanced Usage
You can also use command-line arguments to customize behavior:
usage: ipscanner [-h] [-n NETWORK] [-t THREADS] [--timeout TIMEOUT]
A professional, fast concurrent local network scanner.
options:
-h, --help show this help message and exit
-n NETWORK, --network NETWORK
Base network to scan (e.g., '192.168.1'). Auto-detected if not provided.
-t THREADS, --threads THREADS
Number of concurrent threads for pinging (default: 50).
--timeout TIMEOUT Ping timeout in milliseconds (default: 1000).
Example setting custom threads and network segment:
ipscanner -n 192.168.0 -t 100 --timeout 500
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ipscanner-0.1.0.tar.gz.
File metadata
- Download URL: ipscanner-0.1.0.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
585557e3ecac39a770ce6e95cfe728c61a484d820be4c53477326c1c94a466e2
|
|
| MD5 |
2a049dbc36960ca819f5e1e0ef2fc95d
|
|
| BLAKE2b-256 |
852b95845d081df474c4357518803ba476a59ccf90dbb8eaecb6dd2ddfd3d89a
|
File details
Details for the file ipscanner-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ipscanner-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8db6a024ed0f16228b3f0ca6ecb06be3e52a641c17c7726914be969e2bf40da
|
|
| MD5 |
51591e4fd0ac4c6f1348de19b64f4210
|
|
| BLAKE2b-256 |
ea30b90ff40312398f6be4b8ab9b586a86042b8d1eb91c90062a2dd1b653dc34
|