Skip to content

Blocking mode

Pi-hole FTLDNS supports two different methods for blocking queries. Both have their advantages and drawbacks. They are summarized on this page. The blocking mode can be configured in /etc/pihole/pihole-FTL.conf.

This setting can be updated by sending SIGHUP to pihole-FTL (sudo killall -SIGHUP pihole-FTL).

Pi-hole's unspecified IP blocking (default)

/etc/pihole/pihole-FTL.conf setting:

BLOCKINGMODE=NULL

Blocked queries will be answered with the unspecified address

;; QUESTION SECTION:
;doubleclick.net.               IN      ANY

;; ANSWER SECTION:
doubleclick.net.        2       IN      A       0.0.0.0
doubleclick.net.        2       IN      AAAA    ::

This blocking mode is the Pi-hole developers' recommendation.

Following RFC 3513, Internet Protocol Version 6 (IPv6) Addressing Architecture, section 2.5.2, the address 0:0:0:0:0:0:0:0 (or :: for short) is the unspecified address. It must never be assigned to any node and indicates the absence of an address. Following RFC1122, section 3.2, the address 0.0.0.0 can be understood as the IPv4 equivalent of ::.

Advantages

  • The client does not even try to establish a connection for the requested website
  • Speedup and less traffic
  • Solves potential HTTPS timeouts as requests are never performed
  • No need to run a web server on your Pi-hole (reduces complexity when running other web services on the same machine)

Disadvantage

  • Blocking page cannot be shown and whitelisting has to be performed from the dashboard or CLI

Pi-hole's IP (IPv6 NODATA) blocking

/etc/pihole/pihole-FTL.conf setting:

BLOCKINGMODE=IP-NODATA-AAAA

Blocked queries will be answered with the local IPv4 addresses of your Pi-hole (as configured in your setupVars.conf file). Blocked AAAA queries will be answered with NODATA-IPV6 and clients will only try to reach your Pi-hole over its static IPv4 address

;; QUESTION SECTION:
;doubleclick.net.               IN      ANY

;; ANSWER SECTION:
doubleclick.net.        2       IN      A       192.168.2.11

Advantage

  • Shows a blocking page from which blocked domains can be whitelisted
  • Serves IPv4-only replies and hence mitigates issues with rotating IPv6 prefixes

Disadvantages

  • Requires a web server to run on your Pi-hole
  • May cause time-outs for HTTPS content even with properly configured firewall rules

Pi-hole's full IP blocking

/etc/pihole/pihole-FTL.conf setting:

BLOCKINGMODE=IP

Blocked queries will be answered with the local IP addresses of your Pi-hole (as configured in your setupVars.conf file)

;; QUESTION SECTION:
;doubleclick.net.               IN      ANY

;; ANSWER SECTION:
doubleclick.net.        2       IN      A       192.168.2.11
doubleclick.net.        2       IN      AAAA    fda2:2001:4756:0:ab27:beff:ef37:4242

Advantage

  • Shows a blocking page from which blocked domains can be whitelisted

Disadvantages

  • Requires a web server to run on your Pi-hole
  • May cause time-outs for HTTPS content even with properly configured firewall rules
  • May cause problems with alternating prefixes on IPv6 addresses (see IP-AAAA-NODATA)

Pi-hole's NXDOMAIN blocking

/etc/pihole/pihole-FTL.conf setting:

BLOCKINGMODE=NXDOMAIN

Blocked queries will be answered with an empty response (no answer section) and status NXDOMAIN (no such domain)

;; QUESTION SECTION:
;doubleclick.net.               IN      ANY

Advantages & Disadvantages

Similar to NULL blocking, but experiments suggest that clients may try to resolve blocked domains more often compared to NULL blocking.

Pi-hole's NODATA blocking

/etc/pihole/pihole-FTL.conf setting:

BLOCKINGMODE=NODATA

Blocked queries will be answered with an empty response (no answer section) and status NODATA (domain exists but there is no record for the requested query type)

;; QUESTION SECTION:
;doubleclick.net.               IN      ANY

Advantages & Disadvantages

Similar to NXDOMAIN blocking. Clients might have a better acceptance of NODATA replies compared to NXDOMAIN replies.


Last update: February 5, 2020
Back to top