Engem Client eng Resolveradress ze ginn entscheet, wou d'Ufroe hiergeet, net wéi eng Quell de Resolver wäert gesinn. Routing, Weiderleedung an Iwwersetzung kréien all hir Ronn tëscht den zwou Enden. E Runbook fir Quellfroen verfollegt d'Ufro Hop fir Hop a schreift op, wat all Observateur tatsächlech gesinn huet. D'Reiefolleg ass wichteg, well eng Behauptung virun der Observatioun ass just eng Vermutung mat besserer Formatioun.

Schreif d'Arrangement op, ier s du Beweiser sammels

Véier Plazen kënnen dir eppes iwwer eng DNS-Quell soen, an se soen net all déiselwecht Saach. De Clientkernel weess, wéi eng Quell en notze géif, en Forwarder weess, wat en upstream geschéckt huet, en iwwersetzend Gerät weess, wat et ëmgeschriwwen huet, an den empfangende Resolver weess, wat ukomm ass. Schreif op, wéi eng dovun s du tatsächlech erreeche kanns, ier s du eppes sammels.

Observation pointWhat it can proveWhat it cannot proveHow to read it
client kernelwhich source address it would use for that resolveranything a device in between rewroteip route get against the resolver address
forwarderthat it sent an upstream query, and from which sourcewhat the client originally asked forits own log and its cache state
translating devicethat a source was rewritten, and to whatwhether the query was legitimateNAT policy and its counters
receiving resolverthe address that actually arrivedwhich client behind that address askeda scoped capture on port 53

Schreif och deng Erwaardung op, inklusiv de Resolver, vun deem s du mengs, datt en am Gebrauch ass. Eng Splitroute kann eng Ufro ganz soss anzwuersch schécken, an e Cache kann äntweren ouni all Upstream-Austausch, dofir eng Unnam, déi nëmmen am Kapp gehal gëtt, iwwersteet déi éischt Iwwerraschung net. Hal den erkläerten Design an de beobachtete Wee an getrennte Kolonnen vun der selwechter Notiz; wann déi zwee sech net eens sinn, hues du d'Fro fonnt, déi et wäert ass ze verfollegen.

Kuck, wéi ee Prozess d'Ufro tatsächlech geschéckt huet

Fänk beim Client un: notéier d'Resolveradress, den Ufronumm an d'Zäit an bestätegt dann, wéi ee Prozess se geschéckt huet. Déi éischt Zeil hei drënner nennt de Prozess, deen den UDP-Socket hält, an dat ass d'Kontroll, déi dës Iwwerschëft versprécht. Wann dee Prozess en Browserhelper oder eng Containerruntime ass amplaz vum Systemresolver, dann beschreift de Rescht vun der Spuer e Wee, no deem keen gefrot huet.

ss -tunp 'dport = :53'
dig @10.20.30.53 host.corp.example +noall +answer
ip route get 10.20.30.53

Fann op engem Host mat méi Interface eraus, wéi eng Quelladress de Kernel fir deen Zil auswielt, ier s du soss anzwuersch kucks. Dat ass de leschte Punkt, wou de Wee komplett ënner denger Kontroll ass, an et ass dee Wäert, deen s du mat deem vergläichs, wat de Resolver mellt. En Ënnerscheed ass d'Sigel, datt eppes dozwëscht d'Paket ëmgeschriwwen huet, oder datt zwou verschidden Ufroe geschéckt goufen.

Hal d'Testnimm intern, well en internen Numm, deen un en ëffentleche Resolver geet, beweist näischt iwwer den internen Wee a publizéiert en Numm, deen s du net misst publizéieren. E Browser mat sécherem DNS un erschéngt guer net an där Socketlëscht, an dat Fehlen ass selwer d'Äntwert.

Den Forwarder mécht eng zweet, separat Ufro

En Forwarder mécht aus engem Austausch zwee. D'Downstream-Ufro kënnt un, an den Forwarder schéckt dann seng eegen Ufro upstream vun enger Adress, déi en auswielt. Seng Konfiguratioun, net de Client, entscheet, wat den Upstream-Resolver gesäit.

Den dnsmasq-Handbuch ass aus deem Grond liesenswäert: et dokumentéiert, wéi en Forwarder Upstream-Server auswielt a seng Lauschsäit bindet, an näischt an deem Arrangement dréit d'Clientquell upstream. En Resolverlog, deen eng Gatewayadress weist, ass dofir normal an net e Beweis fir e Feeler. Ofwesenheet ass genee esou liicht falsch ze liesen, well en Cachetreffer keng Upstream-Ufro produzéiert an identesch ausgesäit wéi eng Ufro, déi ni ukomm ass. Lies d'Forwarder-Konfiguratioun an hire Cachezoustand, ier s du eng vun den zwou Konklusiounen zitt. Zwou Froen, zwou Plazen nozekucken.

Lies d'Quell beim empfangende Resolver

Déi eenzeg Observatioun, déi dat kläert, gëtt op der Serversäit gemaach. Alles, wat aus der Interface-Lëscht vum Client ofgeleet gëtt, bleift eng Hypothees, bis de Resolver mellt, wat tatsächlech ukomm ass.

tcpdump -ni any port 53 and host 10.20.30.53

Maach Opnamen um Resolverhost, hal d'Opnam kuerz a begrenzt, a späicher se do, wou d'Politik et erlaabt. Wann déi beobachtet Quell eng iwwersat Adress ass, ass déi nächst Fro, wéi ee Gerät d'Iwwersetzung gemaach huet a ob seng Politik déi gewollt ass. Eng Opnam äntwert, wat ukomm ass; se erkläert net, firwat d'Politik et erlaabt huet. Nenn den Observateur an den Hop an der Notiz, well eng Dateschützbehaaptung iwwer en Gateway ass eng Behaaptung iwwer deen Hop an net iwwer de ganze Wee.

Schreif de Befund als Wee, net als Adress

Notéier de Client, de Resolver, all Forwarder, déi beobachtet Quell bei all Hop an d'Politik, déi en regéiert. Dee Rekord äntwert déi meescht zukünfteg Froen ouni eng aner Opnam. Zeech en als Kette, well eng Lëscht vun Adressen verstoppt, wéi ee Hop wéi eng produzéiert huet.

Hänk d'Datum, d'Clientversioun an d'Konfiguratiounsrevisioun un d'Zeechnung, sou datt en spéider Lieser erkenne kann, ob se nach gëllt. Tren d'Transportquell vun allem aneren, wat den Déngscht veraarbecht, well eng Gatewayadress ze gesinn seet näischt driwwer, wat soss nach gespäichert gëtt. Eng Resolverplaz seet och näischt driwwer, wéi ee Client gefrot huet. Dës Behauptungen auserneen ze halen ass dat, wat d'Konklusioun ënner Iwwerpréiwung verdeedegbar mécht.

Ähnlech Artikelen