Përjashtimi i një pakete është udhëzim rrugëtimi, jo bllokim, prandaj faqet që ngarkohen pas lidhjes së VPN janë të pritshme dhe jo provë e një dështimi. Përjashtimi e nxjerr aplikacionin nga tuneli në vend që ta bllokojë, dhe rrjeti i zakonshëm mbart trafikun e tij. Këtu takohen dy politika të ndara: njëra zgjedh proceset, tjetra zgjedh destinacionet. Leximi i tyre në atë rend shpjegon pse një ikonë e lidhur dhe një aplikacion që punon nuk janë kontradiktë.

Pse përjashtimi e mban rrjetin të hapur

VpnService.Builder pranon ose një listë lejesh ose një listë ndalimesh, kurrë të dyja. Vetëm paketat në një listë lejesh rrugëtohen përmes tunelit. Një listë ndalimesh e kthen mbrapsht: çdo paketë përveç atyre të listuara përdor tunelin, dhe ato të listuara mbajnë rrugën fizike. Një paketë e palistuar nën një listë lejesh është gjithashtu jashtë tunelit, prandaj përjashtimi është gjendja normale për shumicën e aplikacioneve në atë regjim.

Kjo e bën një zë lokal ndalimi vendim rrugëtimi, jo rregull firevali. Nëse kërkesa është të pengohet një aplikacion të arrijë një host, tuneli duhet ta mbulojë dhe serveri ose një politikë lokale duhet ta refuzojë trafikun. Heqja e një aplikacioni nga tuneli ndryshon vetëm cilën ndërfaqe mbart paketat e tij.

Rasti i Play Store është shembulli i zakonshëm i qëllimshëm. Përjashtimi i paketës së dyqanit i lejon shkarkimet të përdorin lidhjen bazë kur dalja e VPN ndërhyn në transferime, dhe tregon se përjashtimi nënkupton anashkalim, jo bllokim.

Një profil, një listë

Ndërtuesi hedh një përjashtim nëse përdoren të dy thirrjet, prandaj profili përpara jush është ose listë lejesh ose listë ndalimesh. Ky fakt i vetëm përcakton si të lexohet çdo vëzhgim i mëvonshëm. Kontrolloni kodin ose konfigurimin e menaxhuar përpara tabelës së rrugëtimit, sepse lista vendos çfarë do të thotë pjesa tjetër e daljes. Një profil hibrid nuk është gjendje që mund të shihet.

Dallimi parashikon gjithashtu çfarë do të bëjë një aplikacion i instaluar së fundmi. Nën një listë lejesh qëndron jashtë derisa dikush ta shtojë, ndërsa nën një listë ndalimesh i bashkohet tunelit si parazgjedhje.

Konfigurimet e menaxhuara ofrojnë të njëjtën zgjedhje nën emra të ndryshëm çelësash, dhe disa konsola e përshkruajnë si regjim VPN për çdo aplikacion dhe jo si listë. Sjellja gjithsesi reduktohet në ato dy thirrje, prandaj gjurmoni cilësimin prapa deri në listën e paketave në vend që të besoni etiketën. Nëse etiketa dhe lista nuk përputhen, fiton lista.

Ndiqni rregullin UID deri në tabelën e tunelit

Android i jep çdo aplikacioni identifikuesin e vet të përdoruesit Linux, dhe shërbimi VPN instalon rregulla politike që përputhen me intervalet UID. Trafiku që përputhet dërgohet në një tabelë rrugëtimi rruga e parazgjedhur e së cilës tregon pajisjen tun. Numri i tabelës ndahet për çdo instancë VPN, prandaj ndryshon pas një rilidhjeje ose pas krijimit të një profili të dytë VPN.

Dalja e rregullave është harta. Çdo rresht emërton një tabelë kërkimi, dhe ajo tabelë mban rrugën e parazgjedhur që vendos nëse paketat që përputhen hyjnë në tunel.

adb shell ip rule show
adb shell ip route show table all
adb shell cmd package list packages -U | grep <package>

