Ping hosts using tcp syn packets.
Please note that full tcp handshake is used, we want the program to behave nicely and to explicit close the connection after each "ping".
Simple example:
$ synping example.org
Pinging example.org 4 times on port 80:
Reply from 93.184.215.14:80 time=126.17 ms
Reply from 93.184.215.14:80 time=126.54 ms
Reply from 93.184.215.14:80 time=129.27 ms
Reply from 93.184.215.14:80 time=133.44 ms
Statistics:
--------------------------
Host: example.org
Sent: 4 packets
Received: 4 packets
Lost: 0 packets (0.00)%
Min time: 126.17 ms
Max time: 133.44 ms
Average time: 128.85 ms
- Works on Python 3.7+, for older Python (2.7, 3.4...) use synping 0.9
- Uses only standard library for maximum compatibility
Install using pip:
pip install synping
Or download and set executable permission on the script file:
chmod +x synping.py
Or download and run using the python interpreter:
python synping.py
usage: synping host [options]
ping hosts using tcp syn packets
positional arguments:
host host to ping
options:
-h, --help show this help message and exit
-t ping host until stopped with 'control-c'
-n COUNT number of requests to send (default: 4)
-p PORT port to ping (default: 80)
-w TIMEOUT timeout in seconds to wait for reply (default: 3)
-v, --version show program's version number and exit
e.g.: synping example.org
Ping host on port 80 (default):
synping host
Ping host on port 22:
synping host -p 22
Ping host 10 times with 1 second timeout:
synping host -n 10 -w 1