A distributed (see Design) network monitoring tool that is easily operated from the command line. Clink operates via icmp
ping requests while also collecting other statistics. Clink aims to provide a comprehensive monitoring view of services over a period of time.
Clink was created out of a need for a more versital and long running CLI monitoring tool that provided detailed statistics while maintaining the simplicity of traditional 'query-once' network utilities. A key motivation for clink was to provide more comprehensive view of the data collected in a report format that is easily understood.
#####The initial design goals of clink:
- Ability to gather scan information from multiple contexts.
- External nodes powered by companion application
clinkd
provide different contexts. - Show statistics of such a scan in a meaningful manner.
- Configuration files detailing monitoring configurations.
- Simple human readable format.
- Self describing document structure.
- Enable user to create comlpex scans that are easily reproducable.
- Suitable for persistent long running scans as well as shorter 'query-like' scans.
- Provides detailed reports representing such data efficiently.
- Configuration to detail scan intervals, summary type, etc.
Clink is designed to provide more power in a simpler tool.
Clink is accompanied...
To follow...
Clink has several modes that can be used to accomplish a variety of tasks. The core functionality of clink provides an interface to monitor a services based on the specification in a config file. ...
-s ...
-f ...
#####Example Usage
$ clink -s ...
$ clink -s ...
#####Distributions Visit the builds page for pre-built distributions.
#####Building from Source Use the following command to retrieve the source:
go get github.com/mbergoon/clink
Next, build the project with:
go install github.com/mbergoon/clink
The binary should be available in the bin
folder of the Go workspace. Run it with (sudo is required to create raw sockets used for icmp
- more info below):
sudo clink [options]
Despite the requirement for root execution inorder to execute this application - it is possible to conceal and/or surpress this requirement in one of two ways. These methods are to be detailed and included in an instalation script to follow.
- Method 1: Using SETUID extended attribute permission with root user and group.
- Method 2: Using Capability Sets granting PERMITTED (in some scenarios INHERITABLE is required) for CAP_NET_RAW capability.
- cbergoon
- mbergoon
To follow...