Skip to main content

Dnsmasq DHCP monitoring with Netdata

Dnsmasq is a lightweight, easy to configure, DNS forwarder and DHCP server.

This module monitors Dnsmasq DHCP leases database.

Charts#

It produces the following set of charts for every dhcp-range:

  • DHCP Range Allocated Leases in leases
  • DHCP Range Utilization in percentage

Auto-detection#

Module automatically detects all configured dhcp-ranges reading dnsmasq configuration files.

By default it uses:

  • /var/lib/misc/dnsmasq.leases to read leases.
  • /etc/dnsmasq.conf to detect dhcp-ranges.
  • /etc/dnsmasq.d to find additional configurations.

Configuration#

Edit the go.d/dnsmasq_dhcp.conf configuration file using edit-config from the Netdata config directory, which is typically at /etc/netdata.

cd /etc/netdata # Replace this path with your Netdata config directory
sudo ./edit-config go.d/dnsmasq_dhcp.conf

Here is an example:

jobs:
- name: dnsmasq_dhcp
leases_path: /var/lib/misc/dnsmasq.leases
conf_path: /etc/dnsmasq.conf
conf_dir: /etc/dnsmasq.d

For all available options please see module configuration file.

Troubleshooting#

To troubleshoot issues with the dnsmasq_dhcp collector, run the go.d.plugin with the debug option enabled. The output should give you clues as to why the collector isn't working.

First, navigate to your plugins directory, usually at /usr/libexec/netdata/plugins.d/. If that's not the case on your system, open netdata.conf and look for the setting plugins directory. Once you're in the plugin's directory, switch to the netdata user.

cd /usr/libexec/netdata/plugins.d/
sudo -u netdata -s

You can now run the go.d.plugin to debug the collector:

./go.d.plugin -d -m dnsmasq_dhcp

Reach out

If you need help after reading this doc, search our community forum for an answer. There's a good chance someone else has already found a solution to the same issue.

Documentation

Community