Inhaltsverzeichnis

Pi-hole – Werbe- und Tracking-Blocker im Heimnetz

Pi-hole ist ein netzwerkweiter DNS-Filter, der Werbung, Tracker und schädliche Domains bereits auf DNS-Ebene blockiert. Statt auf jedem Endgerät einen Adblocker zu installieren, wird Pi-hole zentral im Netzwerk betrieben – häufig auf einem Raspberry Pi oder in einem Docker-Container.

Funktionsweise von Pi-hole

  1. Clients im Netzwerk verwenden Pi-hole als DNS-Server.
  2. Pi-hole prüft jede DNS-Anfrage gegen Blocklisten (Ad-/Tracking-Domains).
  3. Geblockte Domains werden nicht aufgelöst, Werbung und Tracking-Anfragen laufen ins Leere.
  4. Erlaubte Domains werden an einen Upstream-DNS-Server (z. B. Unbound, DoT/DoH-Resolver) weitergeleitet.

Systemvoraussetzungen

Pi-hole Installation (klassisch auf Linux)

Pi-hole wird in der Regel auf einem Debian-/Ubuntu-basierten System installiert.

sudo apt update
sudo apt upgrade
curl -sSL https://install.pi-hole.net | bash
  1. System aktualisieren (apt update/upgrade).
  2. Installationsskript ausführen und den Dialogen folgen.
  3. Upstream-DNS-Server wählen (z. B. Quad9, Cloudflare oder eigenen Resolver).
  4. Blocklisten übernehmen (Standardlisten können später erweitert werden).
  5. Webinterface und Admin-Passwort notieren.

Pi-hole Installation mit Docker

Pi-hole kann auch in einem Docker-Container betrieben werden, z. B. auf einem NAS oder Server.

docker run -d \
  --name pihole \
  -p 53:53/tcp -p 53:53/udp \
  -p 80:80 \
  -e TZ="Europe/Berlin" \
  -v /opt/pihole/etc-pihole:/etc/pihole \
  -v /opt/pihole/etc-dnsmasq.d:/etc/dnsmasq.d \
  --dns=127.0.0.1 --dns=1.1.1.1 \
  --restart=unless-stopped \
  pihole/pihole:latest

Wichtig ist, dass Port 53 (DNS) und Port 80 (Webinterface) erreichbar sind und der Host eine statische IP besitzt.


Grundkonfiguration von Pi-hole

Zugriff auf das Webinterface

Nach der Installation ist das Webinterface über die IP-Adresse des Pi-hole-Servers erreichbar:

http://<PIHOLE-IP>/admin

Im Dashboard werden Statistiken zu Anfragen, geblockten Domains und Top-Clients angezeigt.

Upstream-DNS-Server konfigurieren

Unter „Settings → DNS“ können Upstream-DNS-Server gewählt werden, z. B.:

Blocklisten verwalten

Pi-hole nutzt sogenannte Adlists, um Werbung und Tracking-Domains zu blockieren. Unter „Group Management → Adlists“ können zusätzliche Listen eingetragen werden.

https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts

Nach dem Hinzufügen neuer Listen sollte die Gravity-Datenbank aktualisiert werden:

pihole -g

Pi-hole als DHCP-Server verwenden

Pi-hole kann optional als DHCP-Server fungieren und Clients automatisch die richtige DNS-Konfiguration zuweisen. Dies ist besonders sinnvoll, wenn der Router nur eingeschränkte DNS-Einstellungen erlaubt.

  1. Im Router den internen DHCP-Server deaktivieren (falls möglich).
  2. In Pi-hole unter „Settings → DHCP“ den DHCP-Server aktivieren.
  3. IP-Range, Gateway (Router-IP) und Lease-Time definieren.
  4. Clients neu verbinden, damit sie neue IP- und DNS-Einstellungen erhalten.

Typische Konfiguration im Heimnetz

Variante 1: Router zeigt auf Pi-hole als DNS

  1. Im Router Pi-hole-IP als primären DNS-Server eintragen.
  2. Optional sekundären DNS entfernen oder auf Pi-hole spiegeln (je nach Router).
  3. Clients erhalten Pi-hole automatisch per DHCP als DNS.

Variante 2: Pi-hole als DHCP + DNS

  1. Router-DHCP deaktivieren.
  2. Pi-hole-DHCP aktivieren und konfigurieren.
  3. Alle Clients nutzen Pi-hole direkt als DNS-Server.

Whitelist, Blacklist & Regex-Filter

Einzelne Domains können gezielt erlaubt (Whitelist) oder blockiert (Blacklist) werden. Zusätzlich unterstützt Pi-hole Regex-Filter, um ganze Domainmuster zu blockieren.

(^|\.)facebook\.com$
(^|\.)doubleclick\.net$

Damit lassen sich z. B. bestimmte Tracking-Domains oder komplette Dienste granular steuern.


Sicherheit & Best Practices

pihole -up

Vorteile von Pi-hole im Netzwerk