Ang profile na may dalawang daang ruta ay gumagana sa isang makina at naglalagay ng apatnapu sa iba. Ang engine, ang integrasyong nagpapatakbo nito at ang server na nagpapakain dito ay may kani-kaniyang boses, at bawat isa ay maaaring pahintuin ang listahan sa magkaibang punto. Ang pagbasa sa kabiguan bilang isang limitasyon lamang ay magdadala sa iyo sa maling file. Tatlong yugto ang mekanismo, at ang yugtong huminto ay nag-iiwan ng nakikitang ebidensiya kapag alam mo kung ano ang hahanapin.

Tatlong yugto, tatlong magkaibang limitasyon

Una, sinusuri ng engine ang opsyon at nagpapasya kung naiintindihan ito ng bersyong ito. Pagkatapos, ini-install ng integrasyon ang iniuulat ng engine, at maaaring limitahan o baguhin ng sarili nitong code ang listahan. Sa huli, nagpapasya ang server kung ilang ruta ang ipapadala nito sa isang partikular na pagkakakilanlan, bago pa may makita ang anumang yugto ng kliyente. Tatlong yugto, tatlong kisame, at isa lamang sa kanila ang bilang sa profile.

Ang pagtaas ng isang kisame ay walang ginagawa para sa iba. Ang tinanggihang ipinadalang ruta ay maaaring desisyon sa patakaran sa server, isang overlap na nalutas ng kliyente, o limitasyon ng installer na nagtapon ng sobra. Bawat isa sa mga ito ay may ibang pagwawasto.

Paghiwalayin ang tatlo bago magsukat ng anuman. Ang error ng parser ay nagpangalan ng token, ang limitasyon ng installer ay nag-iiwan ng maikling talahanayan ng ruta, at ang desisyon sa patakaran ay walang iniiwan. Sinasabi ng ebidensiya kung aling yugto ang unang inspeksiyunin.

StageWho decidesWhat you can see
ParseClient engineAn error naming the option
InstallActivation ownerA route count below the pushed count
OfferServer policyA route absent from the pushed list

Ang parser ang unang nagsasalita

Ang hindi kilalang opsyon ay nabigo nang malakas at maaga, at pinangalanan ng teksto ng error ang token. Iyon ang pinakamadaling kilalanin na yugto: ihambing ang eksaktong mensahe sa naka-install na bersyon ng engine, dahil ang opsyong idinagdag sa isang release ay hindi kilala sa nauna. Ang profile na kinopya mula sa mas bagong deployment ay ang karaniwang pinagmulan ng pagkakaibang iyon. Hindi kailanman binabalewala ng parser nang tahimik ang isang direktibang hindi nito kinikilala.

Ang tinanggap na opsyon ay walang sinasabi tungkol sa resulta. Nagtagumpay ang pag-parse, at maaari pa ring putulin ng installer ang listahan o kailanman ay hindi ialok ng server. Ituring ang malinis na pag-parse bilang pahintulot na magpatuloy, hindi bilang patunay.

Itala ang string ng bersyon mula sa binary na talagang tumakbo, hindi mula sa ideya ng package manager tungkol sa kung ano ang naka-install. Ang dalawang iyon ay hindi nagkakasundo nang mas madalas kaysa inaasahan.

May sariling kisame ang installer

Ang bahaging may-ari ng activation ay maaaring NetworkManager plugin sa halip na binary ng engine, at maaari nitong ipataw ang sarili nitong limitasyon bago pa umiral ang anumang tunnel. Ang editor nito ay maaaring magpakita ng field na hindi kailanman binabasa ng tumatakbong engine, o magbasa ng field na hindi ipinapakita ng editor. Ang dalawang sitwasyon ay mukhang bug ng kliyente mula sa labas. Wala sa kanila ang naaayos sa pamamagitan ng pag-edit ng profile.

Bilangin ang dumating sa halip na ang na-configure. Ang utos na ip route show dev tun0 ay naglilista ng mga naka-install na ruta, at ang paghahambing ng bilang na iyon sa ipinadalang listahan ay naghihiwalay ng itinapong ruta mula sa isang hindi kailanman ipinadala. Ang bilang na tumutugma sa pagpapadala ay nagbabalik ng hinala sa server.

Ang shell wrapper sa paligid ng binary ng engine upang pilitin ang mas malaking bilang ay nagpapalabo sa mga upgrade at ginagawang hula ang pag-rollback. Itinatago rin nito ang tunay na limitasyon sa sinumang magbabasa ng configuration sa susunod.

Ang server ang nagpapasya kung ano ang inialok sa iyo

Ang patakaran sa bawat kliyente ay maaaring magpaliit ng listahan bago ito ipadala. Ang file na partikular sa kliyente ay maaaring magdagdag ng ruta para sa isang pagkakakilanlan, o maaaring alisin ang mga iyon ng patakaran ng grupo, at hindi kayang ipagkaiba ng kliyente ang nasala na ruta mula sa isang hindi kailanman tinukoy. Ang malabong iyon ang dahilan kung bakit mahalaga ang rekord ng server. Hilingin ang aktwal na listahan ng pagpapadala para sa pagkakakilanlang iyon, hindi ang template.

Ihambing ang rekord ng server sa natanggap na listahan. Ang agwat ng dalawa ang patakaran layer, at karaniwang mas maliit ito kaysa ipinahihiwatig ng profile.

Kapag pinapayagan ng disenyo, pagsamahin ang magkadikit na network at tanggalin ang mga lipas na entry. Ang mas kaunti ngunit mas malalaking ruta ay lumulutas ng mas maraming kaso kaysa sa mas mataas na kisame.

Palitan ang bilang sa tamang lugar

Gamitin ang dokumentadong setting ng bahaging tunay na may-ari ng limitasyon. Kung wala ang field sa plugin, tingnan kung mas matanda ang plugin kaysa sa feature o kung may ibang background na may-ari ng mga ruta. Pagkatapos, idokumento ang mga bersyon ng engine, plugin at server sa tabi ng value na pinili mo. Binubuksan muli ng susunod na upgrade ang tanong, at ang tala ang nagpapaging masasagot ito.

Subukang muli pagkatapos ng anumang upgrade ng alinman sa tatlo. Ang limitasyong itinaas sa tamang lugar ay gumagalaw pa rin kapag nagbago ang bahaging nagpapatupad nito. Ang rekord ng bersyon ang tanging bagay na nagpapaging mahulaan ang paggalaw na iyon.

Kaugnay na mga artikulo