Name

atrmon — Adaptive Traffic Routing monitoring daemon

Synopsis

atrmon [-hv] [-d dbglev] -f cfgfile

Description

The Adaptive Traffic Routing is a component allowing to delegate a special zone (or zones) nameserver to itself and respond to client requests according to the current accessibility of particular hosts.

The ATR monitor sends ICMP ECHO messages to all configured targets (ping groups). From every group, at least one response must be received within configured timeout to keep the group alive. If all groups are alive, particular address is included into the set of addresses being sent as a response to DNS query. Otherwise it is excluded from the set. Currently, only IPv4 targets can be tested.

If there is more than one live address, the ATR monitor selects the answer according to the strategy item setting. It can send all live addresses, or select only one according to the loadbalancing strategy. If there is no live address, the ATR monitor behaves according to the fallback item setting.

The daemon runs in fact as three processes, like Kernun proxies do. The main process just controls run of its children. The Asynchronous Configuration Resolver provides for DNS resolution refreshing. The regular child process handles the real operation.

The current status of pinging to the target hosts can be watched by the monitor(1) tool avaliable also as a command of the kat(8) tool.

Example

We create a special subdomain for loadbalancing, define the nameserver for it and alias a host to a name in this special domain:


lb.tns.cz.  3600  IN  NS     atr.tns.cz.
www.tns.cz. 3600  IN  CNAME  www.lb.tns.cz.  

Then we run the ATR on the host atr.tns.cz with configuration like this:


  atrmon ATR {
    listen-on {
      non-transparent atr.tns.cz;
    }
    session-acl ALL {
      accept;
    }
    request-acl DOMAIN {
      name lb.tns.cz;
      accept;
      nameserver 3600 atr.tns.cz;
    }
    request-acl WWW {
      name www.lb.tns.cz;
      accept;
      address BNS {
        data 10 [1.1.1.1];
        ping { [1.1.1.1] } 5;
      }
      address PHA {
        data 10 [2.2.2.2];
        ping { [2.2.2.2] } 5;
      }
    }
  }

Signals

The atrmon daemon handles following signals:

SIGUSR1

Log level increasing.

SIGUSR2

Log level decreasing.

SIGINFO

Operation status logging; parent process logs info about all children, child process logs current status of all ping groups.

SIGHUP, SIGINT, SIGQUIT, SIGTERM

Immediate termination; the daemon immediately closes the service.

Options

-h

Print usage information.

-v

Display version information and exit.

-d dbglev

Set debuging level to a specific number. Permitted values are 3 through to 9, 3 being the least and 9 the most verbose. See logging(7) for details. This setting is relevant only till configuration reading is finished.

-f cfgfile

Read cfgfile for configuration information.

See Also

Authors

This man page is a part of Kernun Firewall.
Copyright © 2000–2023 Trusted Network Solutions, a. s.
All rights reserved.