Sida loo baaro resolvers-ka DNS ee Mac-gaagu isticmaalo VPN
scutil --dns waxa uu daabacaa xaaladda resolver-ka uu macOS runtii dhisay. Ku habee blok kasta interface, weydii magac dhab ah oo caddee serverkee ayaa ka jawaabay.
scutil --dns waxa uu daabacaa qaabka resolver-ka ee macOS runtii tixraacdo, ma aha server-ka DNS ee keliya ee aad ku qortay bogga dejinta. Soo-saarku wuu ka dheer yahay inta badan dadku filayaan, sababtoo ah nidaamku waxa uu hayaa blokke resolver gaar ah oo loogu talagalay waddada caadiga ah, interface-yada xadidan iyo gudbinta gaar ah domain-ka. Blok-ka sarreeya soo-saarku ma aha daruuri kan ka jawaaba weyddiinta. Haddii magac gaar ah xafiiska lagu xalliyo oo uu fashilmo daqiiqadda VPN-ku soo kaco, iswaafajin la'aantu waxay ku jirtaa qawaaniinta isbarbar-dhigga iyo waddooyinka, ma aha cinwaanka server-ka. Marka hore akhri nidaamka, ka dibna caddee jawaabta raadin dhab ah.
Akhri nidaamka blok-ka ka hor cinwaannada
Gelitaan kastaa waxa uu ku furmaa resolver #N oo waxa uu liisaynayaa nameserver[0], marmar if_index, xariiq flags, reach iyo, marka blok-ku aanu ahayn caadi fudud, domain iyo liis search domain. Resolverka lambar 1 ee aan domain lahayn waa kan caadiga ah ee maareeya magacyada dadweynaha. Wax kasta oo calamadiisa ku qaata Scoped waxa uu ku xidhan yahay interface-ka uu magacaabo if_index, iyo wax kasta oo lagu calaamadiyay Supplemental waxa uu khusayaa oo kaliya domain-yada hoostiisa ku taxan.
Doorashadu waa isbarbar-dhig dabo-dheer. Magac sida intranet.corp.example, macOS waxa uu doorbidayaa resolver-ka gelitaankiisa domain uu yahay dabo-dheerta ugu dheer ee u dhigma, sidaas darteed blok leh domain : corp.example waxa uu ka guuleystaa kan caadiga ah xitaa marka uu soo-saarka hoostiisa aad ugu jiro. order waxa uu go'aamiyaa isle'egyada u dhexeeya domain-yo isku dherer ah. Aragtida koowaad marar dhif ah uma baahna wax ka badan: soo-saarka oo dhan marka aad rabto in aad akhrido hal blok bilow ilaa dhammaad, xariiqyada bilowga si aad u barato nidaamka blok-ka, iyo mar-mar shaandhayn ah oo daabacda madaxyada blok-ka dhinaca xariiqyada goobta. Blok-yada xadidan waxa ay u muuqdaan madaxooda hoostiisa oo waxa loo akhriyaa sida sii-wadidka liiska korka, markaa madax ku hay aragtida mar kasta oo aad soo xigto soo-saarka.
scutil --dns
scutil --dns | sed -n '1,45p'
scutil --dns | grep -nE '^resolver #|^DNS configuration'
scutil --dns | grep -nE 'resolver #[0-9]+|if_index|domain|flags|nameserver'
Ku habee if_index interface-ka tunnel-ka
Tilmaame waxa uu faa'iido leeyahay oo kaliya haddii aad magacaabi karto interface-ka ka dambeeya. scutil --nwi waxa uu liisaynayaa macluumaadka shabakadda ee nidaamku haya, oo ay ku jiraan interface-ka koowaad iyo gaaritaanka, halka ifconfig -l uu ku siinayo magacyada, halkaas oo utun0 ilaa utun9 ay yihiin musharixiinta tunnel-ka ee macmiilku caadi ahaan abuuro. Apple waxa uu scutil --dns u isticmaalaa tusaalaha hubinta u gaar ah hagaha geynta gudaha, oo waxa uu diiwaangeliyay sida Network Extension uu u jiheeyo domain-yo la doortay resolvers la doortay, taas oo ah habka ay blok-yadaas xadidan muujiyaan.
Hubinta go'aamisa su'aashu waa in resolver-ku ku yaal waddada uu tunnel-ku dhigay:
scutil --nwi
ifconfig utun4
route -n get 10.20.0.53
netstat -rn | grep -m5 utun
Haddii route -n get uu soo celiyo irid iyo interface aan ka mid ahayn gelitaanka resolver-ka, cinwaanku si buuxda ayuu u saxnaan karaa oo haddana aan la gaari karin. Tunnel qaybsan oo kaliya qaata subnet-yada shirkadda waxa uu tuuraa weyddiimaha ku wajahan server DNS oo ka baxsan, oo fashilku waxa uu u muuqdaa sida waqti-dhaaf, taas ayaa sababta soo-saarka qaabku uu weli u muuqdo nadiif.
Weydii resolver-ka nidaamka, ka dib server-ka
Saddex qalab ayaa ka jawaaba saddex su'aalood oo kala duwan, isku-dhaca iyaguna waxa uu soo saaraa inta badan gunaanadka khaldan ee dhinacan. dscacheutil -q host -a name waxa uu maraa isla resolver-ka nidaamka ee ay isticmaalaan codsiyada caadiga ah, sidaas darteed blok-yada xadidan iyo kuwa dheeraadka ah way khusayaan. dig oo aan lahayn dood server waxa uu akhriyaa /etc/resolv.conf, kaas oo aan ahayn isha runta xallinta xadidan ee macOS, oo waxa uu si buuxda u dhaafi qawaaniinta domain kasta. dig @address waxa uu gaaraa hal server oo sax ah oo waxba kama sheego doorashada.
dscacheutil -q host -a name intranet.corp.example
dig intranet.corp.example
dig @10.20.0.53 intranet.corp.example
nslookup intranet.corp.example
Marka amarka koowaad ka jawaabo oo kan labaad soo celiyo NXDOMAIN, waxa aad heshay qaybsigii aad raadinaysay oo waxba ma jaban. Marka kan koowaad waqti-dhaafo halka dig @10.20.0.53 ka jawaabo, resolver-ku wuu shaqeeyaa laakiin lagama gaari karo waddada uu tunnel-ku doortay, sidaas darteed tallaabada xigta waa route -n get ma aha beddelka dejinta DNS. Magacyada gaarka ah ka fogee wax kasta oo aad ku dhejiso tikidhka ama qoraal la wadaago.
Waxa soo-saarku aan ku tusin karin
Dhowr lakab ayaa fadhiya liiska resolvers-ka korka ama agtiisa, oo mid kasta waxa uu u diri karaa weyddiin meel aan soo-saarku waligiis xusin. Browser leh DNS ammaan oo shidan waxa uu ku xallin karaa kanaalkiisa sirta ah, sidaas darteed bogga soo-degeeya inta dscacheutil waqti-dhaafayo ma aha khilaaf. Proxy DNS oo ay rakibtay software ammaanka waxa uu u shaqeeyaa sidii bixiye Network Extension oo keligiis gudbiyaa weyddiimaha, oo scutil --dns waxa uu tusaa waxa la qaabeeyay, ma aha cinwaanka kore ee proxy-gu ugu dambayntii isticmaalay. Domain-yada raadinta waxa ay ku daraan laab saddexaad: magac aan u-qalmin waxa lagu daraa dabo-dheer kasta oo liis ku jira si nidaam ah, sidaas darteed blok-ka jawaabay waxa uu noqon karaa mid aadan waligaa tuhun ku qaadin.
Jawaabaha duugoobay waa waxa ugu jaban in la reebo oo inta badan la boodo:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
scutil --dns | head -20
Haddii soo-saarku is beddelo nadiifinta ka dib, xaaladdu waxay ku jirtay kaydka oo soo-saarkii hore waxa uu sharraxayay tunnel aan hadda jirin. Haddii uusan is beddelin, qaabku waa sida uu yahay, oo su'aashu waxa ay u gudubtaa waddooyinka iyo siyaasadda codsiyada.
Buug-gacmeed gaaban oo loogu talagalay ka hor iyo ka dib
Qaado khadka saldhigga oo kaliya halka siyaasaddu u ogolaato, oo faylasha ka haysta baxsan kasta oo folder la isku-dubbariday. Nidaamka hoose waa kan aan ku socodsiiyo mishiinnada macaamiisha: qaado khadka saldhigga, ku xir, dib u qaado, ka dibna isbarbar-dhig oo raadi.
scutil --dns > ~/dns-before.txt
# connect the VPN, then:
scutil --dns > ~/dns-after.txt
diff -u ~/dns-before.txt ~/dns-after.txt
dscacheutil -q host -a name intranet.corp.example
Akhri farqiga blok-blok ee ma aha xariiq-xariiq. Resolver xadidan oo cusub oo qaata tilmaamaha interface-ka tunnel-ka iyo gelitaan domain oo loogu talagalay dabo-dheerta gaarka ah waa qaabka la filayo. Resolver caadi ah oo cusub oo tilmaamaya cinwaan dadweyne waa natiijo ay mudan tahay in lala wadaago milkiilaha borofaylka macmiilka. Ka dib ku celi raadinta gudaha codsiga runtii fashilmay, ma aha oo kaliya shell-ka, oo ku qor interface-ka route -n get natiijada agteeda.
Si aad u baabi'iso isbeddel, gooy oo ku celi qaadashada khadka saldhigga. Haddii blok-ka xadidan uu tagay, macmiilku iskiisuu nadiifiyay. Haddii blok-ku weli liis ku qoran yahay interface aan hadda jirin, xaaladdu waa duug, oo nadiifin iyo dib-u-xidh waa sixitaanka ugu jilicsan ka hor inta qof uusan taaban borofaylka.
Afar hubin oo nidaamkan ah: in blok resolver ah uu la jaan-qaado dabo-dheerta ugu dheer ee magaca; in blok-kaas uu ku xidhan yahay interface-ka uu tunnel-ku dhigay; in waddada server-ka magiciisa ay isticmaalayso tunnel-ka; iyo in resolver-ka nidaamka, ma aha dig, uu soo celiyo jawaabta. Hubinta ugu horreysa ee fashilanta waxa ay kuu sheegtaa in aad beddelo siyaasadda DNS, waddooyinka tunnel-ka ama codsiga. Haddii afarta oo dhan ay gudbaan oo magacu weli fashilmo, dhibaatadu waxa ay ka sarraysaa DNS, oo waxa xigta ee la baari karo waa wax kasta oo ka jawaaba port 53 hortiisa.