icpld is a tool to log the uptime of your network connection.
Version: 1.1.5ICPLD is a connection monitor which allows you to keep track of your network connection perfomance. It will log each occasion of broken networking.
License: BSD License
Operating System: Linux
icpld runs as a background process, and sends ICMP requests to an ip of your choice. When a reply isn't received within proper amount of time, it will consider the connection as unavailable and put a stamp in its log.
· ICPLD is developed on several different host systems, but mainly on a somewhat standard installation of Slackware 9.1 and FreeBSD 4.7-STABLE. No third party libraries which is not as good as standard is required. The only thing ICPLD relies on, is the 'ping' binary. ICPLD is written with cheapness in mind, both concerning CPU power as well as internal memory usage, hence it can be ran even on your 486dx PC gateway at home.
It's recommended to run ICPLD toward a host that's aware of you doing so, as constant ICMP requests might be less appreciated by some administrators. This is when the -dinterval switch comes in handy, as you can use another interval for checking, once the connection is down.
And when a working connection is detected, ICPLD will fall back to either the default interval, or the one specified with -interval. -dinterval should, however, NOT be lower than 3 seconds, as the timeout for two ICMP packets is ~3 seconds. Setting dinterval lower, will spawn a pinging process, faster than the old one has been terminated.
The normal way to use ICPLD without a configuration file is as follows:
icpld -ip ip.of.the.target -fbip the.fallback.target.ip
This will fork ICPLD to the background, and send an ICMP request every 10 seconds to ip.of.the.target. If a reply isn't received within an appropriate amount of time, the connection is considered broken and a stamp is put in the log.
As of version 0.6.0 ICPLD also supports IPv6. In order to perform the same operations, but with IPv6 networking instead, simply replace -ip with -ip6 and -fbip with -fbip6. Note that all operations available may be applied to IPv6 as well, by simply adding a 6 to the end of the option.
The log may be read by executing
The log file is by default stored in ~/.icpld/log
Another example would be:
icpld -ip 192.168.0.1 -fbip 192.168.1.1 -interval 15 -dinterval 5 -nd
Which will check if 192.168.0.1 is available every 15 seconds. If it's considered down (it doesn't reply), it will try every 5 seconds. The -nd argument prevents ICPLD from forking to the background, which also makes ICPLD a bit more verbose.
Note that the log will not be 100% accurate, due to timeout time and interval (the lower the interval, the higher accuracy you will obtain, as well as higher traffic). It is roughly a few seconds differing at each occasion.
There's several other options available, see 'icpld --help' or 'man icpld' for further information on these. In the long run, it may become weary with command line arguments. Hence icpld has a configuration file.
What's New in This Release:
· 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.