Një shënim split-tunnel që thotë "trafiku i zyrës kalon përmes VPN" ka dokumentuar një vendim dhe ka nënkuptuar tre të tjerë. Në shtresën e paketave, një tabelë rrugëtimi zgjedh një ndërfaqe sipas adresës së destinacionit; në shtresën e emrave, një resolver zgjedh një server sipas kërkesës, dhe të dyja zgjedhjet bëhen në mënyrë të pavarur. Prandaj një prefiks i dokumentuar saktë mund të prodhojë ende një makinë që zgjidh një emër të brendshëm në një adresë publike, ose nuk zgjidh asgjë ndërsa rruga duket perfekte.

Dy selektorë, një përpjekje lidhjeje

Kur një aplikacion lidhet me files.corp.example, ndodhin dy kërkime përpara se të ekzistojë një paketë. Resolver-i vendos cili server merr kërkesën, duke përdorur domenet e kërkimit, domenet e rrugëtimit për çdo lidhje ose një rregull të qartë profili. Tabela e rrugëtimit vendos më pas ku shkon adresa që rezulton, duke përdorur përputhjen më të gjatë të prefiksit me destinacionin.

Asgjë nuk i lidh këto dy vendime. Një zonë private mund të përgjigjet me 10.20.4.11, ndërsa tabela e rrugëtimit dërgon 10.20.0.0/16 në tunel, dhe lidhja funksionon. Kthejeni cilindo dhe dështon në një mënyrë që duket si tjetri: politikë DNS e saktë plus një rrugë që mungon jep një emër të zgjidhur dhe një afat skadimi, ndërsa një rrugë e saktë plus një resolver publik jep një adresë që rrugëtohet pastër në vendin e gabuar.

DNS me horizont të ndarë e bën këtë më të mprehtë. I njëjti emër mund të kthejë një adresë private nga resolver-i i brendshëm dhe një adresë publike nga ai i kthyer nga interneti, kështu që një shënim që regjistron vetëm prefiksin nuk mund të parashikojë cilën adresë do të përdorë klienti në të vërtetë. Shkruani rrugën e resolver-it ose adresa është hamendje.

Çfarë lë jashtë një shënim vetëm për rrugën

Një regjistrim vetëm për rrugën është i papërdorshëm për dështimin më të zakonshëm të split-tunnel: emrat. Përdoruesi raporton se intraneti nuk ngarkohet, tuneli është lart dhe prefiksi është i pranishëm. Kush merr tiketën nuk ka regjistrim se cili resolver duhet të kishte përgjigjur, nuk ka mënyrë të dallojë një prapashtesë kërkimi të gabuar nga një server i bllokuar dhe nuk ka vijë bazë për krahasim.

Lëshimi i dytë është lista e përjashtimeve. Dizajni i split-tunnel përcaktohet njësoj nga ajo që mbetet jashtë tunelit sa nga ajo që hyn në të, dhe intervalet e përjashtuara zakonisht janë ato që thyhen të parat, sepse një rrugë lokale më specifike ose një filtër në anën e klientit mund të anulojë qëllimin pa prekur profilin.

E treta është ana e largët e tunelit. Një rrugë klienti e vendos paketën vetëm në tel; porta duhet ta përcjellë ende dhe të ketë një rrugë kthimi. Udhëzuesi i strongSwan për përcjelljen kujton se rregullat e përcjelljes dhe të murit të zjarrit në portë janë pjesë e funksionit, jo pjesë e hidraulikës që mund të supozohet.

Fushat që e bëjnë shënimin të ekzekutueshëm

Një rresht për rrjedhë, dhe rrjedha është një destinacion plus një emër plus një pronar. Këto janë fushat që i mbijetojnë kontaktit me një incident real:

FieldWhy it has to be written down
Destination prefix and address familyThe route is per family; an IPv4 note says nothing about a AAAA answer
Selected tunnel or direct pathNames the decision, not the symptom
Private namespace and resolverWhich domain, which server, which search suffix
Public name pathConfirms public names do not accidentally use the private resolver
Where the rule livesClient profile, server push, OS policy or management tool
Owner and review dateNamespaces change owner more often than routes change

Rreshti "ku jeton" është ai që njerëzit e kapërcejnë. Një prefiks i shtyrë nga serveri, një rrugë e shtuar nga një profil klienti dhe një rrugë e shkruar në një shell ndryshojnë në atë se kush mund t'i ndryshojë dhe nëse i mbijetojnë një rilidhjeje. Pa atë fushë, inxhinieri tjetër nuk mund të thotë se cilën nga të tre po shikon.

Një test për rregull, jo një për tunel

Çdo rresht kërkon dy kontrolle të padëmshme: një që ushtron rrugën dhe një që ushtron emrin. Për rrugën, kërkoni diçka që duhet të kalojë tunelin dhe konfirmoni rrugën në vend të arritshmërisë, për shembull tracert -d 10.20.4.11 në Windows ose ip route get 10.20.4.11 në Linux. Për emrin, kërkoni emrin privat dhe regjistroni cili server u përgjigj, duke përdorur resolvectl query files.corp.example ose dig files.corp.example kundrejt resolver-it që shënimi emërton.

Shtoni edhe një pritje negative: çfarë duhet të ndodhë kur tuneli është jashtë. Një aplikacion i përjashtuar në një pajisje Android ose iOS me bllokim pa VPN të aktivizuar mund të mos ketë fare lidhje, dhe një klient desktop mund të lërë të njëjtin aplikacion të punojë ndërsa tuneli rilidhet. Regjistrimi i përgjigjes së synuar e kthen "VPN më prishi aplikacionin" në një pohim të verifikueshëm.

Mbajeni regjistrimin me konfigurimin

Ruajeni shënimin pranë profilit që përshkruan dhe versionojeni me atë profil. Një dokument në një wiki që askush nuk e përditëson është thashetheme; një tabelë në të njëjtin depo me rrugët e shtyra dhe politikën e resolver-it mund të rishikohet në të njëjtin ndryshim.

Kur diçka prishet, krahasoni rrugën e aplikuar dhe resolver-in efektiv me regjistrimin përpara se të shtoni një përjashtim tjetër. Dy nga tre shkaqet e zakonshme — një rregull i vjetër i hapësirës së emrave dhe një proces ndihmës jashtë politikës së aplikacionit — duken saktësisht si një defekt VPN dhe janë të padukshme nëse shënimi liston vetëm prefikse.

Përpara se ta shpallni shënimin të përfunduar, konfirmoni se ai përgjigjet me shkrim për këto: cili prefiks, për cilën familje adresash; cila hapësirë private emrash, e përgjigjur nga cili resolver; cilët emra mbeten me qëllim publikë; ku konfigurohet çdo rregull dhe kush e zotëron; dhe komanda e vetme që provon rrugën dhe ajo që provon emrin. Nëse mungon ndonjë prej tyre, incidenti tjetër do të diagnostikohet nga e para.

Artikuj të ngjashëm