Smokeping_probes_AnotherDNS - Man Page
Alternate DNS Probe
Synopsis
*** Probes *** +AnotherDNS forks = 5 offset = 50% step = 300 # The following variables can be overridden in each target section /^influx_.+/ = influx_location = In the basement authoritative = 0 expect_text = 192.168.50.60 ipversion = 4 lookup = www.example.org mininterval = 0.5 pings = 5 port = 53 protocol = udp recordtype = A require_answers = 0 require_noerror = 0 require_nxdomain = 0 timeout = 5 # [...] *** Targets *** probe = AnotherDNS # if this should be the default probe # [...] + mytarget # probe = AnotherDNS # if the default probe is something else host = my.host /^influx_.+/ = influx_location = In the basement authoritative = 0 expect_text = 192.168.50.60 ipversion = 4 lookup = www.example.org mininterval = 0.5 pings = 5 port = 53 protocol = udp recordtype = A require_answers = 0 require_noerror = 0 require_nxdomain = 0 timeout = 5
Description
Like DNS, but uses Net::DNS and Time::HiRes instead of dig. This probe does *not* retry the request three times before it is considered "lost", like dig and other resolver do by default. If operating as caching Nameserver, BIND (and maybe others) expect clients to retry the request if the answer is not in the cache. So, ask the nameserver for something that he is authoritative for if you want measure the network packet loss correctly.
If you have a really fast network and nameserver, you will notice that this probe reports the query time in microsecond resolution. :-)
Variables
Supported probe-specific variables:
- forks
Run this many concurrent processes at maximum
Example value: 5
Default value: 5
- offset
If you run many probes concurrently you may want to prevent them from hitting your network all at the same time. Using the probe-specific offset parameter you can change the point in time when each probe will be run. Offset is specified in % of total interval, or alternatively as 'random', and the offset from the 'General' section is used if nothing is specified here. Note that this does NOT influence the rrds itself, it is just a matter of when data acquisition is initiated. (This variable is only applicable if the variable 'concurrentprobes' is set in the 'General' section.)
Example value: 50%
- step
Duration of the base interval that this probe should use, if different from the one specified in the 'Database' section. Note that the step in the RRD files is fixed when they are originally generated, and if you change the step parameter afterwards, you'll have to delete the old RRD files or somehow convert them. (This variable is only applicable if the variable 'concurrentprobes' is set in the 'General' section.)
Example value: 300
Supported target-specific variables:
- /^influx_.+/
This is a tag that will be sent to influxdb and has no impact on the probe measurement. The tag name will be sent without the "influx_" prefix, which will be replaced with "tag_" instead. Tags can be used for filtering.
Example value: influx_location = In the basement
- authoritative
Send non-recursive queries and require authoritative answers.
Default value: 0
- expect_text
A string that should be present in the DNS answer. This can be used to verify that an A record contains the expected IP address, a PTR record reflects the expected hostname, etc. If the query returns multiple records, any single match will pass the test.
Example value: 192.168.50.60
- ipversion
The IP protocol used. Possible values are "4" and "6". Passed to echoping(1) as the "-4" or "-6" options.
Example value: 4
Default value: 4
- lookup
Name of the host to look up in the dns.
Example value: www.example.org
- mininterval
Minimum time between sending two lookup queries in (possibly fractional) seconds.
Default value: 0.5
- pings
How many pings should be sent to each target, if different from the global value specified in the Database section. Note that the number of pings in the RRD files is fixed when they are originally generated, and if you change this parameter afterwards, you'll have to delete the old RRD files or somehow convert them.
Example value: 5
- port
The UDP Port to use.
Default value: 53
- protocol
The Network Protocol to use.
Default value: udp
- recordtype
Record type to look up.
Default value: A
- require_answers
Only Count Answers with answer count >= this value.
Default value: 0
- require_noerror
Only Count Answers with Response Status NOERROR.
Default value: 0
- require_nxdomain
Set to 1 if NXDOMAIN should be interpreted as success instead of failure. This reverses the normal behavior of the probe. Example uses include testing a DNS firewall, verifying that a mail server IP is not listed on a DNSBL, or other scenarios where NXDOMAIN is desired.
Example value: 0
Default value: 0
- timeout
Timeout for a single request in seconds.
Default value: 5
Authors
Christoph Heine <Christoph.Heine@HaDiKo.DE>