bind

Bind9 (or named) is a very flexible, full-featured DNS system.

This module will monitor one or more Bind9 servers depending on configuration.

Requirements

  • bind version 9.9+ with configured statistics-channels

For detail information on how to get your bind installation ready, please refer to the following articles:

Normally, you will need something like this in your named.conf.options:

statistics-channels {
        inet 127.0.0.1 port 8653 allow { 127.0.0.1; };
        inet ::1 port 8653 allow { ::1; };
};

Charts

It produces the following charts:

  • Global Received Requests by IP version (IPv4, IPv6) in requests/s
  • Global Successful Queries in queries/s
  • Global Recursive Clients in clients
  • Global Queries by IP Protocol (TCP, UDP) in queries/s
  • Global Queries Analysis in queries/s
  • Global Received Updates in updates/s
  • Global Query Failures in failures/s
  • Global Query Failures Analysis in failures/s
  • Global Server Statistics in operations/s
  • Global Incoming Requests by OpCode in requests/s
  • Global Incoming Requests by Query Type in requests/s

Per View Statistics (the following set will be added for each bind view):

  • Resolver Active Queries in queries
  • Resolver Statistics in operations/s
  • Resolver Round Trip Time in queries/s
  • Resolver Requests by Query Type in requests/s
  • Resolver Cache Hits in operations/s

Configuration

Needs only url. Here is an example for several servers:

jobs:
  - name: local
    url: http://127.0.0.1:8653/json/v1

  - name: local
    url: http://127.0.0.1:8653/xml/v3

  - name: remote
    url: http://203.0.113.10:8653/xml/v3

  - name: local_with_views
    url: http://127.0.0.1:8653/json/v1
    permit_view: '!_* *'

View filter syntax: simple patterns.

For all available options please see module configuration file.

Troubleshooting

Ensure that the statistics-channels feature is configured correctly. Run following command:

curl “http://localhost:8653/json/v1/server

It should print out a bunch of info about the statistics of the server.

Check the module debug output. Run the following command as netdata user:

./go.d.plugin -d -m bind