Dein Heimnetz läuft über einen Router, dessen Innereien du nicht einsehen kannst. Die Firmware bestimmt, welche DNS-Server deine Geräte nutzen, welche Regeln dein Datenverkehr durchläuft und was ein Update verändert. Willst du das ändern, baust du dir deinen eigenen Router. Das freie Projekt Pi-Dock-Wifi zeigt, wie ein Raspberry Pi 5 mit zwei WLAN-Karten, eigener DHCP- und DNS-Verwaltung und Pi-hole als kompletter Router arbeitet 1 . Jede Konfigurationsdatei bleibt lesbar und von dir veränderbar.
Kurzantwort#
Pi-Dock-Wifi bündelt hostapd, dnsmasq, eine Firewall, Pi-hole und ein Web-Dashboard in einem Docker-Compose-Stack auf einem Raspberry Pi 5 1 . Der Pi strahlt zwei getrennte Netze auf 2,4 und 5 GHz aus, verteilt Adressen per DHCP und filtert DNS-Anfragen über Pi-hole. Der Aufbau ist ein Bastelprojekt mit zwei Funkkarten und einem PCIe-Verteiler. Du bekommst dafür volle Kontrolle über dein Netz.
Was der Pi dabei übernimmt#
Der Stack besteht aus drei Diensten, die in einem Compose-File zusammenlaufen 1 .
| Dienst | Aufgabe |
|---|---|
| pi-dock-wifi | hostapd, Netzwerkbrücke br0, dnsmasq, Firewall, Dashboard |
| pihole | DNS-Filterung und Werbeblocker |
| ttyd | Terminal über den Browser |
Der DNS-Weg ist der Kern der Filterung. dnsmasq lauscht auf Port 53 und reicht Anfragen an Pi-hole auf Port 15353 weiter 1 . Pi-hole prüft jede Anfrage gegen seine Filterlisten und beantwortet oder leitet weiter 2 . So greift die Sperre für alle Geräte im Netz, ohne dass du auf jedem Gerät etwas installierst. Den Filterstatus siehst du im Pi-hole-Panel: Dort stehen Anfragen, Blockierquote und die am stärksten blockierten Domains 2 . Wie du Pi-hole im Detail einrichtest, zeigt unsere Pi-hole-Anleitung .
Die zwei Funkkarten haben einen praktischen Grund. Auf 2,4 GHz hängen die älteren und einfachen Geräte, auf 5 GHz die schnellen. Weil beide Netze getrennt konfigurierbar sind, tragen sie unterschiedliche SSIDs und Kanäle 1 . So blockiert ein langsames Altgerät nicht den Rest des Netzes.
Über das Dashboard steuerst du mehr als nur die Funknetze: Es zeigt Kanal, Kanalbreite, Standard und Clientzahl beider Funkkarten an, schaltet WPS per Knopfdruck und verwaltet die Deny-Liste für fremde Geräte 1
. DHCP-Reservierungen, Firewall-Regeln und die Funkprofile selbst schreibst du dagegen in Konfigurationsdateien: dnsmasq.conf, iptables-rules.sh und die hostapd-Templates 1
. NAT, Firewall und ein optionales VPN-Mesh über NetBird gehören ebenfalls zum Stack 1
. Wer lieber ein VPN über WireGuard aufsetzt, findet dazu einen Vergleich zwischen Router und DIY-VPN-Server
. Die voreingestellte LAN-Adresse ist 192.168.4.1 im Netz 192.168.4.0/24 1
.

