Zoeken op website

Ik ben gestopt Cloudflare te vertrouwen met mijn DNS en heb mijn eigen opgezet


Het wijzigen van je DNS-instellingen is een van de eenvoudigste manieren om extra privacy aan je netwerk toe te voegen. Ik heb door de jaren heen de DNS-instellingen op de meeste van mijn apparaten gewijzigd voor snellere en veiligere alternatieven voor de standaard DNS-instellingen van mijn ISP, met groot succes.

Maar ik wilde het verder brengen en al mijn DNS-verzoeken in mijn eigen netwerk houden, waardoor mijn privacy nog verder wordt versterkt.

Dus pakte ik een oude laptop, een kopie van de open-source Proxmox-server, en begon aan het werk. En aangezien ik niet veel ervaring heb met Linux, servers, enzovoort, was het opzetten van mijn eigen DNS een verrassend soepel en gemakkelijk proces.

Wat ik gebruikte voor mijn thuis-DNS-server

Er zijn echter andere opties

Hiervoor gebruik ik een 2021 Honor MagicBook 14 met een Intel i5-1135G7 CPU, geïntegreerde Intel Xe-grafische kaart, 8GB DDR4 RAM en een 512GB SSD. Het is niet de krachtigste laptop, maar hij heeft meer dan genoeg vermogen om een basis Proxmox-server te draaien met een paar virtuele machines voor verschillende diensten (er komen de komende weken meer!).

