PingPanel
---------

PingPanel monitors devices in the network using ICMP echo requests and gives you a compact and graphical overview of the current 
accessibility of all these hosts in real time. Thousands of hosts, IPv4 and IPv6, can be processed.   
Unlike other network monitoring tools, PingPanel is neither a service monitoring tool nor does it record any data for analysis. 
Instead, it merely provides an overview of the current availability of the devices to be monitored and their RTT (Round-Trip Time).   

   
   
**_Website_**:  
[https://pingpanel.zweiernet.ch/](https://pingpanel.zweiernet.ch/)
	
**_Download_**:   
\- tar-archive: [https://pingpanel.zweiernet.ch/pingpanel_0.9.9.tar.gz](https://pingpanel.zweiernet.ch/pingpanel_0.9.9.tar.gz)   
\- Debian installer: [https://pingpanel.zweiernet.ch/pingpanel_0.9.9_all.deb](https://pingpanel.zweiernet.ch/pingpanel_0.9.9_all.deb)


**_Requirements_**:
> python3-tornado >= 6.0 ([https://www.tornadoweb.org/en/stable/](https://www.tornadoweb.org/en/stable/))   
> fping >= 5.0 ([https://fping.org/](https://fping.org/))

   


### Installation

**On Debian/Ubuntu related systems install with:**   
`dpkg -i pingpanel_<version>_all.deb`   
   
Check the dependencies with:   
`apt-get check`  
   
and install the dependencies with:   
`apt --fix-broken install`   
   
Afterwards the pingpanel package ist fully instsalled under /opt/PingPanel/.   
   
   
**On other systems using the tar-archive:**

```
cd /opt
tar xvfz pingpanel_<version>.tar.gz
```
   
   
Further information about installation and configuration can be found in the INSTALL.txt file.   

 
### Usage  
 The directory _etc.example/_ contains startup file in _init.d/_ and a default _pingpanel_ file under _default/_.   
If you want to use a different installation directory, you must adjust the default file 
and/or the init.d startup script to the appropriate pathes and names.   

The daemon start file _pingpanel_ in the _init.d/_ directory is in standard LSB format for SysV systems.
So, on systemd related systems at least use:   
`systemctl daemon-reload`

After all, start the PingPanel Daemon:   
`service pingpanel start`

### Configuration

The application is controlled via a configuration file in which the hosts to be pinged are listed and named 
in freely selectable blocks, the loop- and fping-related parameters are defined and the application behavior can be set.
The configuration is made in the _config.cfg_ file located in the installation directory.   
All parameters like `ListenAddr`, `CertFile`, `LoopInterval`, fping-related params etc. are well documented in this file.   
   
*Example of blocks and its hosts configurtion:*   
```
[LOCAL]
192.168.1.1             = One
192.168.1.2             = Two
192.168.1.3             = Three
192.168.1.4             = Four
....
[Zum Fröhlichen Zehnernetz]
10.0.0.1    = happy 1
10.0.0.2    = happy 2
...
[REMOTE]
212.51.140.225           = <span style="color: yellow">ZweierNet.ch</span>
2a02:168:6229::10        = <span style="color: blue">ZweierNet.ch IPv6</span>
8.8.8.8                  = The Quad Eight
...
```
*That will look something like this:*   
![ ](https://git.zweiernet.ch/sigi/pingpanel/raw/master/mcv1.png)


If you want to use a name other than config.cfg, you can specify this in the _/etc/default/pingpanel_ file
or using the `-c <filename>` parameter to the PingPanel.py script.

All Messages are written to the file _/var/log/pingpanel.log_, unless 
you define a different name in _/etc/default/pingpanel_.   

For using secure HTTP, uncomment the appropriate HTTPS parameters and set a valid certificate and keyfile. The enclosed 
_create\_server-certificate.sh_ script can create it for you, although it is only a self-signed certificate.   
 

### The Panel

![ ](https://git.zweiernet.ch/sigi/pingpanel/raw/master/ppb.png)

### Upgrade

**On Debian/Ubuntu related systems upgrade with:**

`dpkg -i  pingpanel_<version>_all.deb`   

The configuration files _config.cfg_ and _/etc/default/pingpanel_ will be preserved.
New files will be given the prefix .dpkg-NEW.
Adjust your config.cfg file with the new paramameters from .dpkg-NEW.

Restart the PingPanel Daemon.


**On other systems using the tar-archive:**

Unpack the tar-file in a new empty directory and then copy the relevant files to your active install-dir.   


### Support   

If you have any suggestion or find a bug, please send a mail to [pingpanel@zweiernet.ch](mailto:pingpanel@zweiernet.ch)   



### Credits   

*PingPanel Copyright 2025 by [Siegrist\(SystemLoesungen\) \<pingpanel@zweiernet.ch\>](https://pss.zweiernet.ch)*   
   
*fping see [fping.org](https://fping.org)*   
   
*Tornado library see [tornadoweb.org](https://www.tornadoweb.org/en/stable/)*   


``` 
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
 
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.
```