Kif tispezzjona r-resolvers DNS li l-Mac tiegħek juża fuq VPN
scutil --dns jistampa l-istat tar-resolver li macOS bena tassew. Qabbel kull blokk ma’ interface, staqsi isem veru u ppruva liema server wieġeb.
scutil --dns jistampa l-konfigurazzjoni tar-resolver li macOS tassew tikkonsulta, mhux is-server DNS wieħed li daħħalt f’pannell tas-settings. Il-ħruġ huwa itwal milli jistennew ħafna nies, għax is-sistema żżomm blokki tar-resolver separati għall-passaġġ default, għal interfaces b’ambitu u għal trażmissjoni speċifika għad-dominju. Il-blokk fil-quċċata tal-ħruġ mhux neċessarjament dak li jwieġeb il-mistoqsija. Jekk isem privat jiġi riżolt fl-uffiċċju u jfalli fil-mument li l-VPN tiela’, il-ħtija fil-regoli tat-tqabbil u fir-rotot, mhux fl-indirizz tas-server. Aqra l-ordni l-ewwel, imbagħad ippruva t-tweġiba b’tfittxija vera.
Aqra l-ordni tal-blokki qabel l-indirizzi
Kull entrata tiftaħ b’resolver #N u telenka nameserver[0], kultant if_index, linja flags, reach u, meta l-blokk mhuwiex default sempliċi, domain u lista search domain. Ir-resolver numru 1 mingħajr dominju huwa d-default li jittratta l-ismijiet pubbliċi. Kull ħaġa li ġġorr Scoped fil-flags tagħha hija marbuta mal-interface li ssemmi if_index, u kull ħaġa mmarkata Supplemental tapplika biss għad-dominji elenkati taħtha.
L-għażla hija tqabbil tas-suffiss. Għal isem bħal intranet.corp.example, macOS tippreferi r-resolver li l-entrata domain tiegħu hija l-itwal suffiss li jaqbel, u għalhekk blokk b’domain : corp.example jirbaħ id-default anke meta jinsab ’il bogħod fl-ħruġ. order issolvi l-pari bejn dominji tal-istess tul. Ħarsa waħda rari teħtieġ aktar minn hekk: il-ħruġ kollu meta trid taqra blokk wieħed mill-bidu sat-tmiem, l-ewwel linji biex titgħallem l-ordni tal-blokki, u passaġġ iffiltrat li jistampa l-intestaturi tal-blokki ħdejn il-linji tal-oqsma. Il-blokki b’ambitu jidhru taħt l-intestatura tagħhom u jinqraw bħala tkomplija tal-lista ta’ fuqhom, għalhekk żomm intestatura fil-viżjoni kull meta tikkwota l-ħruġ.
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'
Qabbel if_index mal-interface tal-mina
Indiċi huwa utli biss jekk tista’ ssemmi l-interface warajh. scutil --nwi jelenka l-informazzjoni tan-netwerk li żżomm is-sistema, inkluż l-interface primarja u l-aċċessabbiltà, filwaqt li ifconfig -l jagħtik l-ismijiet, fejn utun0 sa utun9 huma l-kandidati għall-mina li klijent normalment joħloq. Apple tuża scutil --dns bħala l-eżempju tal-ispezzjoni tagħha stess fil-gwida tal-ħruġ, u tiddokumenta kif Network Extension tista’ ddawwar dominji magħżula lejn resolvers magħżula, li huwa l-mekkaniżmu li dawk il-blokki b’ambitu jiżvelaw.
Il-verifika li ssolvi l-kwistjoni hija jekk ir-resolver huwiex fuq il-passaġġ li installa l-mina:
scutil --nwi
ifconfig utun4
route -n get 10.20.0.53
netstat -rn | grep -m5 utun
Jekk route -n get jirritorna gateway u interface li ma jaqblux mal-entrata tar-resolver, l-indirizz jista’ jkun perfettament korrett u madankollu ma jintlaħaqx. Mina maqsuma li ġġorr biss is-subnets korporattivi tarmi mistoqsijiet diretti lejn server DNS barra minnhom, u l-falliment jidher bħala timeout, u għalhekk il-ħruġ tal-konfigurazzjoni jibqa’ jidher nadif.
Staqsi r-resolver tas-sistema, imbagħad is-server
Tliet għodod iwieġbu tliet mistoqsijiet differenti, u l-ħawwad tagħhom jipproduċi ħafna mill-konklużjonijiet żbaljati f’dan il-qasam. dscacheutil -q host -a name tgħaddi mill-istess resolver tas-sistema li jużaw l-applikazzjonijiet ordinarji, għalhekk japplikaw il-blokki b’ambitu u dawk supplimentari. dig mingħajr argument tas-server taqra /etc/resolv.conf, li mhix is-sors tal-verità għar-riżoluzzjoni b’ambitu fuq macOS, u taqbeż għal kollox ir-regoli tad-dominju. dig @address tilħaq eżattament server wieħed u ma tgħid xejn dwar l-għażla.
dscacheutil -q host -a name intranet.corp.example
dig intranet.corp.example
dig @10.20.0.53 intranet.corp.example
nslookup intranet.corp.example
Meta l-ewwel kmand iwieġeb u t-tieni jirritorna NXDOMAIN, sibt il-qasma li kont qed tfittex u xejn mhuwa miksur. Meta l-ewwel jiskadi filwaqt li dig @10.20.0.53 iwieġeb, ir-resolver jaħdem imma ma jintlaħaqx fuq il-passaġġ li għażlet il-mina, għalhekk il-pass li jmiss huwa route -n get u mhux bidla fis-settings tad-DNS. Żomm l-ismijiet privati barra minn kull ħaġa li tippejstja fi tiket jew nota maqsuma.
X’ma jistax jurik il-ħruġ
Diversi saffi joqogħdu fuq il-lista tar-resolvers jew ħdejha, u kull wieħed jista’ jibgħat mistoqsija f’post li l-ħruġ qatt ma jsemmi. Browser b’DNS sikur attivat jista’ jirriżolvi mill-kanal tiegħu stess encrypted, u għalhekk paġna li tgħabbi filwaqt li dscacheutil jiskadi mhix kontradizzjoni. Proxy DNS installat minn software tas-sigurtà jaħdem bħala provider ta’ Network Extension u jgħaddi hu stess il-mistoqsijiet, u scutil --dns juri x’ġie kkonfigurat, mhux l-indirizz upstream li l-proxy fl-aħħar uża. Id-dominji tat-tfittxija jżidu tielet tiwi: isem mhux ikkwalifikat jingħata kull suffiss elenkat miżjud bl-ordni, u għalhekk il-blokk li wieġeb jista’ jkun wieħed li qatt ma sserraħt fuqu.
It-tweġibiet qodma huma l-irħas x’tiskarta u l-aktar li jiġu injorati:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
scutil --dns | head -20
Jekk il-ħruġ jinbidel wara t-tindif, l-istat kien fil-cache u l-ħruġ preċedenti deskriva mina li ma baqgħetx teżisti. Jekk ma jinbidilx, il-konfigurazzjoni hija kif inhi, u l-mistoqsija tmur għar-rotot u għall-politika tal-applikazzjonijiet.
Manwal qasir għal qabel u wara
Aqbad linja bażi biss fejn il-politika tippermetti, u żomm il-fajls barra minn kull folder sinkronizzat. Is-sekwenza t’hawn taħt hija dik li nmexxi fuq magni tal-klijenti: aqbad il-linja bażi, qabbad, erġa’ aqbad, imbagħad qabbel u fittex.
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
Aqra d-differenza skont il-blokki mhux skont il-linji. Resolver ġdid b’ambitu li jġorr l-indiċi tal-interface tal-mina u entrata domain għas-suffiss privat huwa l-għamla mistennija. Resolver default ġdid li jipponta lejn indirizz pubbliku huwa sejba li jixirqilha titqajjem ma’ min jippossjedi l-profil tal-klijent. Imbagħad erġa’ agħmel it-tfittxija ġewwa l-applikazzjoni li tassew falliet, mhux biss fil-qoxra, u noti l-interface minn route -n get ħdejn ir-riżultat.
Biex tneħħi bidla, aqla’ u erġa’ agħmel il-qbid tal-linja bażi. Jekk il-blokk b’ambitu telaq, il-klijent naddaf wara tiegħu. Jekk il-blokk għadu elenkat kontra interface li ma għadhiex teżisti, l-istat huwa qadim, u tindifa flimkien ma’ qagħda mill-ġdid hija l-ifjen tiswija qabel ma xi ħadd imiss il-profil.
Erba’ verifiki, b’din l-ordni: blokk tar-resolver jaqbel mal-itwal suffiss tal-isem; dak il-blokk huwa marbut mal-interface li installat il-mina; ir-rotta lejn is-server tal-ismijiet tiegħu tuża l-mina; u r-resolver tas-sistema, u mhux dig, jirritorna t-tweġiba. L-ewwel verifika li tfalli tgħidlek jekk għandekx tbiddel il-politika tad-DNS, ir-rotot tal-mina jew l-applikazzjoni. Jekk l-erbgħa jgħaddu u l-isem xorta jfalli, il-problema tinsab fuq id-DNS, u l-ħaġa li jmiss li għandha tiġi spezzjonata hija kull ma jwieġeb għall-port 53 quddiemu.