2 =======================================
11 =======================================
12 This application provides means to check the availability of remote hosts
13 through pings to them.
17 ---------------------------------------
18 The application uses ICMP echo requests messages, or TCP segments to verify
19 whether a given host is available (up) or not (down).
21 The host's address can be an IP or a DNS.
25 ---------------------------------------
26 There are many ways to invoke the application, the simplest is just type:
28 which uses the configuration values from the configuration file (describled in
29 the Configuration File section).
33 ---------------------------------------
34 Further information about the problem domain can be found in the References
39 ---------------------------------------
40 Most parts are licensed under the GPLv2 + linking exception.
42 The icmp code, bost::net::dns and the "boost pinger" are
43 licensed under the boost license and include a note
44 about this in the beginning of the source code.
48 =======================================
49 In this section are described the configuration items, along with they
50 possible values and meanings. This section is organized in each major
55 ---------------------------------------
56 This configurations are shared among and affect all the hosts.
57 - source-network-interface: the local network interface from where the ping
58 packages with originate.
59 - nameserver: the server which the hosts names will be resolved. It is the
60 lookup server which the application will query first. If left blank or omited,
61 it will use the /etc/resolv.conf.
62 You can use the nslookup <host> to figure out the nameserver.
63 - ping-protocol: select one of the available ping protocols (ICMP or TCP).
64 - hosts-down-limit: an absolute number, which ranges from 0 to the number of
65 hosts available. This value represents the minimum number of hosts that have
66 to fail (i.e. do not reply to the ping) in order to alert any external system.
67 - ping-fail-limit: percentage of pings to a host that can fail. If the
68 percentage of failed pings to a host exceed this number, then the host is
70 - status-notifier-cmd: the command line that is called when a host is down, or
71 up. Accepted variables are:
72 ${status} - down or up
73 - link-up-interval: how long (in minutes) the pings must be returned with
74 success in order to consider the link up, or stable.
75 - link-down-interval: how long (in minutes) the pings must fail, in order to the
76 application consider the link down.
80 ---------------------------------------
81 - name: the DNS or IP of the host to ping. Take in consideration that, if a
82 DNS is given, the application pings all IPs in the look up table, however, if
83 IP is provide, it is the only which will be pinged.
84 - port: when using a port based protocol, like TCP, this field specifies in
85 which port to ping the host.
86 - interval: the host will be pinged every "interval" seconds.
91 =======================================
92 The command line accepts the general configuration file options plus the
94 - config-file: command line to specify a file where the hosts and other
95 configuration information are provided.
100 =======================================
101 [1] http://tools.ietf.org/html/rfc792
102 [2] http://en.wikipedia.org/wiki/Ping
103 [3] http://en.wikipedia.org/wiki/Internet_Control_Message_Protocol
104 [4] http://www.boost.org/doc/libs/1_45_0/doc/html/boost_asio.html
105 [5] http://www.boost.org/doc/libs/1_45_0/doc/html/program_options.html
106 [6] http://www.networkuptime.com/nmap/page4-4.shtml