Die Hardware: ein PCIe-Anschluss, zwei Funkkarten#
Ein fertiger Router hat seine Funkchips fest verbaut. Beim Pi 5 holst du dir die Funktechnik über den freigelegten PCIe-Anschluss der Platine 3
. Die Referenz des Projekts besteht aus einem Raspberry Pi 5 mit 8 GB RAM, einem 52Pi-B14-PCIe-Verteiler auf Basis des ASM1184e, zwei Waveshare-MiniPCIe-Adaptern 4
, zwei MediaTek-MT7915E-Funkkarten und einem USB-NVMe-Speicher 1
. Das integrierte WLAN des Pi ist in der Referenzkonfiguration per dtoverlay=disable-wifi abgeschaltet 1
. Die Funknetze kommen von den beiden Karten.
Der Verteiler ist der entscheidende Baustein. Der Pi 5 legt über den FPC-Anschluss eine einzelne PCIe-Lane offen 3 . Der B14 ist ein Quad-FPC-HAT: Er verteilt diese eine Lane per PCIe-Switch auf vier FPC-Ports, die Referenz belegt davon zwei 1 , 6 . Die Karten teilen sich den Weg zum Prozessor. Es sind keine zwei unabhängigen Lanes 1 . Trotzdem reicht das für zwei Funknetze: eines auf 2,4 GHz, eines auf 5 GHz, getrennt konfigurierbar.
Der Speicher läuft über USB. Ein NVMe-Adapter nimmt die SSD auf, und ein vier-Port-USB-3.2-Hub versorgt weitere Geräte 1 . Antennen, Antennenkabel und Kühlkörper stimmst du auf dein Gehäuse ab; das Projekt liefert dafür Druckmodelle, aber keine fertigen Teile 1 . Ein PD-Power-Board vom Typ 52Pi P01 nimmt USB-C-PD oder 9 bis 24 Volt Gleichstrom auf, gibt 5,15 Volt bei 5 Ampere an den Pi ab und startet ihn nach Stromausfall selbstständig wieder, wenn der Always-ON-Schalter aktiv ist 1 , 5 . Nutze immer nur einen Eingang: Gleichstrom und USB-C gleichzeitig verbietet der Hersteller 5 .
Wo es bricht: Kernel und PCIe-Lane#
Zwei Stellen machen aus dem Projekt Arbeit. Die erste Stelle ist der Kernel. Die MT7915E-Karten brauchen den Treiber mt7915e samt Access-Point- und Bridge-Unterstützung. Docker liefert keine Kernel-Treiber mit. Der Host muss beide Funkkarten erkennen und AP-Modus erlauben 1 . Das Referenzsystem ist ein Debian-13-System auf ARM64 und läuft mit einem selbst kompilierten Kernel aus den Quellen des Raspberry-Pi-Kernels, der den Treiber als Modul enthält 1 , 3 . Die Auswahl des Kernels passiert über die Boot-Konfiguration, nicht über Docker 1 . Das Projekt stellt die Konfiguration und eine Anleitung bereit, aber keinen fertigen Kernel 1 .
Die zweite Stelle ist die PCIe-Geschwindigkeit. Raspberry Pi zertifiziert den offenen Anschluss für PCIe Gen 2; Gen 3 läuft laut Hersteller, ist aber nicht offiziell unterstützt 3 , 7 . Die Referenz nutzt Gen 3 per Boot-Parameter, beschreibt das aber ausdrücklich als eine Option, die du selbst testen musst 1 , 3 . Verlass dich nicht darauf, dass Gen 3 auf deinem Pi stabil läuft. Für zwei Funkkarten ist Gen 2 nach unserer Einschätzung ausreichend, weil der Funkdurchsatz beider Karten die Lane selten auslastet – belastbar wird das erst durch einen eigenen Durchsatztest.
Dazu kommt der Betrieb als Router. Der Stack verwaltet die Netzwerkschnittstellen des Pi und läuft in einem privilegierten Container. Davor brauchst du ein Modem oder eine Firewall, die den Internetzugang bereitstellt 1 .
Die Einrichtung in vier Schritten#
- Prüfe Hardware und Kernel. Beide Funkkarten müssen im System auftauchen, und
iw listmuss den AP-Modus ausweisen 1 . - Kopiere die Beispielkonfiguration und setze deine Werte. In der .env-Datei ersetzt du Passwörter, SSID und die WPS-UUID 1 .
- Lege Uplink, persistente Verzeichnisse und den SSH-Host-Key fest. Deine LAN muss ein anderes Subnetz nutzen als dein Uplink 1 .
- Baue und starte den Stack:
docker compose config --quiet
docker compose build
docker compose up -dNach dem Start erreichst du das Dashboard unter http://192.168.4.1:8888 und Pi-hole unter http://192.168.4.1:8090/admin/ 1 .
Zwei Warnungen vor dem ersten Start. Der Stack steuert das Netz deines Hosts und nutzt einen privilegierten Container. Starte keine zweite Kopie auf demselben Pi, und behalte einen lokalen Zugang, falls das Netz wegbricht 1 . HATs steckst oder ziehst du nur im spannungslosen Zustand 1 .
Test: läuft dein Netz wirklich#
Ein grüner Status im Compose sagt dir nicht, dass der Router arbeitet. Prüfe zuerst die Funkhardware auf dem Host:
uname -r
lspci -nnk
lsusb
iw dev
iw list
ip -br linkiw list muss den AP-Modus und die erlaubten Kombinationen ausweisen. lspci -nnk zeigt dir, ob der Treiber wirklich an der Funkkarte hängt 1
. Kanäle mit DFS-Schutz verlangen vor dem Senden zusätzlich eine Kanalprüfung, das sogenannte CAC. Der Access Point kommt auf diesen Kanälen erst mit Verzögerung 1
.
Danach prüfst du das Netz der Reihe nach:
- Verbindet sich ein Gerät mit dem 2,4-GHz- und mit dem 5-GHz-Netz? Das zeigt, ob beide Funkkarten senden 1 .
- Bezieht das Gerät eine Adresse aus 192.168.4.0/24 per DHCP?
- Landen die DNS-Anfragen bei Pi-hole? Öffne das Pi-hole-Dashboard und prüfe, ob die Anfragen deines Testgeräts in der Statistik erscheinen 2 .
- Greift die Filterung? Rufe eine Adresse aus einer Pi-hole-Blockliste auf und prüfe, ob sie blockiert wird 2 .
Fällt ein Punkt durch, sieh in die Logs der drei Dienste. Der häufigste Fehler ist ein Funkkarten-Treiber, der im AP-Modus nicht sendet, oder eine Uplink-Adresse, die mit deiner LAN kollidiert 1 .
Mach das: Teste die DNS-Sperre mit einem Gerät, bevor du alle Geräte umziehst. Lass das: Stecke die HATs um, während der Pi Strom hat.
Wartung und Betrieb#
Der Stack bringt keine Update-Automatik mit. Updates fährst du über Docker Compose selbst; das Vorgehen beschreibt die Installationsanleitung 1 . Deine Konfiguration liegt im Repository, aber Passwörter, DHCP-Leases und die Pi-hole-Konfiguration bleiben in deiner privaten Installation 1 . Ein Backup des Labors, eine unterbrechungsfreie Stromversorgung und ein kontrolliertes Herunterfahren gehören nicht zur Distribution. Darum kümmerst du dich selbst 1 . Die Oberfläche spricht Italienisch oder Englisch; die Sprache legst du über eine Variable fest 1 .
Für wen sich das lohnt#
Das Projekt ist etwas für dich, wenn du dein Netz verstehen und selbst ändern willst. Du schreibst SSIDs, Reservierungen und Firewall-Regeln in Konfigurationsdateien statt durch Hersteller-Menüs 1 . Du entscheidest, welche DNS-Anfragen dein Netz verlassen und welche nicht 2 . Das kostet Zeit, gibt dir aber eine Kontrolle, die ein fertiger Router nicht hergibt.
Es ist nichts für dich, wenn du einen Router suchst, der nach dem Einstecken läuft. Der Aufbau kostet Bastelzeit, einen möglichen Kernel-Eingriff und den Mut, dein Netz für ein Wochenende umzubauen. Wer nur Werbung blockieren will, kommt mit Pi-hole auf einem vorhandenen Gerät schneller ans Ziel 2 . Wer tiefer in das Umfeld einsteigen will, findet bei uns den Bereich Homelab und Selfhosting .
Wo die Grenzen liegen#
Drei Grenzen solltest du kennen, bevor du Teile bestellst.
- Keine Garantie, dass deine Funkkarten sauber laufen. Der AP-Modus hängt an deiner Kernel-Version, und Gen 3 ist nicht zertifiziert 1 , 3 .
- Die Netzqualität trägst du selbst. Ein fertiger Router ist aufeinander abgestimmt; hier wählst du Kanal, Sendeleistung und Zusammenstellung selbst und testest die Stabilität 1 .
- Pi-hole blockiert nur DNS-Anfragen. Verkehr, der die Sperre umgeht, erreicht dein Netz weiterhin. Das ist Filterung, keine Abschottung 2 .
Außerdem bleibt die Absicherung am Rand deine Aufgabe. Der Stack setzt ein Modem oder eine Firewall davor voraus und läuft in einem privilegierten Container 1 . Wer das nicht absichern will, sollte bei einem fertigen Router bleiben.
Was du heute tust#
Lies die Hardware-Liste und die Installationsanleitung des Projekts 1 . Bestell nichts, bevor du klärst, ob deine Funkkarten im AP-Modus senden. Hast du schon einen Pi 5, teste den mt7915e-Treiber mit deinem Kernel. Läuft er, legst du los: .env anpassen, Stack bauen, Netz testen. Erst wenn ein Testgerät sauber surft und die Pi-hole-Statistik die Anfragen zeigt, ziehst du die übrigen Geräte um.

