DNS hollt a VPN: rheolau parthau nid yw llwybrau IP
Mae DNS hollt yn dewis datryswr yn ôl enw, ac mae ar yr ateb angen llwybr o hyd. Profwch y rheol barth a'r llwybr ar wahân, ar y llwyfan rydych chi'n ei ddefnyddio mewn gwirionedd.
Mae eich gliniadur yn datrys intranet.corp drwy'r twnnel tra bod gitlab.com yn dal i fynd i ddatryswr y darparwr, a dyna'r drefn sy'n gweithio fel y'i cynlluniwyd. Daeth dau benderfyniad ar wahân i greu hyn: dewisodd rheol cyfateb enw y datryswr, a chludodd llwybr yr ateb yn ôl. Torrwch y naill neu'r llall a bydd y porwr yn dangos methiant sy'n edrych yr un fath o'r tu allan. Mae'r rhan fwyaf o adroddiadau DNS hollt yn disgrifio'r ail fethiant wrth ddyfynnu tystiolaeth am y cyntaf.
Mae'r ddwy hanner yn byw mewn gwahanol leoedd ac fel rheol yn cael eu golygu gan wahanol bobl. Un yw polisi DNS sydd ynghlwm wrth broffil VPN, y llall yw llwybr y mae'r twnnel yn ei osod neu'n ei atal. Mae dadfygio'n stopio pan nad oes neb yn sefydlu pa hanner a symudodd mewn gwirionedd.
Dau benderfyniad yn cuddio mewn un cais
Mae hanner yr enw yn wrthrych polisi, nid yn llwybr. Ar Windows mae'n bolisi datrys enwau ar y proffil VPN; ar lwyfannau Apple mae'n set o barthau cyfateb ar wrthrych gosodiadau DNS; ar Linux mae'n barth llwybreiddio, llinell datryswr hollt neu drefn newid gwasanaeth enwau. Mae hanner y llwybr yn llwybreiddio cyffredin, wedi'i osod gan y twnnel neu â llaw, ac nid oes ganddo syniad beth yw enw gwesteiwr. Proffil sy'n derbyn ôl-ddodiad sy'n penderfynu pwy sy'n ateb yn unig; nid yw byth yn gwneud yr ateb yn gyrhaeddadwy.
Mae prawf symptomau cyflym yn eu gwahanu: rhoddwch gyfeiriad yn lle'r enw. Os yw'r cyfeiriad yn gweithio, mae'r llwybr yn iawn a'r rheol yn anghywir. Os yw'r cyfeiriad yn methu hefyd, gall y rheol fod yn gywir a'r llwybr ar goll.
Sut mae pob llwyfan yn mynegi'r un rheol enw
Mae'r bwriad yn unfath ac nid yw enwau'r meysydd. Mae enghraifft a gopïwyd o un cleient i'r llall yn dosrannu'n lân ac yn byth yn cyfateb. Mae'r tri siâp fel hyn:
| Platform | Where the rule lives | What usually breaks |
|---|---|---|
| Windows | name-resolution policy on the VPN profile | precedence against the interface suffix list |
| Apple platforms | match domains on the DNS settings object | domains attached to the wrong extension |
| Linux | routing domain, split resolver, nsswitch order | the suffix written the wrong way round |
Mae parth cyfateb neu lwybreiddio yn brawf ôl-ddodiad, felly mae intranet.corp yn cynnwys git.intranet.corp ac nid yn cynnwys corp.intranet, a gwrthdroi hyn yw'r camgymeriad mwyaf cyffredin yn y gosodiad cyfan. Mae Windows yn cario'r mapio fel polisi datrys enwau sydd ynghlwm wrth y proffil, gyda'i drefn flaenoriaeth ei hun yn erbyn unrhyw restr ôl-ddodiad oedd gan y rhyngwyneb yn barod. Mae llwyfannau Apple yn cysylltu parthau cyfateb wrth wrthrych gosodiadau DNS yr estyniad rhwydwaith, ac mae'r system yn eu cymhwyso fesul datryswr cwmpasedig. Nid yw'r un o'r ffurfiau hyn yn llwybr, ac ni all yr un ohonynt wneud cyfeiriad anghyrhaeddadwy yn gyrhaeddadwy. Mae cyfeirlyfr polisi datrys enwau Windows yn rhestru enwau'r meysydd a'r rheolau blaenoriaeth ar gyfer y llwyfan hwnnw, ac nid y rheini yw'r rhai y mae dogfennau Apple neu systemd yn eu defnyddio.
Mae angen llwybr ar ateb cywir o hyd
Nid yw ateb datryswr yn ddim ond cyfeiriad, ac mae'n rhaid i'r rhaglen gyrraedd yno o hyd. Mae cynllun twnnel hollt yn aml yn gwthio 10.20.0.0/16 ac yn atal y llwybr diofyn, felly mae'r enw mewnol yn datrys ac yna mae'r cysylltiad yn hongian. Mae'r achos cyferbyniol yr un mor gyffredin: mae'r llwybr yn bodoli, mae datryswr cyhoeddus yn ateb yr enw preifat ag NXDOMAIN, ac mae'r methiant yn cael ei gofnodi fel problem llwybreiddio. Mae profi'r llwybr yn gyntaf yn eich gadael yn syllu ar lwybrau ar gyfer enw nad oedd byth yn mynd i ddatrys.
Mae trydydd giât hefyd nad yw'r un hanner yn ei chynnwys. Gall ACL ar y giât, rheol wal dân neu bolisi ar ochr y cleient ollwng y cysylltiad ar ôl i'r ddau benderfyniad fynd yn iawn. Pan fydd yr enw'n datrys, y llwybr yn bodoli a'r cysylltiad yn dal i ddod i ben, stopiwch brofi DNS.
Profi enwau a llwybrau mewn trefn sefydlog
Dewiswch drefn a chadwch ati, neu byddwch yn rhedeg ar ôl y cam a fethodd ddiwethaf. Datryswch yr enw mewnol llawn dogfennol, cadarnhewch fod yr ateb yn gyfeiriad y gall y tabl llwybreiddio ei gludo, yna ailadroddwch ag enw cyhoeddus i brofi na chipiodd y twnnel bopeth. Ar wasanaethwr systemd mae'r cwestiwn a pharth llwybreiddio'r datryswr un gorchymyn oddi wrth ei gilydd:
resolvectl query intranet.corp
resolvectl domain
ip route get 10.20.5.10
Mae cleient Windows yn gofyn yr un dau gwestiwn â cmdletau gwahanol. Mae'r ail yn adrodd y rhyngwyneb y byddai'r system yn ei ddefnyddio mewn gwirionedd:
Resolve-DnsName intranet.corp -Type A
Find-NetRoute -RemoteIPAddress 10.20.5.10
Os yw'r chwiliad yn dychwelyd cyfeiriad ac mae'r prawf llwybr yn enwi'r rhyngwyneb corfforol, gweithiodd y rheol enw ac nid y llwybr. Os yw'r enw byr yn methu tra bod yr enw llawn yn datrys, mae'r rhestr ôl-ddodiad yn anghywir yn hytrach na'r datryswr.
Lle mae'r gymhariaeth fel arfer yn mynd o'i le
Y camgymeriad cyntaf yw gofyn i ddatryswr cyhoeddus amherthnasol am enw preifat a darllen y gwrthodiad fel tystiolaeth am y VPN. Yr ail yw tybio bod chwiliad cyhoeddus sy'n gweithio yn profi llwybr datryswr y twnnel. Y trydydd yw trin twnelu hollt a DNS hollt fel un penderfyniad cynllunio, pan all defnydd fod yn gywir yn y naill ac yn doredig yn y llall. Mae pob camgymeriad yn cynhyrchu casgliadau hunanfodlon o brawf na chafodd y rhan sy'n cael y bai ei harfer byth.
Gall porwr sydd â'i DNS diogel ei hun hefyd osgoi rheol y system, a dyna pam nad yw un porwr yn methu tra bod un arall yn llwyddo yn wrthddweud. Cymharwch y datryswr a atebodd, nid y porwr a gwynodd.
Unwaith y bydd y ddwy hanner yn weladwy, mae'r cwestiwn sy'n weddill yn gwestiwn polisi yn hytrach nag un technegol: pa ofodau enwau sy'n perthyn i'r sefydliad, pwy sy'n berchen ar bob ateb, a pha rai ohonynt a ddylai adael y peiriant o gwbl. Ysgrifennwch hynny wrth ymyl y proffil, oherwydd bydd ar y person nesaf sy'n cyffwrdd â'r rheol ei angen.