Privátny DNS funguje vo VPC, ale nie cez VPN
Privátny názov, ktorý sa prekladá v EC2, ale nie cez VPN, je problém cesty resolvera. Prečítajte si podobu zlyhania, kým upravíte záznam zóny.
Privátny názov sa prekladá z inštancie EC2, ale nie z notebooku pripojeného cez VPN, a zóna vyzerá v konzole správne. Inštinkt je upraviť záznam, čo takmer nikdy nie je problém. Záznam niekomu odpovedá; len neodpovedá vášmu notebooku. Čo sa medzi oboma volajúcimi líši, je to, ktorý resolver sa pýtajú, a či ten resolver má podporovanú cestu do pohľadu DNS vo VPC.
Začínam tým, že dokážem existenciu záznamu, a zvyšok času venujem ceste dotazu. Sú to oddelené systémy a zlyhávajú rôznymi spôsobmi.
Prečítajte si podobu zlyhania, kým čokoľvek zmeníte
Tri výsledky znamenajú tri rôzne veci a jeden dotaz ich rozlíši: spustite dig pre názov proti resolveru, ktorý klient skutočne používa.
| What you see | What it usually means | First thing to check |
|---|---|---|
| SERVFAIL, or a timeout after several seconds | No path to the resolver, or the resolver cannot reach AWS | Route to the endpoint and the security policy on port 53 |
| NXDOMAIN from a resolver that did answer | The resolver replied, but the zone is not in its view | Zone association or the forwarding rule for that namespace |
| A public address for an internal name | Split DNS is not in effect for this client | Which resolver the client is configured to use |
Časový limit je tvrdenie o sieti. NXDOMAIN je tvrdenie o pohľade DNS. Verejná odpoveď je tvrdenie o politike. Úprava záznamu zóny, keď beží časový limit, zahadzuje jediný užitočný dôkaz v prípade.
Prečo adresa plus dva vo VPC nie je vzdialený resolver
Adresa CIDR plus dva je lokálna služba pre prostriedky vnútri VPC. AWS dokumentuje, že preposielanie dotazov z lokálnych sietí alebo z DNS serverov iného VPC priamo na túto adresu nie je podporované a môže dávať nestabilné výsledky.
To neznamená, že experiment nikdy nevyzerá, že funguje. Znamená to, že správanie nie je zmluva, ktorú možno vložiť do skriptu podpory. Podporovaný smer je prichádzajúci koncový bod Resolver: pár adries vnútri vášho VPC, dosiahnuteľný zo siete, ktorú ovládate, ktorý prijíma dotazy prichádzajúce zvonku AWS.
Postavte cestu v poradí, v ktorom zlyháva čisto
Musia existovať tri skoky a každý má svoj vlastný spôsob zlyhania.
VPN client -> approved DNS forwarder
forwarder -> forwarding rule for internal.example
forwarding rule -> Resolver inbound endpoint addressesPreposielač potrebuje trasu k adresám koncového bodu cez VPN a spätná cesta tiež musí fungovať. Pre klasický DNS na porte 53 koncový bod odpovedá cez UDP a TCP, takže oba protokoly musia byť povolené a oba musia prežiť akúkoľvek stavovú inšpekciu cestou.
Potom skontrolujte pohľad DNS zvlášť. Privátna hostovaná zóna je viditeľná len pre VPC, s ktorými je prepojená, alebo prostredníctvom zámernej dohody o zdieľaní. Dosiahnuteľný koncový bod sám o sebe nerobí každú privátnu zónu preložiteľnou v jej kontexte prekladu.
Odchádzajúci koncový bod slúži opačnému smeru a neodpovie na dotaz prichádzajúci z vášho notebooku.
Overte z oboch strán
Dotazujte sa z klienta na preposielač a potom z preposielača na koncový bod. Ak klient zlyhá a preposielač uspeje, medzera je medzi tými dvoma.
Ak zlyhajú oba, pozrite sa na bezpečnostnú politiku koncového bodu a na zdrojovú adresu, ktorú skutočne vidí. Preposielač za NAT predstavuje adresu NAT namiesto adresy VPN notebooku a samotný tento rozdiel stačí na to, aby dotaz prepadol. Ak oba uspejú, ale aplikácia stále zlyháva, môže aplikácia používať iný resolver, než ktorý ste testovali.
Držte verejné a privátne menné priestory zámerne oddelené. Split DNS je politika, ktorú konfigurujete, nie vedľajší efekt toho, že jeden dotaz náhodou vráti dáta.
Čo by som nerobil
Nepridal by som pravidlo NAT, ktoré rozbehlo jediný dotaz, a nenazval by som to návrhom.
Nesmeroval by som všetkých vzdialených klientov na adresu plus dva len preto, že jeden test raz vrátil záznam. A nerozšíril by som bezpečnostnú politiku koncového bodu na celý fond VPN, keď prístup potrebuje jediný preposielač. Ak organizácia už prevádzkuje schválený preposielač vnútri VPC, prečítajte si najprv ten návrh, pretože druhý koncový bod, ktorý pridáte, je ten, ktorý nikto nedokumentuje.