ICPLD (Internet Connection Performance Logging Daemon) is a connection monitor that sends ICMP requests to IP addresses of your choice and monitors if your machine has a working network connection. It logs failed attempts to reach the hosts, and will stamp a log as soon as a reply is received. It keeps track of when and for how long the connection was unavailable and records both total down time and each occasion of interrupted connection. It supports IPv6 and can execute a command whenever a connection goes up or down, which is useful for alerting users.
| Tags | Internet Diagnostics Logging Monitoring Networking Systems Administration |
|---|---|
| Licenses | BSD Original |
| Operating Systems | POSIX BSD FreeBSD NetBSD OpenBSD GNU/Hurd Linux Solaris Unix Mac OS X |
| Implementation | C++ |
Recent releases


Changes: This is simply a maintenance release which replaces a recently deprecated struct. A noticeable change is that icpld now compiles with IPv6 support by default.


Changes: This release adds two init scripts. No code changes have been made whatsoever.


Changes: This release adds the -err and -err6 options, which allow you to save a log of the ping sequence that failed and caused icpld to stamp the connection as dead. The rare and slightly embarrassing "Can't write to IPv6 logfile" bug is fixed. Binary packages are no longer being released.


Changes: This release fixes a few minor bugs as well as NetBSD and OpenBSD crashes. It also introduces two new options, -iface and -errfile. -iface allows you to tell icpld which interface or source address to use to send the ICMP signals. -errfile sets the path to which file icpld should write verbose output concerning a failed ping attempt. Both options are very useful for network troubleshooting.


Changes: This release introduces the -detach option, which will fork an icpld process that's being ran in the foreground. It also fixes a few minor bugs mainly concerning updates in the gcc compiler.
- All comments
Recent commentsRe: Very nice pinning down DSL internet connection drops
> so I hear a decreasing tone or an
> increasing tone
> when my ADSL connection goes down or up,
> respectively.
> Documentation indicated sound would not
> play
> with icpld running as a daemon, but it
> does play while in daemon mode for me.
This is only true for the terminal bell beeping. I should definately clarify this in the documentation, now that the option to play other sounds is available.
> If the system crashes, there remains the
> file
> ~/.icpld/icpld.pid
> which must be removed by hand; since
> "icpld -quit"
> will not remove this file when icpld
> does not run,
> and icpld will not start while this
> icpld.pid file remains.
> Because of this, when I created a
> startup /etc/init.d/icpld
> script, I had to alter that file 3 times
> until I noticed this slight oddity.
You do have a point here. This will be fixed in the upcoming release. icpld -quit should definately remove stale pid-files. Thank you for pointing this out. You could by the way have taken a look at the startup script available in the contrib directory :-)
Thank you for the feedback
Very nice pinning down DSL internet connection drops
With this, I could tell that my connections were down
for minutes rather than hours as I formerly thought.
I now spend far less human time monitoring and
wondering about my ADSL connection.
Here is an example response with "icpld -log -m" or from /var/log/icpld.log,
IPv4: Connection down: Wed Jun 9 22:30:03 2004
IPv4: connection up: Wed Jun 9 22:41:09 2004
Down for: 00:11:06
IPv4 Total: 00:26:30
IPv4 connection dropped 6 times.
This particular drop was down for 11 minutes,
while my connection has been down 6 times
for a total of 26 minutes since this daemon started
yesterday.
In the configuration file, I use sounds from my
Debian package frozen-bubble,
nobeep=false
cmd4dn=play
/usr/share/games/frozen-bubble/snd/stick.wav
cmd4up=play /usr/share/games/frozen-bubble/snd/rebound.wav
so I hear a decreasing tone or an increasing tone
when my ADSL connection goes down or up, respectively.
Documentation indicated sound would not play
with icpld running as a daemon, but it does play while in daemon mode for me.
While I only wanted logging, the sounds for my internet
connection failing/working enhance my mind-meld
with my computer.
If the system crashes, there remains the file
~/.icpld/icpld.pid
which must be removed by hand; since "icpld -quit"
will not remove this file when icpld does not run,
and icpld will not start while this ficpld.pid file remains.
Because of this, when I created a startup /etc/init.d/icpld
script, I had to alter that file 3 times until I noticed this slight oddity.