https://github.com/jftuga/tcpscan
A fast, simple, multi-threaded cross-platform IPv4 TCP port scanner
https://github.com/jftuga/tcpscan
cross-platform networking python3 scanner
Last synced: 10 months ago
JSON representation
A fast, simple, multi-threaded cross-platform IPv4 TCP port scanner
- Host: GitHub
- URL: https://github.com/jftuga/tcpscan
- Owner: jftuga
- License: mit
- Created: 2018-04-25T18:18:21.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2025-01-24T13:15:55.000Z (over 1 year ago)
- Last Synced: 2025-04-05T19:41:27.586Z (about 1 year ago)
- Topics: cross-platform, networking, python3, scanner
- Language: Python
- Homepage:
- Size: 5.12 MB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tcpscan
A fast, simple, multi-threaded, cross-platform, IPv4 TCP port scanner
This will run under Windows, Linux and MacOS.
A stand-alone windows executable is provided on the [release page](https://github.com/jftuga/tcpscan/releases).
Examples are given in the [tcpscan.py](https://github.com/jftuga/tcpscan/blob/master/tcpscan.py) source code.
```
tcpscan -h
usage: tcpscan.exe [-h] [-x SKIPNETBLOCK] [-X SKIPPORTS] [-p PORTS]
[-T THREADS] [-t TIMEOUT] [-s] [-S] [-c] [-o OUTPUT] [-d]
[-v] [-r RUNTIME] [-l LOOP] [-lo] [-lc] [-L]
[target]
tcpscan: a simple, multi-threaded, cross-platform IPv4 TCP port scanner
positional arguments:
target e.g. 192.168.1.0/24 192.168.1.100 www.example.com
optional arguments:
-h, --help show this help message and exit
-x SKIPNETBLOCK, --skipnetblock SKIPNETBLOCK
skip a sub-netblock, e.g. 192.168.1.96/28
-X SKIPPORTS, --skipports SKIPPORTS
exclude a subset of ports, e.g. 135-139
-p PORTS, --ports PORTS
comma separated list or hyphenated range, e.g.
22,80,443,445,515 e.g. 80-515 e.g. all (without -p,
the 513 most common ports are scanned)
-T THREADS, --threads THREADS
number of concurrent threads, default: 100
-t TIMEOUT, --timeout TIMEOUT
number of seconds to wait for a connect, default: 0.07
for lan, 0.18 for wan
-s, --shufflehosts randomize the order IPs are scanned
-S, --shuffleports randomize the order ports are scanned
-c, --closed output ports that are closed
-o OUTPUT, --output OUTPUT
output to CSV file
-d, --dns resolve IPs to host names
-v, --verbose output statistics
-r RUNTIME, --runtime RUNTIME
periodically display runtime stats every RUNTIME
seconds to STDERR
-l LOOP, --loop LOOP repeat the port scan LOOP times, 0 for continuous
-lo, --loopopen repeat the port scan until all port(s) are open
-lc, --loopclose repeat the port scan until all port(s) are closed
-L, --listen listen on given TCP port(s) for incoming connection(s)
[mutually exclusive; but works with --output and
--dns]
tcpscan version: 1.35
```