Tabelat e rrugëtimit lexohen si të prishura sa herë që kolona e portës mbetet bosh, ndërsa rreshti zakonisht është i plotë në vetvete. Fusha via shfaqet vetëm kur kerneli ia dorëzon paketën një adrese të hapit tjetër; një rrugë e lidhur me një ndërfaqe i arrin destinacionet e saj në vend të kësaj përmes zgjidhjes në shtresën e lidhjes ose përmes një partneri pikë-pikë. Leximi i kolonave nga e majta në të djathtë të tregon në cilin rast je, dhe ai lexim duhet të ndodhë përpara se dikush të modifikojë një rrugë të parazgjedhur. Shumica e tiketave për një portë që mungon mbarojnë pikërisht në këtë dallim.

Lexo një rresht rruge kolonë pas kolone

Çdo hyrje hapet me destinacionin dhe gjatësinë e prefiksit të tij, më pas shton modifikues në një fjalorth të caktuar: via, dev, proto, scope, src dhe metric. Një rresht si 198.51.100.0/24 dev tun0 proto kernel scope link src 198.51.100.2 është i dendur, por plotësisht i specifikuar. Asgjë nuk i mungon dhe nuk nënkuptohet asnjë adresë ruteri.

Pjesa interesante është mungesa e via. Pa një hap tjetër, kerneli e zgjidh destinacionin drejtpërdrejt në ndërfaqen e emërtuar, që për një tunel do të thotë dorëzim i kornizës pajisjes së tunelit dhe lënia e enkapsulimit ta marrë prej andej. proto kernel regjistron që hyrja u instalua automatikisht kur u caktua një adresë, jo e shtypur nga një administrator. scope link thotë që destinacioni është i arritshëm në atë lidhje pa kaluar nëpër një ruter, dhe src emërton adresën që kerneli do të preferojë si burim për trafikun që përputhet.

Tani lexo një rrugë të parazgjedhur në të njëjtën mënyrë: default via 192.0.2.254 dev eth0 proto static metric 100. Këtu via është i pranishëm sepse paketa ka vërtet nevojë për një hap tjetër, dhe ai hap duhet të jetë vetë i arritshëm në eth0. Të dy rreshtat nuk janë variante të njëri-tjetrit; ata përgjigjen pyetjeve të ndryshme rreth asaj se ku shkon trafiku.

Dy forma rrugësh që ngatërrohen me njëra-tjetrën

Një rrugë e nënrrjetit të tunelit dhe një rrugë e parazgjedhur duken të ngjashme në një pamje ekrani dhe sillen krejt ndryshe. Përdor tabelën më poshtë si ndihmë leximi për fushat, më pas konfirmo numrat realë në makinën që po korrigjon, në vend që t'i besosh një shembulli nga një udhëzues.

Piece of the lineWhat it settlesWhat it says nothing about
The destination and maskWhich packets are eligible to matchWhere those packets leave the host
via plus its addressWhich next hop receives them, and therefore that a router is involvedWhether that router is reachable or sane
devWhich interface carries the encapsulated or raw packetWhether the interface is up or has a carrier
proto and scopeWho installed the entry and how far the destination is considered to beWhether a firewall later drops the traffic

Ajo që tabela nuk mund të të thotë është qëllimi. Një rrugë e drejtpërdrejtë drejt një diapazoni privat përmes një tuneli është një projektim i qëllimshëm i tunelit të ndarë; e njëjta formë që shfaqet në një strehues që do të duhej të dërgonte gjithçka përmes VPN është një simptomë. Qëllimi jeton në konfigurimin që krijoi hyrjen, prandaj shiko mjetin që e instalo, përpara se të përfundosh se kerneli bëri diçka gabim.

Po ashtu, një portë që mungon nuk është leje për të sajuar një. Nëse një rrugë ka vërtet nevojë për një hap tjetër, ai hap duhet të jetë i arritshëm në ndërfaqen që e mbart, dhe për një tunel pikë-pikë adresa e partnerit nuk është i njëjti objekt si adresa lokale. Trajtimi i adresës lokale të tunelit si një ruter Ethernet është një mënyrë e zakonshme për të prodhuar një rrugë që duket e saktë dhe nuk përcjell asgjë.

Pyet kernelin se cilin rresht do të përdorë vërtet

Leximi i tabelës nuk është i njëjtë me kryerjen e kërkimit, sepse kerneli konsulton rregulla politike, disa tabela dhe hyrje të ruajtura në memorje përpara se të përgjigjet. Folja që kryen kërkimin e vërtetë është ip route get, dhe ajo printon rrugën që do të merrte një paketë me ato veti.

ip route get 203.0.113.37 from 198.51.100.2 iif tun0

Zëvendëso destinacionin që të intereson vërtet, më pas shto from ose iif kur trafiku zgjidhet sipas burimit ose përcillet, sepse një kërkim lokal i zakonshëm mund të zgjedhë një shteg tjetër nga ai i një klienti të përcjellë. Përgjigja emërton ndërfaqen, adresën e burimit të zgjedhur dhe çdo hap tjetër, që është i njëjti informacion me të cilin një paketë do të rrugëtohej në atë moment.

Nëse përgjigja të habit, printo rregullat përpara se të ndryshosh gjë: ip -4 rule show i liston ato sipas rendit të përparësisë, dhe një klient VPN që instalon tabelën e vet ose një rregull për paketat e shënuara nuk do të shfaqet fare në tabelën kryesore. Listimi i çdo tabele e mbyll atë boshllëk.

ip -4 route show table all | grep -E 'tun|default'

Kontrollo shtresën e poshtme përpara se të zëvendësosh rrugën e parazgjedhur

Paketat e tunelit vetë duhet të arrijnë pikën fundore të largët, dhe e bëjnë këtë përmes ndërfaqes fizike duke përdorur rrugën që ekzistonte përpara se VPN të ngrihej. Zëvendësimi i të gjithë rrugës së parazgjedhur pa fiksuar atë pikë fundore i dërgon paketat e enkapsuluara në tunelin që supozohet të ndërtojnë, dhe lidhja rrëzohet. Konfirmo së pari shtegun drejt pikës fundore me një kërkim vetëm për adresën e saj.

Mbaj tre gjëra të ndara kur bën ndryshimin: rrugën drejt pikës fundore që duhet të mbetet në ndërfaqen fizike, diapazonet private që duhet të hyjnë në tunel, dhe të parazgjedhurën që vendos për gjithçka tjetër. Ndaji ato në atë rend, zbato një nga një dhe ekzekuto përsëri kërkimin pas çdo hapi. Një ping i dështuar më pas provon shumë pak në vetvete, pasi lejet, rrugëtimi i përgjigjeve, DNS dhe vetë shërbimi ndodhen të gjitha në rrjedhën e poshtme të një rruge të saktë.

Shkruaj katër vlerat që të dha rreshti përpara redaktimit: destinacioni, hapi tjetër ose mungesa e tij, pajisja dhe burimi i zgjedhur. Nëse një ndryshim i mëvonshëm lëviz ndonjë prej tyre, e di se cili vendim u ndryshua vërtet, dhe mund të rivendosësh një hyrje në vend që të hamendësosh të gjithë tabelën.

Artikuj të ngjashëm