Zodra de tunnel staat, is de laatste stap meestal een naam die werkt in plaats van een adres dat je in een bladwijzer plakt. Een dnsmasq-hostrecord plus een resolveradres dat de client kan bereiken, doen dat met twee bestanden en zonder multicast. De beslissing die echt nadenken vraagt, is smaller: stuurt de client alle DNS via de thuisresolver, of alleen de namen onder home.arpa? Alles hieronder veronderstelt een goedgekeurde WireGuard-opstelling met een Linux-client en een laboratoriumresolver die de thuisbeheerder al beheert.

Drie manieren om de client een resolver te geven

ApproachScopeCost
DNS = in the wg-quick interfacethe client's general DNS while the tunnel is upevery name in the house now depends on the tunnel
Platform split-DNS for home.arpaonly that suffixmore configuration per client platform
Manual dig @resolverone query at a timefine for testing, useless for applications

Voor een laptop die af en toe meedoet aan de tunnel is split-DNS de betere standaard: het houdt gewone internetnamen bij de resolver die de machine al vertrouwt. Voor een machine die bestaat om thuisdiensten te bereiken, is de resolver pushen eenvoudiger en de kosten van het bereik maken niet uit.

Publiceer het record bij de resolver die de zone bezit

Houd de rollen gescheiden voordat je configuratie schrijft: het VPN-clientadres, de resolver en de dienst zijn drie verschillende hosts met drie verschillende taken. In dit lab zijn dat 10.77.0.2 voor de client, 192.168.50.53 voor dnsmasq en 192.168.50.20 voor de NAS, waarbij de tunnel het thuis-LAN routeert.

listen-address=127.0.0.1,192.168.50.53
bind-interfaces
local=/home.arpa/
host-record=nas.home.arpa,192.168.50.20

De regel host-record levert het adres en de regel local= houdt onbekende home.arpa-vragen binnen deze resolver in plaats van ze stroomopwaarts door te sturen. Lees eerst je bestaande configuratie en verzoen alles wat al een server, een interface of hetzelfde lokale domein definieert; een fragment bovenop een tegenstrijdig exemplaar stapelen levert een resolver op die vrolijk laadt en verkeerd antwoordt. De dnsmasq-handleiding definieert beide richtlijnen en de luisterbesturing.

Controleer daarna de draaiende dienst, niet het bestand. Een configuratietest plus een herstart is het minimum, en het effectieve antwoord is wat een query teruggeeft.

Routeer de resolver, niet alleen de webpagina

De AllowedIPs van WireGuard bepaalt welke bestemmingen de tunnel in gaan. Als het resolveradres daarbuiten valt, verlaat de query de normale route en bereikt dnsmasq nooit, ook al is de NAS zelf bereikbaar. Neem het adres van de resolver op, of het LAN-voorvoegsel dat het bevat, en controleer het doorstuurbeleid van de gateway aan de andere kant.

Sta UDP en TCP op poort 53 toe uit het geautoriseerde tunnelbereik, met een terugweg naar het tunneladres van de client. Stuur poort 53 niet door vanaf de WAN om testen makkelijker te maken: een open recursieve resolver op een thuisverbinding wordt binnen enkele uren gevonden. Vastmaken aan een interface is op zichzelf geen toegangsbeleid.

Controleer het antwoord vóór de toepassing

Vraag eerst de resolver direct, dan het systeem, dan de toepassing. Elke stap isoleert één schakel in de keten, en het verschil daartussen is de diagnose.

dig @192.168.50.53 nas.home.arpa. A
dig +tcp @192.168.50.53 nas.home.arpa. A
getent ahostsv4 nas.home.arpa
curl -sS --max-time 5 http://nas.home.arpa/ -o /dev/null -w '%{http_code}\n'

De TCP-query is de moeite waard omdat een afgekapt UDP-antwoord een nieuwe poging afdwingt, en een beleid dat TCP 53 laat vallen storingen oplevert die sporadisch lijken. De stap getent laat zien wat de resolverconfiguratie van de machine werkelijk doet, wat niet altijd is wat je hebt gepusht.

Besluit wat er gebeurt als de tunnel uit staat

Als de algemene DNS van de client naar 192.168.50.53 wijst, werkt elke naamresolutie niet meer als de tunnel niet staat. Dat is acceptabel op een machine die alleen nuttig is met de tunnel, en onacceptabel op een laptop die ook café-wifi gebruikt. Split-DNS omzeilt de vraag volledig, omdat alleen home.arpa-opzoekingen van de thuisresolver afhangen.

Onthoud wat de naam is: home.arpa is gereserveerd voor woonnetwerken en is niet wereldwijd uniek, dus een ander netwerk kan dezelfde naam legitiem gebruiken. Het is een lokaal gemak, geen betrouwbare identificatie. Houd het record actueel wanneer de dienst verhuist, en verwijder het resolverbeleid wanneer het lab wordt uitgefaseerd in plaats van een laptop achter te laten die naar een adres wijst dat hij alleen kan bereiken via een tunnel die niet meer bestaat.

Gerelateerde artikelen