Skip to content
Minimal Graphical IPV4 Ping Tool
C Objective-C Makefile C++
Branch: master
Clone or download
dreua Switch CI build to Ubuntu bionic
The more recent ubuntu bionic (18.04) image comes with GCC 7 instead of GCC 5
in the default image. This fixes a bug in GCC where some unneeded symbols
end up in the Windows executable.
Latest commit 16aac94 Oct 9, 2019


Minimal Graphical IPV4 Ping/HTTP Ping Tool. (also comes with searchnet, like nmap but smaller and simpler). It uses rawdraw so it is OS independent.

Usage: cnping [host] [period] [extra size] [y-axis scaling] [window title]

	 [host]                 -- domain or IP address of ICMP ping target, or http://[host] i.e.
	 [period]               -- period in seconds (optional), default 0.02
	 [extra size]           -- ping packet extra size (above 12), optional, default = 0
	 [const y-axis scaling] -- use a fixed scaling factor instead of auto scaling (optional)
	 [window title]         -- the title of the window (optional)


If an http host is listed, the default request is HEAD /favicon.ico HTTP/1.1 since this is usually a very fast, easy operation for the server. If a specific file or uri is requested, that will be requested instead, i.e. will request HEAD /cnlohr HTTP/1.1.

If a regular hostname is requested instead, ICMP (regular ping) will be used.

This allows cnping to be operated in environments where ICMP is prohibited by local computer or network policies.



sudo apt install libxinerama-dev libxext-dev libx11-dev build-essential
make linuxinstall

'linuxinstall' builds the tool and copies it to your usr/local/bin folder, and sets the sticky bit or appropriate permissions allowing it to run as though it were root, allowing it to create raw sockets.

sudo cp cnping /usr/local/bin/
sudo chmod +s /usr/local/bin/cnping

Note that if only http pinging is requested, you do not need root access.


cnping-git in the Arch User Repository

You can’t perform that action at this time.