Cén fáth a dtaispeánann resolv.conf DNS do VPN ach go ndéanann cuardaigh neamhaird de
Ar óstach le resolved is amharc é an comhad, ní an staid. Lean an stub, na freastalaithe in aghaidh an naisc agus an líne nsswitch le feiceáil cé acu a úsáideann cuardach i ndáiríre.
Ní fheictear aon rud mícheart sna logaí: tá an chomhéadan suas, tuairiscíonn an réiteoir freastalaí DNS an VPN, agus liostaíonn an comhad ar an diosca é. Mar sin féin réitítear ainm óstaigh inmheánach tríd an ródaire áitiúil i gcónaí. Níl na trí ráiteas ag teacht salach ar a chéile, mar is rudaí éagsúla iad an comhad, an staid in aghaidh an naisc agus cosán an chuardaigh a roinneann ainm trí chomhtharlú. Seo a leanas an cosán a thógann iarratas i ndáiríre ar óstach le systemd-resolved.
Trí rud ar a dtugtar resolv.conf
Ar óstach le resolved is nasc siombalach chuig /run/systemd/resolve/stub-resolv.conf é /etc/resolv.conf de ghnáth. Coinníonn an sprioc sin seoladh éisteora stub áitiúil, 127.0.0.53, móide na fearainn chuardaigh a ríomh resolved. Is amharc ar an staid é, ní an staid féin.
Maíonn an staid i gcumraíocht resolved in aghaidh an naisc, agus is ar an ábhar sin gur féidir le resolvectl status easaontú leis an gcomhad agus a bheith ceart fós. Iompraíonn gach nasc a fhreastalaithe féin agus a fhearainn ródaithe féin, agus téann an stub i gcomhairle leis na sonraí sin nuair a thagann iarratas isteach. Déanann lámhleabhar systemd-resolved cur síos ar na comhaid ghinte agus ar an tsamhail in aghaidh an naisc; is é an scaradh idir amharc agus staid an chuid is fiú a choinneáil i gcuimhne. Athraíonn athrú sprioc an naisc shiombalaigh an rud a léann cliaint thraidisiúnta, ní an rud atá ar eolas ag an réiteoir.
Déanann tríú rud, /run/systemd/resolve/resolv.conf, gach nasc a leathadh in aon liosta freastalaithe amháin. Seolann clár atá dírithe ar an gcomhad sin iarratais go díreach chuig na freastalaithe atá liostaithe agus scipeálann sé an stub, mar sin ní bhaineann an polasaí in aghaidh an naisc leis a thuilleadh. Mar sin is féidir le dhá chlár ar an meaisín céanna freagraí éagsúla a thabhairt ar an ainm céanna, agus níl ceachtar acu briste.
Lean cuardach amháin trí NSS
Léann glibc /etc/nsswitch.conf le cinneadh cé a fhreagraíonn ainm. Seolann líne hosts ina bhfuil resolve an cheist chuig nss-resolve, a fhiafraíonn de resolved thar D-Bus agus a fhaigheann an freagra in aghaidh an naisc. Seolann líne nach bhfuil inti ach files dns an t-iarratas chuig cibé seoladh atá ag /etc/resolv.conf.
Míníonn an aon líne sin an chuid is mó de na heasaontuithe idir brabhsálaí agus dig. Léann dig resolv.conf go díreach agus ní théann sé i dteagmháil le NSS riamh, mar sin tástálann sé an stub nó freastalaí inlíne in ionad an chosáin a úsáideann an feidhmchlár. Téann getent hosts internal.example trí NSS, agus is é comparáid a fhreagra le freagra dig an chéad tomhas úsáideach.
Seachnaíonn feidhmchláir a ionchorpraíonn a réiteoir féin, nó a labhraíonn DNS thar HTTPS le críochphointe seasta, an dá chosán. Ní chuireann aon rud in resolv.conf ná i staid resolved srian orthu.
Seiceáil cé leis an comhad agus cá dtagann sé
Léigh an slabhra nasc sula n-athraíonn tú aon rud, mar is é an úinéireacht a shocraíonn cé acu comhad atá údarásach. Ní dhéanann gach ordú thíos ach staid a léamh.
stat -c '%N' /etc/resolv.conf
resolvectl status --no-pager
grep '^hosts' /etc/nsswitch.conf
ls -l /run/systemd/resolve/
Priontálann an chéad líne an nasc agus a sprioc le chéile, agus ciallaíonn gnáthchomhad atá faoi úinéireacht script VPN nach gcaitheann an réiteoir leis an scríbhinn sin mar ionchur riamh. Liostaíonn aschur an staidis freastalaithe in aghaidh an naisc móide na fearainn ródaithe a shocraíonn cá dtéann gach iarratas. Deir an líne nsswitch an dtéitear i gcomhairle leis an stub ar chor ar bith, mar sin ciallaíonn seoladh stub sa chomhad gan resolve ann go sroicheann iarratais an t-éisteoir áitiúil agus nach bhfuil aon rud ag bainistiú an scartha. Tá tábhacht leis an liosta deireanach sin freisin, mar ní ritheann óstach gan stub-resolv.conf an socrú a thuairiscítear anseo.
Má chríochnaíonn an slabhra ag comhad a bhainistíonn pacáiste eile, is iad cliant VPN agus an pacáiste sin an dá úinéir atá le réiteach. Cuireann athsholáthar an naisc obair úinéir amháin amú agus fágann obair an chinn eile ina háit.
Deisigh ag úinéir an naisc
Ba cheart do nasc VPN a fhreastalaithe agus a fhearainn a chlárú ar a nasc féin, agus iad a tharraingt siar ansin agus é ag dínascadh. Oibríonn comhtháthú resolved NetworkManager agus cúntóir cliaint féin araon mar sin; ní oibríonn script nach ndéanann ach resolv.conf a athscríobh.
Ar nasc atá ann cheana féin, taispeánann na socruithe am rite an mheicníocht. Ceanglaíonn resolvectl dns tun0 10.40.0.53 freastalaí, agus ceanglaíonn resolvectl domain tun0 '~corp.example' fearann ródaithe. Is é an tilde an carachtar iompair: cuibhríonn sé iarratais don iarmhír sin leis an nasc seo agus fágann sé gach rud eile ina thost, agus an luach céanna gan é déantar fearann cuardaigh de agus galóidh an scaradh. Is samplaí saotharlainne iad na seoltaí sin, ní cumraíocht bhuan. Deimhnigh le resolvectl query host.corp.example agus léigh cé acu nasc a d'fhreagair.
Teastaíonn bealach ó fhreastalaí cláraithe fós. Nuair a shroicheann an t-iarratas an nasc ceart agus a théann sé thar am, tá an locht in inrochtaineacht tríd an tollán seachas in úinéireacht an réiteora.
Cad é an chuma atá ar staid oibre
Tá toradh sláintiúil comhsheasmhach sna trí amharc: tagann na freastalaithe in aghaidh an naisc leis an méid a dháil an VPN, ní chlúdaíonn na fearainn ródaithe ach iarmhíreanna inmheánacha, agus réitíonn an feidhmchlár tábhachtach ainm inmheánach agus leanann ainm poiblí an cosán áitiúil fós. Cruthaíonn aon iarratas rathúil níos lú ná an chomhaontú sin.
Ansin dínasc agus déan an dá iarratas a athdhéanamh. Cruthaíonn cliant a fhágann a fhearainn cláraithe tar éis an teiridh meaisín a theipeann ar chuardaigh inmheánacha uaireanta an chloig níos déanaí, gan tollán oscailte agus gan chúis fhollasach.