Ekzekutoni së pari komandën e tretë për të marrë UID-në, pastaj gjeni rregullin intervali i të cilit e përmban atë. Ai rregull tregon një numër tabele, dhe ip route show table <n> me atë numër shfaqet nëse ekziston një rrugë e parazgjedhur përmes pajisjes tun. Nëse tabela nuk ka një të parazgjedhur, aplikacioni është zgjedhur por nuk ka rrugë, që është një dështim tjetër.

Këto komanda kërkojnë një ndërtim të korrigjueshëm ose një pajisje ku adb shell mund të lexojë gjendjen e rrjetit. Në një telefon prodhimi menaxheri i paketave ende përgjigjet, por inspektimi i rrugëtimit mund të refuzohet, prandaj regjistroni çfarë mundeni dhe trajtoni pjesën tjetër si të paverifikuar.

Një rrugë kërkon një parashtesë, jo një aplikacion

Builder.addRoute kërkon parashtesa destinacioni për tunelin. Një profil që shton vetëm 10.0.0.0/8 e dërgon atë parashtesë përmes tunelit dhe lë çdo destinacion tjetër në rrugën fizike. Kjo është tunelizim i ndarë i zakonshëm, dhe është i pavarur nga aplikacionet që zgjodhën rregullat.

Konfigurimi i shtyrë nga serveri pasqyron të njëjtin model. Shtytjet individuale të rrugëve shtojnë parashtesa, ndërsa një direktivë redirect-gateway zëvendëson rrugën e parazgjedhur dhe kap gjithçka për aplikacionet që mbulon tuneli. Heqja e asaj direktive mund të tkurrë një tunel funksional në një nënrrjet të vetëm pa asnjë ndryshim në pajisje.

Një rrugë e shtyrë me një portë ose kualifikues metrikë të pazakontë mund gjithashtu të dështojë të instalohet. Preferoni formën e thjeshtë të parashtesës dhe lëreni serverin të merret me përcjelljen dhe NAT.

Lexoni kryqëzimin përpara se të ndryshoni një cilësim

Tuneli mbart kryqëzimin e proceseve të mbuluara dhe destinacioneve të kërkuara. Një aplikacion i mbuluar që kërkon një adresë jashtë parashtesave të publikuara del përmes rrjetit fizik. Një paketë e ndaluar qëndron jashtë edhe kur kërkon një adresë brenda atyre parashtesave. Asnjë rast nuk është gabim; të dyja janë dy politikat që bëjnë punën e tyre.

Një VPN për çdo aplikacion mund të lërë gjithashtu një aplikacion të lidhur pa lidhshmëri. Kur on-demand është i fikur dhe tuneli është poshtë, aplikacioni mbetet i lidhur me VPN-në për çdo aplikacion dhe nuk ka alternativë, gjë që duket si aplikacion i prishur dhe jo si gjendje politike. Aktivizimi i on-demand, ose heqja e lidhjes përmes menaxhimit, e ndryshon atë.

LayerWhat it selectsWhere to lookTypical mismatch
Package listProcessesBuilder calls or managed configurationApp excluded but expected to be blocked
UID policy ruleWhich table a UID usesip rule showTunnel icon on, app still on Wi-Fi
Routing tableDestinations for matched trafficip route show table <n>Covered app reaches only one subnet
Server pushPrefixes offered to the clientServer route configurationTunnel shrinks after a server edit

Diagnostikoni një aks në një herë. Konfirmoni lejen ose ndalimin së pari, lexoni rregullat UID dhe tabelat e instaluara së dyti, dhe provoni një aplikacion të dytë ndaj të njëjtit destinacion në fund. Aplikacioni i dytë ndan zgjedhjen e procesit nga zgjedhja e destinacionit në një kërkesë të vetme.

Shkruani rezultatin si aplikacion, destinacion dhe numër tabele. Pikërisht ky treshe është ajo që duhet të ruajë ndryshimi i ardhshëm.

Artikuj të ngjashëm