OpenVPN på port 53: tre samtalar folk blandar saman
Oppslag av endepunktet, den krypterte transporten og DNS etter tunnelen er tre samtalar. Finn ut kva trinn som svikta før du byter port eller resolver.
Rapportar som seier at VPN-en er blokkert på port 53 blandar saman tre observasjonar som sviktar av ulike grunnar. Oppslag av endepunktets namn skjer før nokon tunnel finst, den krypterte transporten er ein eigen samtale, og DNS-spørjingane som blir gjorde etterpå er den tredje. Kvar har sin eigen feilsignatur, og berre éin av dei handlar om DNS i det heile.
Sorter pakkane etter formål før du endrar noko, fordi rettinga følgjer trinnet.
Tre samtalar, eitt portnummer
Den første samtalen er eit namneoppslag for endepunktet: maskina di spør den konfigurerte resolvaren kvar vpn.example.com ligg, og svaret kjem over vanleg DNS før klienten sender éin einaste tunnelpakke. Den andre er sjølve OpenVPN-transporten, som koplar til adressa oppslaget gav, på det protokoll og den porten profilen oppgir. Den tredje skjer etter at tunnelen er oppe, når applikasjonar ber om namn og dei påtrykte resolverinnstillingane avgjer kven som svarar.
Desse tre kan lukkast eller svikta uavhengig av kvarandre. Ein klient kan slå opp endepunktet sitt perfekt og likevel ikkje nå lyttaren, og den kan etablera ein tunnel medan kvart internt namneoppslag sviktar fordi DNS-innstillingane aldri kom fram.
| Conversation | When it happens | What has to be true |
|---|---|---|
| Endpoint lookup | Before the client contacts a hostname | An underlying resolver path can answer for the endpoint name |
| OpenVPN transport | During tunnel establishment | The gateway listens on its configured transport, address and port, and nothing filters it |
| Application DNS | During or after the protected session | A resolver the client can reach, plus routing that carries its queries |
Les tabellen som ei sjekkliste og ikkje som ei skildring. Viss namnet på endepunktet ikkje let seg slå opp, kan ingenting seinare verka, og tunnelen startar aldri.
Portnummeret namngir ikkje applikasjonen
Port 53 ber DNS av konvensjon, og ein OpenVPN-operatør kan òg publisera ein lyttar der, og nettopp difor er nummeret ein dårleg identifikator. Ei OpenVPN-økt på UDP 53 er framleis ei OpenVPN-økt, og ei DNS-spørjing til ein server på port 53 seier ingenting om ein tunnel er tillaten. Linjene proto og remote i profilen definerer det ytre endepunktet; portnummeret definerer ingenting i seg sjølv.
Det skjer begge vegar under feilsøking: ei generisk UDP-prove mot port 53 beviser at ein port svarar, ikkje at VPN-tenesta svarar. Test med den ekte klienten og den ekte profilen, fordi berre det øvar på handtrykket tenesta ventar.
Bevis lyttaren før du klandrar nettet
På serveren, stadfest kva som er bunde med ss -lunp | grep 53 og samanlikn med protokollen og porten i profilen. Frå nettet til klienten, køyr klienten med høgare detaljgrad slik at loggen viser kva adresse og transport den freista. Viss serveren lyttar og pakkane frå klienten ikkje kjem fram, er det ruta eller policyen som avviser dei, og det er ein samtale med netteigaren og ikkje ein grunn til å byta port.
Ein annan port hjelper berre når tenesta faktisk lyttar der og utrullinga tillet det. Å flytta ein lyttar for å unngå filtrering i eit administrert nett er eit policyvedtak, ikkje eit feilsøkingstrinn. Spør netteigaren om kva som er tillate før du endrar tenesta, fordi ein omveg som bryt policyen blir stengd seinare uansett. Skriv ned svaret ved sida av profilen slik at neste person ikkje gientek forespurnaden.
Sjekk DNS etter tunnelen, separat
Når tunnelen er oppe, gransk tilstanden til resolvaren på VPN-grensesnittet og spør om eitt internt namn og eitt offentleg namn. Viss interne namn sviktar medan tunnelen ber trafikk, er dei påtrykte DNS-innstillingane ikkje brukte, noko som er eit spørsmål om klientintegrasjon og ikkje om transport. Viss offentlege namn sviktar og interne namn verkar, gjer policyen for delt tunnel det den vart konfigurert til.
Lat DNS-endringane liggja hos eigaren av resolvaren. Å skriva over ein administrert resolverkonfigurasjon for å få éin test til å passera kan øydeleggja private namn for alt anna på maskina. Viss tunnelen skyv ut ein resolver og klienten ignorerer den, reparer klientintegrasjonen i staden for å leggja til ein statisk oppføring ein annan stad. Statiske oppføringar skjuler feilen til nokon byter nett. Skriv ned kva resolver som er venta å svara for kvar namnerom.