Building a Redundant Pi-hole Setup for My Home Network

Pi-hole is one of those tools that starts as a simple home-lab project and quickly becomes an important part of the network. It provides network-wide DNS filtering, blocks many advertisements and trackers, and gives useful visibility into which devices are making DNS requests.

In my home network, I run two Pi-hole servers instead of relying on a single instance. The primary reason is availability. Since Pi-hole provides DNS services for the network, losing the server can prevent devices from resolving domain names even when the internet connection itself is still working.

By deploying two Pi-hole systems, devices can use a secondary DNS server if the first one becomes unavailable.

Why I Use Two Pi-hole Servers

A single Pi-hole works well, but it also creates a single point of failure.

If the Pi-hole server is rebooting, being updated, or experiencing a hardware problem, devices may temporarily lose DNS resolution. Running a second Pi-hole reduces that risk and makes the service more reliable.

The two servers provide:

  • Redundant DNS resolution
  • Network-wide advertisement and tracker blocking
  • Continued DNS service during maintenance
  • Visibility into DNS activity
  • Separate systems for testing configuration changes

This design is especially useful in a home lab where servers and virtual machines are frequently restarted, updated, or modified.

How the Setup Works

Both Pi-hole servers are assigned static IP addresses on the home network. These addresses are configured as the primary and secondary DNS servers provided to network devices.

A typical configuration looks like this:

Primary DNS:   Pi-hole 1
Secondary DNS: Pi-hole 2

When a device needs to resolve a domain name, it sends the request to one of the available Pi-hole servers. Pi-hole checks the requested domain against its configured blocklists.

If the domain is allowed, the request is forwarded to an upstream DNS provider. If the domain appears on a blocklist, Pi-hole prevents the connection.

Client Device
     |
     v
Pi-hole DNS Server
     |
     +---- Blocked Domain ----> Request Denied
     |
     +---- Allowed Domain ----> Upstream DNS Server

What Pi-hole Blocks

Pi-hole can block DNS requests associated with:

  • Advertisements
  • Tracking services
  • Telemetry platforms
  • Known malicious domains
  • Unwanted applications or services
  • Custom domains added by the administrator

Because filtering happens at the DNS level, devices do not usually need browser extensions or individual filtering software.

This allows Pi-hole to protect and filter traffic from many different types of devices, including:

  • Desktop computers
  • Laptops
  • Mobile phones
  • Smart televisions
  • Streaming devices
  • Tablets
  • Internet of Things devices

Managing Two Pi-hole Servers

Running two servers introduces one additional responsibility: keeping their configurations consistent.

Important settings include:

  • Blocklists
  • Allowlist entries
  • Denylist entries
  • Local DNS records
  • Custom DNS settings
  • Upstream DNS providers

Changes can be entered manually on both systems, or the configurations can be synchronized using an additional management tool or script.

For a small home environment, manual synchronization may be sufficient. For a larger or frequently changing setup, automated synchronization can make management easier.

Monitoring DNS Activity

The Pi-hole dashboard provides a useful overview of DNS activity across the network.

It can display:

  • Total DNS queries
  • Blocked queries
  • Frequently requested domains
  • Most active client devices
  • Upstream DNS performance
  • Query types
  • Allowed and blocked domains

This information is useful for both troubleshooting and security monitoring.

For example, a device making an unusually large number of requests may indicate:

  • A poorly configured application
  • Excessive telemetry
  • A malfunctioning device
  • Unwanted software
  • Potentially suspicious activity

Pi-hole is not a full security monitoring platform, but its DNS logs can provide useful clues when investigating network behavior.

Availability and Maintenance

With two Pi-hole servers, maintenance can be performed without completely interrupting DNS service.

One server can remain online while the other is:

  • Updated
  • Rebooted
  • Backed up
  • Reconfigured
  • Tested

After confirming that the first system is working correctly, the same maintenance can be performed on the second server.

This staggered approach reduces the chance of an outage caused by updates or configuration changes.

Lessons Learned

The biggest lesson from this project is that DNS is a critical network service.

Pi-hole may appear to be a simple advertisement blocker, but once the network depends on it for DNS resolution, reliability becomes important. Running two instances provides a practical way to reduce downtime while also creating an opportunity to learn more about DNS, redundancy, logging, and network troubleshooting.

The project also demonstrates how older or low-powered hardware can still provide valuable infrastructure services in a home lab.

Final Thoughts

Running two Pi-hole servers provides more than advertisement blocking. It creates a redundant DNS filtering service that improves visibility, control, and reliability across the home network.

This project combines several useful home-lab concepts:

  • DNS administration
  • Network filtering
  • Service redundancy
  • Static IP addressing
  • Monitoring
  • Configuration management
  • Troubleshooting

Pi-hole is relatively simple to deploy, but using two servers turns it into a more complete infrastructure project and makes it a strong addition to my home-lab documentation.

Similar Posts