Implementatiehandleiding voor split-DNS voor lokaal en op afstand gehoste apps

Eva Wong is de Technisch Schrijver en en vaste knutselaar bij ZimaSpace. Een levenslange geek met een passie voor homelabs en open-source software, zij is gespecialiseerd in het vertalen van complexe technische concepten naar toegankelijke, praktische handleidingen. Eva gelooft dat zelf-hosting leuk moet zijn, niet intimiderend. Met haar tutorials stelt ze de community in staat om hardware-setup te ontrafelen, van het bouwen van hun eerste NAS tot het beheersen van Docker-containers.

De veilige aanpak is om een gefaseerde split-DNS-implementatie met een deterministische resolver-scope, een overeenkomende TLS-identiteit, overgangstests en rollback te behandelen als een reeks waarneembare controlepunten, niet als één opdracht.

Bij zelfgehoste apps achter lokale en externe reverse-proxypaden is het praktische risico hetzelfde: dezelfde app-hostnaam moet verwijzen naar bewust gekozen lokale, VPN- en publieke endpoints, zonder verrassingen in certificaten of routing. Leg de huidige identiteit en het herstelpunt vast, begin met de minst ingrijpende onderscheidende factor, interpreteer geslaagde en mislukte resultaten voordat je een andere variabele wijzigt, en stop wanneer de opslag instabiel wordt of de enige herstelbare kopie blootgesteld zou worden. De onderstaande workflow eindigt pas nadat de oorspronkelijke workload werkt of het bewijs een escalatiegrens bereikt.

Definieer namen, views en vertrouwensgrenzen

Kies één volledig gekwalificeerde hostnaam per applicatie en documenteer welk antwoord wordt verwacht voor vertrouwde LAN-, VPN-, gast- en publieke clients. Houd de applicatie-identiteit en TLS-naam constant terwijl het geretourneerde adres verandert; het gebruik van niet-gerelateerde interne namen veroorzaakt vaak problemen met omleidingen, callbacks, bladwijzers en mobiele clients.

Een praktisch thuislabpatroon is intern een privé-proxyadres teruggeven en extern een publieke proxy of tunnel-endpoint. Het split-DNS-ontwerp met één naam toont dit ontwerp met één naam en twee antwoorden en benadrukt dat DNS-challengevalidatie een certificaat kan uitgeven zonder een interne service publiek bereikbaar te maken.

Bepaal welke netwerken nooit privérecords mogen ontvangen. Gast- en IoT-clients hebben mogelijk het publieke pad nodig of helemaal geen antwoord, en de publieke zone mag geen privéadressen of hostnamen voor intern gebruik openbaar maken.

Implementeer de lokale view zonder het publieke pad te wijzigen

Verlaag relevante TTL's vóór de migratie, voeg de interne override toe op de gekozen resolver en bevraag die resolver expliciet vanaf een canary-client. Controleer A- en AAAA-records afzonderlijk, omdat een correct IPv4-antwoord kan worden omzeild door een verouderd of publiek IPv6-antwoord.

Adverteer de interne resolver via DHCP en de VPN-configuratie en controleer de actieve resolver op elk besturingssysteem. Beveiligde DNS in de browser, private DNS op mobiele apparaten, gecachte antwoorden en een handmatig geconfigureerde resolver kunnen de bedoelde view omzeilen, zelfs wanneer de lokale zone correct is.

Gebruik de bestaande split-horizon-DNS-configuratie van ZimaSpace als configuratiegrens, terwijl deze workflow zich richt op de implementatievolgorde en acceptatie. Wijzig publieke DNS, lokale proxyrouting en het resolverbeleid van clients niet in één stap; elke laag heeft een afzonderlijk resultaat voor geslaagd of rollback nodig.

Stem DNS-antwoorden af op proxy- en certificaatidentiteit

Open de hostnaam vanaf de LAN-canary en leg het opgeloste adres, de route, de TLS-certificaatnaam, de response-host, omleidingen, WebSocket-gedrag en de door de applicatie gegenereerde URL vast. Een webpagina bereiken is onvoldoende als het verzoek bij de verkeerde virtuele host terechtkomt of naar een IP-adres wordt omgeleid.

Herhaal dit vanaf een mobiel netwerk of een ander extern netwerk met uitgeschakelde wifi. Het adres kan veranderen, maar de hostnaam, certificaatidentiteit, login en applicatiegegevens moeten consistent blijven. Als interne en externe paden bewust verschillende proxies gebruiken, moeten beide de hostnaam correct routeren.

Test VPN-toegang van buiten het huis. Als de VPN het privéantwoord zou moeten ontvangen maar het publieke antwoord krijgt, corrigeer dan de DNS-toewijzing of split-routing voordat je nog een applicatie-override toevoegt.

Valideer overgangen en houd een rollbackregistratie bij

Verplaats de canary tussen LAN, mobiel netwerk en VPN en leg de queryresultaten vast nadat de TTL is verlopen. Test een nieuwe browsersessie en een bestaande ingelogde sessie, zodat DNS-succes geen cookie-, callback- of sessiegedrag verbergt dat aan een andere host is gekoppeld.

Start de resolver en proxy eenmaal opnieuw op, vernieuw de clientlease en herhaal de padmatrix. Bevestig dat niet-gerelateerde publieke records en interne services hun eerdere antwoorden behouden; een split-zone die ontbrekende publieke records overschaduwt, is een onvolledige implementatie.

Implementeer dit pas bij andere clients nadat elke view deterministisch is. Draai de interne override terug als clients niet op de bedoelde resolver kunnen worden gehouden, de certificaatidentiteit afwijkt of een privéadres publiek uitlekt; bewaar de query-uitvoer en tijdstempels voor de volgende poging.

Ondersteuning & Tips

Meer om te lezen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.