Commit | Line | Data |
---|---|---|
f9c5fff0 GMF |
1 | Table of Contents |
2 | ======================================= | |
3 | 1. Introduction | |
afdd699d GMF |
4 | 2. Configuration File |
5 | 3. Command line | |
6 | 4. References | |
f9c5fff0 GMF |
7 | |
8 | ||
9 | ||
c08bc448 GMF |
10 | 1. Introduction |
11 | ======================================= | |
12 | This application provides means to check the availability of remote hosts | |
13 | through pings to them. | |
14 | ||
15 | ||
16 | 1.1. Rationale | |
17 | --------------------------------------- | |
48169a4b GMF |
18 | The application uses ICMP echo requests messages, or TCP segments to verify |
19 | whether a given host is available (up) or not (down). | |
c08bc448 GMF |
20 | |
21 | The host's address can be an IP or a DNS. | |
22 | ||
23 | ||
24 | 1.2. How to use | |
25 | --------------------------------------- | |
26 | There are many ways to invoke the application, the simplest is just type: | |
aca0d1d7 | 27 | ./pingcheck |
12589451 | 28 | which uses the configuration values from the configuration file (described in |
f9c5fff0 | 29 | the Configuration File section). |
c08bc448 | 30 | |
703f4d65 | 31 | |
c08bc448 GMF |
32 | 1.3. Resources |
33 | --------------------------------------- | |
f9c5fff0 GMF |
34 | Further information about the problem domain can be found in the References |
35 | section. | |
36 | ||
37 | ||
38 | 1.4. Legal Issues | |
39 | --------------------------------------- | |
96d2fb59 | 40 | Most parts are licensed under the GPLv2 + linking exception. |
c08bc448 | 41 | |
12589451 GMF |
42 | The ICMP code, bost::net::dns and the "boost pinger" are licensed under the |
43 | boost license and include a note about this in the beginning of the source code. | |
c08bc448 GMF |
44 | |
45 | ||
afdd699d | 46 | 2. Configuration file |
c08bc448 | 47 | ======================================= |
12589451 GMF |
48 | In this section are described the configuration items, along with they possible |
49 | values and meanings. This section is organized in each major configuration | |
50 | block. | |
7a073300 GMF |
51 | |
52 | ||
afdd699d | 53 | 2.1. General |
7a073300 GMF |
54 | --------------------------------------- |
55 | This configurations are shared among and affect all the hosts. | |
61e224f8 GMF |
56 | - source-network-interface: the local network interface from where the ping |
57 | packages with originate. | |
58 | - nameserver: the server which the hosts names will be resolved. It is the | |
59 | lookup server which the application will query first. If left blank or omited, | |
60 | it will use the /etc/resolv.conf. | |
361552be | 61 | You can use the nslookup <host> to figure out the nameserver. |
a341119a | 62 | - hosts-down-limit: an absolute number, which ranges from 0 to the number of |
c5e4bfa1 GMF |
63 | hosts available. This value represents the minimum number of hosts that have |
64 | to fail (i.e. do not reply to the ping) in order to alert any external system. | |
a341119a | 65 | - ping-fail-limit: percentage of pings to a host that can fail. If the |
c5e4bfa1 GMF |
66 | percentage of failed pings to a host exceed this number, then the host is |
67 | considered down. | |
d52d036a | 68 | - status-notifier-cmd: the command line that is called when a host is down, or |
c1d76f1b GMF |
69 | up. Accepted variables are: |
70 | ${status} - down or up | |
1634f2a1 GMF |
71 | - link-up-interval: how long (in minutes) the pings must be returned with |
72 | success in order to consider the link up, or stable. | |
73 | - link-down-interval: how long (in minutes) the pings must fail, in order to the | |
74 | application consider the link down. | |
703f4d65 | 75 | |
703f4d65 | 76 | |
afdd699d | 77 | 2.2. Host |
7a073300 | 78 | --------------------------------------- |
d52d036a | 79 | - name: the DNS or IP of the host to ping. Take in consideration that, if a |
7a073300 GMF |
80 | DNS is given, the application pings all IPs in the look up table, however, if |
81 | IP is provide, it is the only which will be pinged. | |
48169a4b GMF |
82 | - port: when using a port based protocol, like TCP, this field specifies in |
83 | which port to ping the host. | |
d52d036a | 84 | - interval: the host will be pinged every "interval" seconds. |
42c9d872 GMF |
85 | - ping-protocol: indicates which protocol to use to ping the destination host, |
86 | the currently supported protocols are TCP and ICMP. | |
7a073300 GMF |
87 | |
88 | ||
f9c5fff0 | 89 | |
afdd699d GMF |
90 | 3. Command line |
91 | ======================================= | |
92 | The command line accepts the general configuration file options plus the | |
93 | following: | |
94 | - config-file: command line to specify a file where the hosts and other | |
95 | configuration information are provided. | |
078d3cca | 96 | - daemon: run the application as a daemon. |
3625c0e5 GMF |
97 | - log-level: apply a filter of which log messages will be printed. The available |
98 | options are the default Unix levels (e.g. debug, info, etc.). | |
afdd699d GMF |
99 | |
100 | ||
101 | ||
102 | 4. References | |
f9c5fff0 GMF |
103 | ======================================= |
104 | [1] http://tools.ietf.org/html/rfc792 | |
105 | [2] http://en.wikipedia.org/wiki/Ping | |
106 | [3] http://en.wikipedia.org/wiki/Internet_Control_Message_Protocol | |
107 | [4] http://www.boost.org/doc/libs/1_45_0/doc/html/boost_asio.html | |
108 | [5] http://www.boost.org/doc/libs/1_45_0/doc/html/program_options.html | |
48169a4b | 109 | [6] http://www.networkuptime.com/nmap/page4-4.shtml |