Kto na Windows skutočne aplikuje DNS nastavenia OpenConnect?
Windows drží stav resolvera na troch miestach. Nájdite pomocníka, ktorý vlastní pripojenie, skôr než budete ručne upravovať DNS adaptéra alebo pridávať pravidlo menného priestoru.
Zdvyhnúť tunel nie je to isté ako nainštalovať jeho DNS hodnoty. OpenConnect vyjednáva a pomocník na strane Windows ich aplikuje. Medzera medzi týmito dvoma krokmi vysvetľuje väčšinu zlyhaní privátnych mien u tohto klienta a pomocník takmer nikdy nie je stránka nastavení VPN vo Windows.
Oddeľte, čo ponúkla brána, od toho, čo Windows nainštaloval
Klient odovzdáva údaje o pripojení skriptovému rozhraniu a varianty pre Unix a Windows sú samostatné programy. Vo Windows je implementáciou zvyčajne pomocník v JavaScripte, ktorý číta premenné ako interný DNS server a interná doména, skôr než sa dotkne akéhokoľvek adaptéra. Nič v samotnom tuneli nezapisuje stav resolvera.
Toto rozdelenie je dôležité, pretože hodnota môže existovať vo vyjednávaní a nikdy sa nedostať k adaptéru. Chýbajúci pomocník, ktorý zlyhá v polovici alebo je staršou kópiou zabalenou do GUI obalu, nechá Windows presne tak, ako boli. Relácia vyzerá pripojená, privátne meno sa stále prekladá cez miestneho poskytovateľa a nič v okne klienta na rozdiel neupozorňuje. Čítanie vlastného výstupu pomocníka je jediný spoľahlivý spôsob, ako zistiť, ktorá fáza sa pokazila.
| Stage | What exists there | Where you see it |
|---|---|---|
| Negotiated | Internal DNS address and domain pushed by the gateway | Client log or helper input |
| Installed | Adapter DNS entry, connection suffix, or namespace rule | Adapter and policy queries |
| Selected | Resolver Windows uses for one specific query | The failing application |
GUI obal môže dodávať vlastnú kópiu klienta aj pomocníka, takže druhý openconnect.exe inde na disku nič nedokazuje. Nájdite spustiteľný súbor, ktorý reláciu spustil, skôr než posúdite jeho konfiguráciu.
Prečítajte stav resolvera bez toho, aby ste ho zmenili
Tri dotazy iba na čítanie pokrývajú obvyklý zmätok a každý odpovedá na inú otázku:
Get-DnsClientServerAddress -AddressFamily IPv4
Get-DnsClient | Select-Object InterfaceAlias, ConnectionSpecificSuffix
Get-DnsClientNrptPolicy -Effective
Server na úrovni adaptéra je to, čo väčšina ľudí myslí pod VPN DNS. Prípona špecifická pre pripojenie rozhoduje, či sa krátke meno vôbec rozšíri. Zoznam pravidiel menného priestoru sa vzťahuje na zodpovedajúce mená bez ohľadu na poradie adaptérov, a prázdny výsledok tam nie je chybou, keď pomocník nikdy neplánoval nejaký vytvoriť. Prečítať všetky tri pred úpravou je to, čo zabráni oprave, ktorá len presunie príznak inam.
Začnite plne kvalifikovaným menom. Ak sa FQDN preloží a krátke meno nie, medzerou je prípona alebo zoznam hľadania, nie adresa servera.
Ako druhý krok sa pýtajte priamo zamýšľaného servera akýmkoľvek už nainštalovaným nástrojom resolvera. Priama odpoveď dokazuje, že server je dostupný a autoritatívny pre zónu. Nedokazuje nič o tom, ktorý server aplikácia oslovuje predvolene.
Pomenujte komponent, ktorý vlastní pripojenie
Bežné sú dve usporiadania. Klient spustený z terminálu odovzdáva cestu k svojmu skriptu explicitne, takže vlastník je viditeľný v spustenom príkaze. Zbalená aplikácia spúšťa klienta za vás a drží pomocníka vo vlastnom adresári, čo znamená, že dodávateľ rozhoduje, kedy sa zmení.
Porovnajte verzie pomocníka medzi inštaláciami, skôr než čokoľvek vymeníte. Spustenie pomocníka stiahnutého zo zrkadla so zvýšenými právami len preto, že názov súboru vyzerá povedome, premení medzeru v DNS na bezpečnostný incident.
Keď je vlastník známy, cieľ opravy je zrejmý: podporovaná cesta k skriptu v spúšťači, aktualizácia balíka alebo opravený profil na bráne. Nič z toho nevyžaduje ručnú úpravu vlastností adaptéra.
Opravte vlastníka, nie adaptér
Ručne nastavený DNS adaptéra často prežije odpojenie, preto sa zdá, že funguje, a potom spôsobí problémy v ďalšej sieti. Verejný resolver priskrutkovaný ku každému rozhraniu skrýva problém privátneho menného priestoru namiesto toho, aby ho riešil. Keď pomocník nikdy nedostal DNS hodnotu, hľadajte v profile brány. Keď ju dostal a adaptér stále ukazuje starý server, pomocník pri pripájaní zlyhal a klientsky log to zvyčajne zaznamená pri riadkoch nastavenia tunela.
Obnovte stav podporovanou cestou a potom overte celý cyklus: pripojte sa, preložte privátne FQDN, otvorte službu, odpojte sa a potvrďte, že sa adaptér vrátil s predchádzajúcimi servermi.
Skontrolujte aplikáciu, ktorá skutočne zlyháva
Prehliadač s vlastným nastavením šifrovaného DNS ignoruje všetko vyššie a naďalej odpovedá z verejného resolvera. Aplikácia, ktorá drží uloženú negatívnu odpoveď z čias pred zdvihnutím tunela, sa správa rovnako. Porovnajte ju s obyčajným systémovým dotazom na tom istom počítači, skôr než znova zmeníte adresy resolvera.
Ak je systémový dotaz správny a aplikácia nie, zostávajúca chyba je v DNS konfigurácii tejto aplikácie, nie v ceste VPN.