Je kunt Proxmox draaien op veel oudere hardware als dat is wat je beschikbaar hebt, zolang het een 64-bit CPU heeft (in principe alle moderne pc's en laptops), Intel VT/AMD-V virtualisatie, en minstens 2GB RAM. Oh, en een ingebouwde Ethernet-poort helpt ook, maar zoals ik ontdekte, zal een degelijke Ethernet-naar-USB-adapter ook het werk doen.

Daarbij, als je een adapter gebruikt, zorg ervoor dat deze een Realtek RTL8153-chipset gebruikt, omdat deze een van de beste Linux-ondersteuning heeft en het instellen van je netwerk iets gemakkelijker maakt dan bij sommige alternatieven. Bijvoorbeeld, een van de belangrijkste alternatieven voor Ethernet-naar-USB adapter-chipsets, de AX88179, staat erom bekend problemen te veroorzaken met Proxmox.

Toen besloot ik een combinatie van Unbound DNS met AdGuard te gebruiken om een uitgebreide, interne DNS-oplossing te creëren. In deze basis DNS-stack lost Unbound DNS-verzoeken op (het zet in feite door mensen leesbare domeinnamen om in door machines leesbare IP-adressen), en AdGuard biedt blokkering, filtering en meer.

In combinatie geeft het je een zeer sterke, privé en mogelijk reclamevrije DNS voor alle apparaten op je netwerk, allemaal voor het werk van slechts een paar uur.

Houd er ook rekening mee dat hoewel ik een oude laptop met Proxmox gebruik, dat niet de enige manier is om dit te doen. Je zou ook een Raspberry Pi met Unbound en Pi-hole kunnen gebruiken om vergelijkbare resultaten te bereiken; het hangt er gewoon van af wat je toevallig hebt liggen (of bereid bent te kopen).

Verkrijg wat netwerkgegevens voordat u uw machine wist

Je hebt het nodig tijdens de Proxmox-installatie

Een korte opmerking over IP-adressen: de adressen die in deze handleiding worden gebruikt — 192.168.1.1 voor de gateway, 192.168.1.10 voor Proxmox, 192.168.1.11 voor de DNS-container — weerspiegelen mijn eigen netwerkinstelling. Uw netwerk kan een heel ander bereik gebruiken, zoals 192.168.0.x of 10.0.0.x. Gebruik altijd de gateway- en subnetinformatie van uw eigen ipconfig-uitvoer in plaats van mijn adressen direct te kopiëren. Dit verkeerd instellen is de meest voorkomende fout bij het opzetten. Het kan worden opgelost (zoals ik ontdekte!), maar met de juiste IP-adressen vanaf het begin wordt alles veel makkelijker.

De eerste stap van dit proces is het noteren van een paar stukjes netwerkinformatie van je huidige machine.

  1. Open Opdrachtprompt/Terminal en voer ipconfig uit
  2. Noteer je standaardgateway (het IP-adres van je router, meestal 192.168.1.1) en het IPv4-adres van je huidige apparaat.

Je zult het gateway-IP gebruiken tijdens de Proxmox-installatie, en het kennen van je huidige IP-bereik betekent dat je een statisch IP voor Proxmox kunt kiezen dat nergens anders in je netwerk mee in conflict komt.

Bijvoorbeeld, als je gateway 192.168.1.1 is en je pc 192.168.1.50, kun je Proxmox iets als 192.168.1.10 toewijzen — zorg er gewoon voor dat het buiten het DHCP-bereik van je router valt.

Doe alleen niet wat ik deed tijdens de installatie en voeg het IP-adres toe voor de verkeerde netwerkinterface... laat me je vertellen, dat duurde meer dan een paar minuten om uit te zoeken.

Download en installeer Proxmox

Je moet je apparaat wissen

Proxmox VE is een bare-metal hypervisor — je installeert het in plaats van een besturingssysteem, en het stelt je in staat om meerdere virtuele machines en lichte containers te draaien vanaf een browsergebaseerde interface. Het is wat een oude laptop verandert in een echte homelab-server. Het betekent ook dat alles wat op je oude laptop staat tijdens het installatieproces wordt gewist, dus zorg ervoor dat je alles wat belangrijk is back-upt.

Voor dit onderdeel van het proces heeft u een USB-stick nodig. Deze zal worden gewist tijdens het aanmaken van de ISO, dus zorg ervoor dat u alle gegevens ervan hebt verwijderd.

  1. Ga naar de Proxmox-downloadpagina en download de nieuwste versie van Proxmox VE.
  2. Ga vervolgens naar Rufus en download de nieuwste versie. Zodra Rufus is gedownload, start je het op.
  3. Druk op de Selecteren knop en blader naar de download van de Proxmox-server. Rufus zou automatisch het ISO-type moeten detecteren en de instellingen automatisch aanpassen.

Zodra je zeker bent, druk op Start en laat het ISO-naar-USB installatieproces voltooien.

Start op vanaf de USB en installeer Proxmox

Proxmox draait direct op je hardware

Nu moet je je oude laptop aansluiten op je router. Doe dit met een Ethernet-kabel. Zoals gezegd, als je laptop geen Ethernet-poort heeft, heb je een adapter nodig.

Zodra u bent verbonden, steekt u uw USB in. U moet vervolgens uw laptop inschakelen terwijl u de toets voor de opstartvolgorde ingedrukt houdt om toegang te krijgen tot de opstartvolgorde. Dit is meestal F12, maar verschilt per fabrikant — een snelle zoekopdracht op internet zal meestal laten zien wat u nodig heeft.

Selecteer de schijf waarop je Proxmox hebt geïnstalleerd. Het zal starten in de Proxmox-installatie, waar je Installeer Proxmox VE (Grafisch) wilt selecteren. Vanaf hier moet je de doelschijf selecteren, je land en tijdzone, de netwerkinterface (d.w.z. waar Proxmox toegang heeft tot het internet), een hostnaam, IP-adres, DNS-server en een combinatie van e-mail/wachtwoord.

Dit is waar je de informatie nodig hebt die je hebt opgeschreven van ipconfig voordat je Proxmox installeerde. Voer je Standaardgateway in en kies een IP-adres dat overeenkomt. Bijvoorbeeld, mijn Standaardgateway is 192.168.1.1, dus ik stel een statisch IP in van iets als 192.168.1.10/24, en je bent klaar om te gaan.

Op het gedeelte van de DNS-server: ja, we stellen een DNS-oplossing in, maar je moet hier nog steeds een toevoegen voor Proxmox om te gebruiken. Ik heb gekozen voor 9.9.9.9, aangezien Quad9 een van mijn favoriete opties is, maar dit kan later worden gewijzigd.

Bekijk de samenvatting en klik op Installeren. Je bent onderweg.

Maak verbinding met Proxmox en maak de DNS-container aan

Zorg ervoor dat je server draait en functioneert

Zodra de installatie is voltooid, kunt u de hostmachine opnieuw opstarten. Wanneer deze opnieuw opstart, zou het u het IP-adres moeten tonen dat Proxmox op uw netwerk host.

Dit is waar je een andere computer nodig hebt. Voer dat IP-adres in op een ander apparaat, en Proxmox zou moeten laden. De standaardgebruikersnaam is root, en je hebt het wachtwoord nodig dat je hebt aangemaakt tijdens het installatieproces van de server.

Zodra je bent ingelogd, is het tijd om een container voor de DNS-stack op te zetten. In plaats van Unbound en AdGuard direct op de Proxmox-host te installeren, gebruiken we een LXC-container — een lichtgewicht, geïsoleerde Linux-omgeving die alles netjes en gescheiden van het host-systeem houdt. Zie het als een zelfstandige box binnen je server die zijn eigen software onafhankelijk draait.

  1. Klik op je node in het linker paneel. Het zal de naam hebben die je als hostnaam hebt ingesteld. Bijvoorbeeld, de mijne is gewoon DNS.
  2. Selecteer vervolgens lokaal.
  3. Selecteer in het middelste paneel CT-sjablonen, en vervolgens de knop Sjablonen bovenaan.
  4. Zoek naar debian 12 bookworm en download het dan.










Het downloaden zal niet lang duren. Terwijl het aan het downloaden is, moet er nog meer worden geconfigureerd. Selecteer in de rechterbovenhoek Create CT. Werk vanaf hier door de verschillende tabbladen:

  • Algemeen: Voeg een hostnaam toe (opnieuw, dns is prima), en een root-wachtwoord.
  • Template: Selecteer de Debian 12 Bookworm-sjabloon.
  • Schijven: 8GB is ruim voldoende voor Unbound en AdGuard
  • CPU: 1 kern is goed
  • Geheugen: 512MB RAM en 512MB swap
  • Netwerk: Stel IPv4 in op Statisch en voeg vervolgens het statische IP-adres toe dat je gaat gebruiken om AdGuard te benaderen. Bijvoorbeeld, ik heb 192.168.1.11/24 toegevoegd, waarbij ik de gateway instelde op 192.168.1.1 (zoals eerder).
  • DNS: Laat op standaardwaarde.

Vanaf hier kunt u Voltooien selecteren, en Proxmox zal de container bouwen. Zodra deze in het linkerpaneel verschijnt, selecteert u deze, klikt u op Start en laat u het opstarten. Zodra de virtuele machine draait, drukt u op Console om een shell te openen waarin u commando's kunt invoeren, voer vervolgens in: apt update && apt upgrade -y

Als je fouten ziet over het niet kunnen oplossen van pakketbronnen, kan het zijn dat je container geen netwerkverbinding heeft — controleer dubbel of de IP- en gateway-instellingen in het Netwerk-tabblad van de container overeenkomen met je werkelijke netwerkbereik. Zodra dat is opgelost, ben je klaar om de DNS-stack te installeren.

Installeer en configureer Unbound

De motor achter uw privé-DNS

Unbound is een validerende, recursieve DNS-resolver. In tegenstelling tot het eenvoudig doorsturen van je queries naar Cloudflare of Google, begint Unbound bij de DNS-rootservers, stuurt je queries rechtstreeks naar de nameservers en slaat derden in het midden over.

Open de console van de vorige sectie opnieuw en voer apt install unbound -y in

Zodra Unbound is geïnstalleerd, voer nano /etc/unbound/unbound.conf.d/local.conf in en plak daarna het volgende:

server :

spraakzaamheid: 1

interface: 127.0.0.1

poort: 5335

do-ip4: ja

do-udp: ja

do-tcp: ja

toegangscontrole: 127.0.0.0/8 toegestaan

verberg-identiteit: ja

versie-verbergen: ja

harden-lijm: ja

harden-dnssec-stripped: ja

gebruik-hoofdletters-voor-id: ja

prefetch: ja

aantal-draden: 1

cache-min-ttl: 300

cache-max-ttl: 86400

msg-cache-grootte: 50m

rrset-cache-grootte: 100m

Sla het bestand op met Ctrl+O, Enter, en vervolgens Ctrl+X om af te sluiten.

Unbound is geconfigureerd om te luisteren op poort 5335 in plaats van de standaard DNS-poort 53. Dat komt omdat AdGuard Home poort 53 zal innemen als uw front-end resolver, terwijl Unbound erachter zit.

Prefetch vertelt Unbound om populaire gecachte vermeldingen te vernieuwen voordat ze verlopen, waardoor de responstijden laag blijven voor vaak bezochte domeinen, terwijl de instellingen voor de cachegrootte Unbound veel geheugen geven om resultaten op te slaan, zodat herhaalde queries vrijwel onmiddellijk worden beantwoord.

Voer nu unbound-checkconf in om het bestand te valideren. Als je dat commando uitvoert en geen fouten in het configuratiebestand krijgt, kun je aan de slag. Als je hier een fout tegenkomt (er zijn verschillende mogelijke problemen), probeer dan online te zoeken of raadpleeg een AI-chatbot zoals Claude.

  • Start vervolgens Unbound opnieuw op met het volgende commando: systemctl restart unbound
  • Voer vervolgens een snelle test uit om te bevestigen dat Unbound correct oplost: dig google.com @127.0.0.1 -p 5335

Als alles goed is, zie je de Antwoordsectie met IP-adressen. Je eerste keer zal aanvoelen alsof het even duurt, omdat Unbound recursief van de root-DNS-servers zoekt. Het is allemaal goed en normaal. Zodra de DNS-cache vol is, zullen volgende zoekopdrachten enzovoort sneller zijn.

Met Unbound werkend, heb je een volledig privé recursieve resolver draaien op je netwerk. Vervolgens plaatsen we AdGuard Home daar bovenop om blokkering, filtering en een goede webinterface toe te voegen.

Installeer en configureer AdGuard Home

De nieuwe voordeur van uw netwerk voor DNS









Unbound verzorgt de recursieve resolutie, maar het heeft geen webinterface, geen blokkering en geen zichtbaarheid per apparaat. AdGuard Home vult al die hiaten — het zit voor Unbound, verzorgt het blokkeren van advertenties en trackers op je hele netwerk, en geeft je een overzichtelijk dashboard waarop precies te zien is wat elk apparaat in realtime opvraagt.

Installeer het met de volgende opdrachten:

curl -L https://github.com/AdguardTeam/AdGuardHome/releases/latest/download/AdGuardHome_linux_amd64.tar.gz -o AdGuardHome.tar.gz

tar -xzf AdGuardHome.tar.gz

cd AdGuardHome

./AdGuardHome -s installeren

Zodra het voltooid is, ziet u een lijst met adressen waarop AdGuard Home beschikbaar is. Open vanaf een ander apparaat op uw netwerk een browser en ga naar:

http://192.168.1.11:3000

Zodra AdGuard Home opent, moet je de installatiewizard doorlopen, die je door de meeste instellingen leidt die je nodig hebt.

  • Beheerderswebinterface poort: Ik heb dit veranderd naar poort 80, zodat ik het dashboard kan benaderen op http://192.168.1.11 zonder elke keer een poortnummer in te voeren
  • DNS-serverpoort: Laat dit op 53 staan — dat is de standaard DNS-poort die alle apparaten verwachten
  • Gebruikersnaam en wachtwoord: Stel iets veiligs in, je zult dit gebruiken om in te loggen op het dashboard

Werk de resterende wizard-schermen door en je komt op het AdGuard Home-dashboard. Nu moet je AdGuard Home naar Unbound wijzen om alles aan elkaar te koppelen.

Ga in het AdGuard-dashboard naar Instellingen > DNS-instellingen. Verwijder onder Upstream DNS-servers alles wat daar al staat en voer 127.0.0.1:5335 in en zorg er vervolgens voor dat load balancing is geselecteerd.

Dat is je Unbound-instantie. Scroll naar beneden en klik op Test upstreams — het zou een groene bevestiging moeten geven. Als dat zo is, klik dan op Toepassen.

Bloklijst toevoegen aan AdGuard Home

De volgende stap is om enkele blokkeerlijsten aan je nieuwe DNS-stack toe te voegen. Standaard blokkeert AdGuard enkele advertenties en trackers, maar er is ook de mogelijkheid om externe blokkeerlijsten toe te voegen, wat het hebben van je eigen DNS zo krachtig maakt.

Ga naar Filters > DNS-blokkadelijsten > Voeg blokkadelijst toe en bekijk de ingebouwde opties. Ik gebruik vier lijsten:

  • AdGuard DNS-filter: Algemene advertentie- en trackinglijst met meer dan 165.000 regels
  • HaGeZI's Pro Blocklist: Een meer uitgebreide lijst voor het blokkeren van advertenties, tracking en malware met meer dan 203.000 regels
  • OISD Small: Kleinere, meer gespecialiseerde lijst met meer dan 57.000 regels
  • Malafide URL-blokkadelijst (URLhaus): Een specifieke blokkadelijst voor malware en phishing, ontworpen voor veiligheid en privacy, met meer dan 14.000 regels

Natuurlijk ben je vrij om te kiezen uit de lijsten zoals je het zelf wilt. Elke lijst heeft een uitleg over wat het blokkeert en hoe het werkt. Maar de combinatie van deze lijsten geeft je meer dan 440.000 regels die advertenties, tracking en malware dekken — vergelijkbaar met wat speciale DNS-beveiligingsdiensten zoals Quad9 bieden, maar volledig onder jouw controle.

Richt uw netwerk op AdGuard Home

Elk apparaat is automatisch gedekt

Lezer, we zijn er bijna; de finish is in zicht.

Met AdGuard Home en Unbound die draaien, is de laatste stap je netwerk daadwerkelijk vertellen deze te gebruiken. Op dit moment gebruiken je apparaten nog steeds de DNS die je router standaard uitdeelt, maar dat is precies wat we aan het instellen zijn om te veranderen.

Voor dit onderdeel moet je toegang krijgen tot je router. Ga naar het beheerderspaneel van je router en log in. Het adres van het beheerderspaneel van je router verschilt per fabrikant en netwerk, dus bij twijfel zou een snelle internetzoekopdracht het juiste IP-adres moeten tonen.

Je zoekt naar een veld met een label zoals Custom DNS-servers of DNS-server. Voer 192.168.1.11 in en sla op.

Je router zal nu 192.168.1.11 als DNS-server uitdelen aan elk apparaat op je netwerk via DHCP. Apparaten nemen dit automatisch over wanneer hun lease wordt vernieuwd — door de WiFi los te koppelen en opnieuw te verbinden wordt een onmiddellijke vernieuwing geforceerd als je het meteen wilt testen.

Elk routerbeheerpanel ziet er iets anders uit, dus de exacte locatie van deze instelling varieert. Als je het niet meteen kunt vinden, levert het zoeken naar "DNS" binnen het beheerpaneel van je router meestal snel de juiste pagina op.

Test je nieuwe DNS-configuratie

Nu zou je volledig operationeel moeten zijn met een aangepaste DNS.

Ga naar het AdGuard-dashboard en bekijk het querylog terwijl de apparaten op je netwerk verbinding maken en verzoeken beginnen te verzenden. Op mijn eerste dag met de setup actief, blokkeerde AdGuard ongeveer 25% van alle DNS-queries op mijn netwerk, vooral tracker-aanroepen en telemetrie-eindpunten van apparaten die ik nooit had bedacht te configureren.

Toen meer apparaten verbinding maakten met mijn thuis-DNS-oplossing, zat ik op 47,5% geblokkeerd.

Één ding dat het waard is om te weten: de reactietijden zullen direct na het toevoegen van blokkadelijsten hoog lijken; ik zag ongeveer 280 ms op de eerste dag. Dat is normaal. De cache is koud en AdGuard verwerkt een verse set regels. Na 24 uur normaal huishoudelijk gebruik zullen vaak bezochte domeinen gecached zijn, en het gemiddelde daalt aanzienlijk. Na een paar dagen gebruik was dit gedaald tot ongeveer 60 ms.

Dat is nog steeds iets traag in vergelijking met andere DNS-opties zoals Cloudflare en Quad9, maar de extra privacy en controle zijn meer dan de moeite waard.

Gerelateerde artikelen