DNS-posten din er riktig, erstatningen er sunn, og likevel bruker noen klienter timer på å ringe den gamle adressen. Noen få feiler med en gang mot et navn som slås opp og aldri svarer. Begge utfallene kommer fra ett hull: et vertsnavn endrer hva en klient slår opp, ikke når den slår det opp, og ikke hva den stoler på når svaret kommer.

Symptomet: en riktig post, utdaterte tunneler

En profil som lagrer et navn, er ikke en klient som fortsetter å slå det opp. De fleste slår det opp én gang, når konfigurasjonen brukes eller når tunnelen kommer opp, og bruker deretter adressen til økten er over. En lang TTL på toppen er grunnen til at overgangen må planlegges rundt gjentilkoblinger og ikke rundt DNS-redigeringen.

Ingen av de to atferdene er en feil, og det er nettopp det som gjør symptomet forvirrende. Klienten arbeider ut fra et svar den fikk tidligere, og ingenting på serversiden viser hvilket svar det var. Planlegg gjentilkoblingen inn i vedlikeholdsvinduet og fortell brukerne hva de vil se, eller bruk vinduet på å svare på saker. En kø av identiske rapporter er det vanlige resultatet.

Hvem som kontrollerer navnet, og hva klienten verifiserer

Kontrollen over sonen avgjør hvor raskt en migrering kan bevege seg. Hold posten hos en registrar du kan logge på, og skriv ned hvem andre som kan endre den.

Tillit følger ikke navnet. En TLS-basert klient kan kontrollere en sertifikatidentitet eller et festet navn, mens WireGuard autentiserer motpartens offentlige nøkkel og ignorerer vertsnavnet helt. Den forskjellen avgjør om en DNS-redigering er nok, eller om hver profil trenger et nytt fingeravtrykk. En postendring bør aldri autorisere et endepunkt ingen har godkjent.

Hold administrativ tilgang og gjenopprettingstilgang borte fra det offentlige klientnavnet. Å miste en hostingkonto bør ikke også koste deg posten som omdirigerer klienter. Oppbevar gjenopprettingsveien et sted som ikke avhenger av leverandøren du forlater.

Når hver klient leser navnet på nytt

Oppslagstidspunktet er en egenskap per klient, så undersøk implementasjonen du faktisk leverer før du lover et overgangsvindu. wg-quick slår opp endepunktet når grensesnittet kommer opp, og beholder adressen til tunnelen startes på nytt. En OpenVPN-klient slår opp navnet når den kobler til, og om den ser igjen ved gjentilkobling avhenger av valgene dens.

ClientWhen it resolvesWhat it verifies
wg-quickAt interface start, cached for the sessionPeer public key, not the name
OpenVPN 2.6On connect, possibly again on reconnectCertificate identity or pinned name
Mobile clientsMay hold the answer across sleep or a network changePlatform trust store, same certificates

Mobilklienter er den vanlige overraskelsen, fordi de kan holde en oppslått adresse gjennom dvale eller et nettverksbytte. Publiser A- og AAAA-poster bare hvis erstatningen svarer på begge familier. En adresse som svarer på én familie, beviser ingenting om den andre, og en død AAAA-post legger til en tidsavbrudd på hvert forsøk. Dokumenter oppslagsatferden for hver klient du støtter, og test deretter på enhetene folk faktisk bruker.

En gjentilkobling er en brukerhandling i de fleste klienter, og serveren kan ikke tvinge den. Skriv det trinnet i vedlikeholdsnotatet, med en linje om hva brukeren vil se når det skjer.

Skift over på bevis, og avvikle deretter det gamle endepunktet

Før byttet må du bevise hvert lag på erstatningen: lytteren svarer, brannmuren slipper porten gjennom, rutene går riktig tilbake, navnet slås opp til den nye adressen, og en kjent identitet godtas. En lytter som godtar en tilkobling, er ikke det samme som en som fullfører et håndtrykk, så test håndtrykket og ikke porten. Hold den gjeldende tilbakekallingslisten ved siden av konfigurasjonen, fordi en gjenopprettet sikkerhetskopi gjenoppretter motpartlisten slik den var og ville gjenåpne tilgang du allerede har lukket. Noter hvilken identitet du testet med, fordi «det virker» ikke er et bevis noen kan gjenta.

getent hosts vpn.example.com
ss -lunp | grep 51820
wg show wg0 latest-handshakes

Under overgangen, overvåk tilkoblingsforsøk på begge endepunktene for samme identitet. En klient som fortsatt autentiserer mot den gamle adressen, er en profil eller et bufret svar som aldri flyttet seg. Avvikle det gamle endepunktet etter en datert plan, fordi to tjenester som godtar én identitet, etterlater to dører åpne.

Overgangstesten er en applikasjonsøkt gjennom det nye endepunktet, ikke en ping. Når den økten virker og det gamle endepunktet ikke logger noen autoriserte forsøk gjennom en full gjentilkoblingssyklus, er flyttingen ferdig.

Relaterte artikler