Weiterführende Artikel#
- Zwei Häuser per VPN verbinden: Tailscale oder WireGuard im Router?
- ESP32-C3 DNS-Werbeblocker: über 500.000 Domains ohne PSRAM
- Proxmox VLAN einrichten: Homelab mit OPNsense und Cisco-Switches segmentieren
- Das Open-Source-Dilemma: gute Datenschutz-Tools bleiben unsichtbar
- Übersetzen ohne Cloud: KI-Modell lokal im Browser betreiben
Passende Produktrecherchen#
Wenn du die praktische Seite vertiefen möchtest: Diese konkreten Produkte passen zum Thema dieses Artikels. Es ist keine Rangliste und keine Kaufpflicht, sondern eine kurze Auswahl mit Begründung, für wen sie interessant sein kann:
- Raspberry Pi 5 mit 8GB RAM, Active Cooler Kit inklusive offizielles Netzteil – Leser, die den Pi-Router nachbauen und eine lauffähige Basis mit Kühlung und stabiler Stromversorgung brauchen – Zentrale Hardware des Projekts: Der Raspberry Pi 5 ist der Router-Host, auf dem hostapd, dnsmasq, Pi-hole und das Dashboard laufen. Das Kit bringt Aktivkühler und offizielles Netzteil mit, die ein Dauerbetrieb als Router voraussetzt.
- GeeekPi Dual FPC PCIe HAT for Raspberry Pi 5 (B12, 1 zu 2 PCIe Interface) – Leser, die zwei WLAN-Karten für getrennte 2,4- und 5-GHz-Netze anschließen wollen – Der PCIe-Verteiler teilt die einzelne PCIe-Lane des Pi 5 auf zwei Steckplätze auf. Genau so verbindet das Projekt zwei Funkkarten gleichzeitig mit dem Pi; ohne Verteiler bleibt es bei einer Karte.
- Waveshare PCIe to MiniPCIe Adapter für Raspberry Pi 5 – Leser, die eine MiniPCIe-WLAN-Karte am Pi 5 betreiben und den Funkweg über PCIe statt USB nutzen wollen – Der Adapter nimmt eine MiniPCIe-Funkkarte auf und bindet sie über PCIe an den Pi. Das Projekt nutzt zwei solcher Adapter, um die MT7915E-Karten zu montieren.
- Waveshare Wireless MiniPCIe AX210 NIC (Wi-Fi 6E, Linux-kompatibel) – Leser, die eine MiniPCIe-Funkkarte für den AP-Modus unter Linux suchen – Die Funkkarte liefert die WLAN-Funktion für den Access Point. Sie ist MiniPCIe, Linux-tauglich und deckt 2,4/5/6 GHz ab, was die zwei getrennten Funknetze des Routers möglich macht.
- GeeekPi PD Power Expansion Board for Raspberry Pi 5 (Automatic Startup) – Leser, deren Router nach einem Stromausfall ohne manuellen Tastendruck wieder hochfahren soll – Das PD-Power-Board versorgt den Pi stabil und startet ihn nach Stromausfall automatisch neu. Für einen dauerhaft laufenden Router ist genau dieser Always-ON-Mechanismus entscheidend.
- Starlink-Verfügbarkeit und Konditionen prüfen
Hinweis: Als Amazon-Partner verdient kalika.de an qualifizierten Verkäufen. Für dich ändert sich der Preis nicht.
Hinweis: Dieser Link ist ein Starlink-Empfehlungslink. Wenn du darüber bestellst, können für dich und kalika.de Vorteile nach den jeweils geltenden Starlink-Bedingungen entstehen.
Transparenzhinweis#
Dieser Beitrag wurde mit Unterstützung künstlicher Intelligenz erstellt und automatisiert auf Quellen, Fakten und Qualitätskriterien geprüft.
Quellen#
[1] „Pi-Dock-Wifi", Projekt-Repository mit Dokumentation (README, Hardware-, Netz- und Installationsanleitung), citroale90 – https://github.com/citroale90/pi-dock-wifi
[2] „Overview of Pi-hole", Pi-hole-Dokumentation – https://docs.pi-hole.net/
[3] „Raspberry Pi 5", offizielle Dokumentation zur Plattform und zum PCIe-Anschluss, Raspberry Pi Ltd. – https://www.raspberrypi.com/documentation/computers/raspberry-pi.html
[4] „PCIe TO MiniPCIe HAT+", Waveshare Wiki – https://www.waveshare.com/wiki/PCIe_TO_MiniPCIe_HAT%2B
[5] „PD Power Expansion Board (EP-0225)", 52Pi Wiki – https://wiki.52pi.com/index.php?title=EP-0225
[6] „RPi 5 Quad FPC PCIe HAT (B14, EP-0233)", 52Pi Wiki – https://wiki.52pi.com/index.php?title=EP-0233
[7] „Raspberry Pi Connector for PCIe" (RP-008298-DS-1), Raspberry Pi Ltd. – https://pip-assets.raspberrypi.com/categories/892-raspberry-pi-5/documents/RP-008298-DS-1-pcie-connector-standard.pdf

