Yr hyn y mae route-nopull OpenVPN yn ei atal rhag cael ei wthio gan y gweinydd
Mae route-nopull yn gollwng llwybrau a dewisiadau DHCP a wthiwyd, nid yr handshake. Dewiswch rhwng hynny, pull-filter neu ddim, yna ychwanegwch y llwybrau eich hun.
Fe wnaethoch osod route-nopull mewn proffil cleient er mwyn atal y twnnel rhag llyncu eich llwybr diofyn, ac yn awr mae is-rwydwaith y swyddfa yn anghyrhaeddadwy tra bod y cleient yn dal i ddweud ei fod wedi cysylltu. Mae’r ddau sylw yn wir, ac nid oes dim wedi methu. Mae’r fflag yn dweud wrth y cleient am hepgor y llwybrau a’r cofnodion DHCP y mae’r gweinydd yn eu gwthio, sef cyfarwyddyd culach nag y mae’r rhan fwyaf o bobl yn ei ddisgwyl pan fyddant yn ei ychwanegu. Yr hyn sy’n weddill yw twnnel gweithredol heb unrhyw farn am ba gyrchfannau a ddylai ei ddefnyddio.
Y bwlch hwnnw yw’r penderfyniad cyfan y mae’r erthygl hon yn sôn amdano. Naill ai’r gweinydd sy’n disgrifio’r rhwydwaith, neu’r cleient, ac mae’r fflag yn rhoi’r gwaith hwnnw i’r cleient heb wneud dim ohono drosoch.
Beth mae’r fflag yn ei ddiffodd adeg cysylltu
Mae cleient OpenVPN sy’n tynnu fel arfer yn cymryd bwndel gan y gweinydd ar ôl dilysu: llwybrau, ailgyfeiriad y porth diofyn, gweinyddion DNS, ac ychydig o gyfarwyddebau tiwnio. Gyda route-nopull mewn grym mae’r cleient yn dal i dderbyn y sesiwn, yn dal i ddilysu tystysgrifau, yn dal i drafod seiffrau a keepalive, ac yn dal i godi’r rhyngwyneb. Yr hyn y mae’n ei ollwng yw cymhwyso’r llinellau route a wthiwyd a’r llinellau dhcp-option a wthiwyd, gan gynnwys DNS.
Daw’r dryswch o ddangosydd gwyrdd wrth ymyl cymhwysiad marw. Mae’r twnnel yn bodoli; nid yw’r mapio o gyrchfannau i’r twnnel hwnnw yn bodoli. Nid oes dim ym mhanel statws y cleient yn gwahaniaethu rhwng „wedi cysylltu ac yn llwybro” a „wedi cysylltu ac yn ddiffrwyth”, oherwydd o safbwynt y twnnel mae’r ddau yr un cyflwr.
Pam na all twnnel byw lwybro dim
Mae’r rhyngwyneb yn ymddangos gyda’i gyfeiriad ei hun ac, ar ddolen bwynt-i-bwynt, yn aml nid oes dim mwy penodol na llwybr gwesteiwr at y cymar. Nid yw is-rwydwaith breifat yn dod yn gyrhaeddadwy nes bod rhyw lwybr yn pwyntio at y rhyngwyneb hwnnw gyda’r rhagddodiad cywir, ac wrth i’r gwthio gael ei analluogi nid yw’r llwybr hwnnw byth yn cyrraedd. Fel arfer ni all y proffil a lawrlwythwyd helpu chwaith, gan iddo gael ei ysgrifennu dan y dybiaeth y byddai’r gweinydd yn darparu’r union wybodaeth hon. Dyna pam y gall y rhyngwyneb edrych yn iach tra bod yr is-rwydwaith yn aros yn dywyll.
Felly nid yw darllen y proffil yn profi fawr ddim. Darllenwch y cyflwr rhedegol yn lle hynny, ar y peiriant cysylltiedig:
ip addr show tun0
ip route show dev tun0
ip route get 10.20.5.10
Cyfeiriad heb lwybr is-rwydwaith yn yr ail orchymyn yw llofnod y broblem hon. Yna mae’r trydydd gorchymyn yn ateb y cwestiwn y mae defnyddwyr yn poeni amdano mewn gwirionedd, oherwydd ei fod yn adrodd y rhyngwyneb y byddai’r cnewyllyn yn ei ddewis ar gyfer cyrchfan penodol yn hytrach na’r rhestr yr oeddech yn gobeithio y byddai’n ei defnyddio. Os yw’n ateb drwy eich dolen ffisegol, nid yw’r twnnel ar y llwybr o gwbl.
Mae datrys enwau yn methu am reswm cysylltiedig, nid un ar wahân. Mae cofnodion dhcp-option DNS a wthiwyd yn cael eu hepgor gan yr un fflag, felly mae ymholiadau am westeiwyr mewnol yn mynd i ba bynnag ddatryswr a ddarparwyd gan y rhwydwaith lleol. Nid oes gan y datryswr hwnnw barth ar gyfer y swyddfa, felly mae’r ymholiad yn methu neu’n dychwelyd ateb cyhoeddus, ac mae’r methiant yn edrych fel problem gweinydd pan fo’n broblem ffurfweddiad cleient. Profi cyfeiriad cyn enw yw’r hyn sy’n gwahanu’r ddau.
Dewis rhwng y fflag a hidlydd rhagddodiad
Mae’r ddau opsiwn yn datrys siapiau gwahanol o’r un gŵyn, a dewis gwael sy’n cynhyrchu’r cyflwr cysylltiedig-ond-diwerth. Mae un yn disodli’r polisi a wthiwyd yn gyfan gwbl, tra bod y llall yn ei olygu fesul rhagddodiad. Mae’r tabl yn rhoi’r fersiwn fer, ac mae’r paragraff ar ei ôl yn trafod y rhan sy’n dal pobl allan.
| Setting | What the client keeps | Reasonable when |
|---|---|---|
| no option | every pushed route and DHCP entry | the server's view of the network is correct |
route-nopull | the session, none of the pushed routing or DNS | you will write the full local policy yourself |
pull-filter | everything except lines matching your prefixes | the push is nearly right and one or two lines are wrong |
Mae pull-filter yn gyfatebydd rhagddodiadau â thri berf, felly gall dderbyn teulu o linellau, eu hanwybyddu’n dawel, neu wrthod y cysylltiad yn llwyr pan fydd rhagddodiad yn ymddangos. Yr ymddygiad olaf hwnnw yw’r un sy’n werth ei wybod: mae rheol wrthod yn troi anghytundeb polisi yn handshake methu yn hytrach nag yn hepgor tawel. Mae llawlyfr OpenVPN 2.6 yn rhestru’r rhagddodiadau a dderbynnir a semanteg union pob berf.
Llwybr canol cyffredin yw gwrthod redirect-gateway yn unig a gadael i lwybrau’r swyddfa a DNS gyrraedd fel y bwriadwyd. Mae hynny’n cadw’r gwthio’n gweithio ar gyfer y rhannau y mae’r gweinydd yn eu deall yn well na chi, tra’n atal yr un llinell a fyddai’n cymryd drosodd eich llwybr diofyn.
Ychwanegu llwybrau a datryswr â llaw
Os cadwch y fflag, rhaid i’r proffil ddweud yr hyn y byddai’r gweinydd wedi’i ddweud. Mae cyfarwyddebau route ar ochr y cleient yn cael eu cymhwyso ar ôl sefydlu’r cysylltiad, felly maent yn gweithio ochr yn ochr â’r fflag yn hytrach na chael eu blocio ganddo. Rhowch nhw yn y proffil, nid mewn llinell orchymyn ryngweithiol, neu ni fydd yr ailgysylltu nesaf yn atgynhyrchu’r cyflwr gweithredol.
route-nopull
route 10.20.0.0 255.255.0.0
dhcp-option DNS 10.20.0.53
Mae’r llinell DNS mewn safle annifyr: cyfarwyddyd ochr cleient yw hi, ond mae rhai cleientiaid yn ei chymhwyso dim ond drwy integreiddio DNS y platfform, a all ei throsysgrifennu pan fydd y ddolen yn newid. Ar westeiwr systemd, mae gosod y datryswr yn uniongyrchol ar ryngwyneb y twnnel yn fwy rhagweladwy na gobeithio y bydd y cleient yn ennill y gystadleuaeth flaenoriaeth:
resolvectl dns tun0 10.20.0.53
resolvectl domain tun0 ~corp.example.com
Mae’r parth llwybro yr un mor bwysig â’r cyfeiriad. Hebddi, gall ymholiadau am enwau cyhoeddus hefyd gael eu hanfon at y datryswr mewnol, a bydd unrhyw ddatryswr mewnol sy’n gwrthod ailguriad yn torri pori tra bod y parth preifat yn dal i weithio. Gyda hi, dim ond enwau o dan yr ôl-ddodiad hwnnw sy’n cael eu llwybro at ddatryswr y twnnel ac mae popeth arall yn dilyn y ddolen ffisegol.
Gwirio’r canlyniad: cyfeiriad, enw, a’r llwybr allanol
Mae tri phrawf yn gwahanu’r methiannau posibl. Caffaelwch y cyfeiriad preifat drwy IP, yna’r un gwesteiwr drwy enw, yna safle cyhoeddus cyffredin. Mae IP sy’n gweithio gydag enw sy’n methu yn pwyntio at y datryswr; mae IP sy’n methu gydag enw sy’n gweithio yn pwyntio at lwybro; mae’r ddau yn methu fel arfer yn golygu nad yw’r twnnel ar y llwybr.
Yna edrychwch allan yn hytrach nag i mewn. Rhaid i lwybr pen y twnnel ei hun oroesi’r newid, a rhaid i unrhyw flocio methiant gael ei gwmpasu i’r twnnel heb ddal y pen. Mae cleient sy’n parhau i bori ar ôl i’r twnnel ddisgyn yn broblem polisi, nid un llwybro, ac ni fydd yn ymddangos yn unrhyw un o’r tri phrawf uchod.
Ysgrifennwch y rhestr derfynol yn nogfennaeth y proffil: y llwybrau, y datryswr, y parthau, a’r rheswm dros fodoli pob un. Ailgysylltiad sy’n atgynhyrchu’r un tabl yw’r unig dystiolaeth bod y polisi lleol yn gyflawn. Os yw cymwysiadau’n dal i fethu gyda’r twnnel i fyny a’r tri phrawf i gyd yn pasio, y lle nesaf i edrych yw’r dosbarth o broblemau cysylltiedig-ond-all-lein yn hytrach na thystysgrifau sydd eisoes wedi’u dilysu.