Kun tunneli on ylhäällä, viimeinen askel on yleensä nimi, joka toimii sen sijaan, että liittäisit osoitteen kirjanmerkkiin. dnsmasq-isäntätietue ja resolverin osoite, johon asiakas pääsee, hoitavat sen kahdella tiedostolla ja ilman multicastia. Päätös, joka todella vaatii ajattelua, on kapeampi: lähettääkö asiakas kaiken DNS:n kodin resolverin kautta vai vain nimet home.arpa-alapuolella? Kaikki alla olettaa hyväksytyn WireGuard-asennuksen, jossa on Linux-asiakas ja laboratorioresolveri, jota kodin ylläpitäjä jo hallinnoi.

Kolme tapaa antaa asiakkaalle resolveri

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

Kannettavalle, joka liittyy tunneliin silloin tällöin, split-DNS on parempi oletus: se pitää tavalliset internet-nimet resolverilla, johon kone jo luottaa. Koneelle, joka on olemassa kodin palveluiden saavuttamiseksi, resolverin työntäminen on yksinkertaisempaa eikä laajuuden hinta merkitse.

Julkaise tietue resolverilla, joka omistaa vyöhykkeen

Pidä roolit erillään ennen kuin kirjoitat kokoonpanoa: VPN-asiakkaan osoite, resolveri ja palvelu ovat kolme eri isäntää, joilla on kolme eri tehtävää. Tässä laboratoriossa ne ovat 10.77.0.2 asiakkaalle, 192.168.50.53 dnsmasqille ja 192.168.50.20 NASille, ja tunneli reitittää kodin lähiverkon.

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

Rivi host-record antaa osoitteen ja rivi local= pitää tuntemattomat home.arpa-kysymykset tämän resolverin sisällä sen sijaan, että välittäisi ne ylöspäin. Lue ensin nykyinen kokoonpanosi ja sovita kaikki, mikä jo määrittelee palvelimen, liitännän tai saman paikallisen verkkotunnuksen; fragmentin pinoaminen ristiriitaisen päälle tuottaa resolverin, joka latautuu iloisesti ja vastaa väärin. dnsmasq-käsikirja määrittelee molemmat direktiivit ja kuuntelun hallinnan.

Tarkista sitten käynnissä oleva palvelu, ei tiedostoa. Kokoonpanotesti ja uudelleenkäynnistys ovat vähimmäisvaatimus, ja todellinen vastaus on se, mitä kysely palauttaa.

Reititä resolveri, älä vain verkkosivua

WireGuardin AllowedIPs päättää, mitkä kohteet tulevat tunneliin. Jos resolverin osoite jää sen ulkopuolelle, kysely lähtee tavallista reittiä eikä koskaan saavuta dnsmasqia, vaikka NAS itse olisi tavoitettavissa. Sisällytä resolverin osoite tai sen sisältävä lähiverkkotunnus ja tarkista yhdyskäytävän välityskäytäntö toisella puolella.

Salli UDP ja TCP portissa 53 valtuutetusta tunnelialueesta, paluupolulla asiakkaan tunneliosoitteeseen. Älä välitä porttia 53 WANista testauksen helpottamiseksi: avoin rekursiivinen resolver kotiyhteydessä löydetään tunneissa. Liitäntään sitominen ei sinänsä ole käyttöoikeuskäytäntö.

Tarkista vastaus ennen sovellusta

Kysy ensin resolverilta suoraan, sitten järjestelmältä, sitten sovellukselta. Jokainen askel eristää yhden ketjun lenkin, ja niiden välinen ero on diagnoosi.

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-kysely kannattaa ajaa, koska katkaistu UDP-vastaus pakottaa uudelleenyritykseen, ja käytäntö, joka pudottaa TCP 53:n, tuottaa vikoja, jotka näyttävät ajoittaisilta. Vaihe getent näyttää, mitä koneen resolverikokoonpano todella tekee, mikä ei aina ole se, mitä työnsit.

Päätä, mitä tapahtuu, kun tunneli on alhaalla

Jos asiakkaan yleinen DNS osoittaa osoitteeseen 192.168.50.53, kaikki nimien selvitys lakkaa toimimasta, kun tunneli ei ole ylhäällä. Se on hyväksyttävää koneella, joka on hyödyllinen vain tunnelin kanssa, ja ei-hyväksyttävää kannettavalla, joka käyttää myös kahvilan Wi-Fiä. Split-DNS välttää kysymyksen kokonaan, koska vain home.arpa-haut riippuvat kodin resolverista.

Muista, mikä nimi on: home.arpa on varattu asuinverkoille eikä ole maailmanlaajuisesti ainutlaatuinen, joten toinen verkko voi laillisesti käyttää samaa nimeä. Se on paikallinen mukavuus, ei luotettava tunniste. Pidä tietue ajan tasalla, kun palvelu muuttaa, ja poista resolverikäytäntö, kun laboratorio poistetaan käytöstä, sen sijaan että jättäisit kannettavan osoittamaan osoitteeseen, johon se pääsee vain tunnelin kautta, jota ei enää ole.

Aiheeseen liittyvät artikkelit