Simple port scanning utility at terminal
Project description
PortScan
PortScan is a light-weight command line utility that allows user to conduct scanning over a range of IP addresses and port ranges with multi-threading.
Install: pip install portscan
Upgrade: pip install portscan --upgrade
Usage: portscan [192.168.1.0/24] [-p 22,80-200 [-t 100 [-w 1 [-e]]]]
New in version 0.2.1:
By default the command checks for your Local Area Network IP first, and then initiate a block wise search. specify IP if you want to search any other IP blocks. Note: This is not available before 0.2.1, please update or specify IP if you're using 0.2.0 and older
Use -w [float]
to change timeout settings from default of 3
seconds: for LAN, this can be as low as 0.1
. 1
is usually good enough for continental level connection.
Scanned 5000 ports in 2 seconds
To show more potential connection, use -e
, this will show you all ports that are not timed out.
Arguments
ip
: default and optional (since 0.2.1, required before 0.2.1) argument, can parse single IP, list of IP, IP blocks:
192.168.1.0 # single IP
192.168.1.0/24 # A 24 block, from 192.168.1.0 to 192.168.1.255
[192.168.1.0/24,8.8.8.8] # The aforementioned 24 block and 8.8.8.8.
"[192.168.1.0/24, 8.8.8.8]" # if you want to use space in the command, wrap in quotes.
Options:
-p
, --port
: port range, default 22,23,80
, use ,
as a delimiter without space, support port range (e.g. 22-100,5000
).
-t
, --threadnum
: thread numbers, default 500, as of now, thread number have a hard cap of 2048. More thread will increase performance on large scale scans.
-e
, --show_refused
: show connection errors other than timeouts, e.g. connection refused, permission denied with errno number as they happen.
-w
, --wait
: Wait time for socket to respond. If scanning LAN or relatively fast internet connection, this can be set to 1
or even 0.2
for faster scanning. Default 3
seconds
Acknowledgement
Jamieson Becker: For coming up with a way to find local IP on stackoverflow, which I used: https://stackoverflow.com/questions/166506/finding-local-ip-addresses-using-pythons-stdlib
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.