Når tunnelen er oppe, er det siste trinnet vanligvis et navn som virker i stedet for en adresse du limer inn i et bokmerke. En dnsmasq-vertspost pluss en resolveradresse klienten kan nå gjør det med to filer og uten multicast. Beslutningen som virkelig krever ettertanke er smalere: sender klienten all DNS gjennom hjemmeresolveren, eller bare navnene under home.arpa? Alt nedenfor forutsetter et godkjent WireGuard-oppsett med en Linux-klient og en laboratorieresolver som hjemmeadministratoren allerede administrerer.

Tre måter å gi klienten en resolver

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

For en bærbar datamaskin som av og til kobler seg til tunnelen, er split-DNS det bedre standardvalget: det holder vanlige internettnavn på resolveren maskinen allerede stoler på. For en maskin som finnes for å nå hjemmetjenester, er det enklere å dytte resolveren, og kostnaden ved omfanget spiller ingen rolle.

Publiser posten på resolveren som eier sonen

Hold rollene fra hverandre før du skriver konfigurasjon: VPN-klientadressen, resolveren og tjenesten er tre forskjellige verter med tre forskjellige jobber. I dette laboratoriet er de 10.77.0.2 for klienten, 192.168.50.53 for dnsmasq og 192.168.50.20 for NAS-en, mens tunnelen ruter hjemme-LAN-et.

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

Linjen host-record gir adressen, og linjen local= holder ukjente home.arpa-spørsmål inne i denne resolveren i stedet for å videresende dem oppover. Les den eksisterende konfigurasjonen din først og avstem alt som allerede definerer en server, et grensesnitt eller samme lokale domene; å stable et fragment oppå et motstridende gir en resolver som laster gladelig og svarer feil. dnsmasq-håndboken definerer begge direktivene og lyttestyringen.

Bekreft deretter tjenesten som kjører, ikke filen. En konfigurasjonstest pluss en omstart er minimum, og det effektive svaret er det en spørring returnerer.

Rut resolveren, ikke bare nettsiden

WireGuards AllowedIPs avgjør hvilke destinasjoner som kommer inn i tunnelen. Hvis resolveradressen faller utenfor den, forlater spørringen den normale ruten og når aldri dnsmasq, selv om NAS-en selv er tilgjengelig. Ta med resolverens adresse, eller LAN-prefikset som inneholder den, og kontroller gatewayens videresendingspolicy på den andre siden.

Tillat UDP og TCP på port 53 fra det autoriserte tunnelområdet, med en returvei tilbake til klientens tunneladresse. Ikke videresend port 53 fra WAN for å gjøre testing enklere: en åpen rekursiv resolver på en hjemmeforbindelse blir funnet innen timer. Å binde til et grensesnitt er ikke en tilgangspolicy i seg selv.

Kontroller svaret før applikasjonen

Spør resolveren først direkte, deretter systemet, deretter applikasjonen. Hvert trinn isolerer en lenke i kjeden, og forskjellen mellom dem er diagnosen.

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'

TCP-spørringen er verdt å kjøre fordi et avkortet UDP-svar tvinger frem et nytt forsøk, og en policy som dropper TCP 53 gir feil som virker periodiske. Trinnet getent viser hva maskinens resolverkonfigurasjon faktisk gjør, noe som ikke alltid er det du dyttet ut.

Bestem hva som skjer når tunnelen er nede

Hvis klientens generelle DNS peker på 192.168.50.53, slutter all navneoppslag å virke når tunnelen ikke er oppe. Det er akseptabelt på en maskin som bare er nyttig med tunnelen, og uakseptabelt på en bærbar datamaskin som også bruker Wi-Fi på en kafé. Split-DNS unngår spørsmålet helt, fordi bare home.arpa-oppslag avhenger av hjemmeresolveren.

Husk hva navnet er: home.arpa er reservert for bolignettverk og er ikke globalt unikt, så et annet nettverk kan med rette bruke samme navn. Det er en lokal bekvemmelighet, ikke en pålitelig identifikator. Hold posten oppdatert når tjenesten flytter, og fjern resolverpolicyen når laboratoriet avvikles, i stedet for å etterlate en bærbar datamaskin som peker på en adresse den bare kan nå gjennom en tunnel som ikke finnes lenger.

Relaterte artikler