Kahe VPN-i kasutamine ei ole üks taotlus. See võib tähendada kahe organisatsiooni järjestikust kättesaamist, töö- ja isiklike rakenduste lahus hoidmist või ühe tunneli käivitamist teise sees. Android käsitleb neid kolme juhtumit täiesti erinevalt ja telefonile paigaldatud VPN-rakenduste arv ei ole arhitektuur. Küsimus, mis neid eristab, on lihtne: kas sama rakenduse jaoks peab samal hetkel olema kaks teed?

Kolm paigutust, üks küsimus

Kui vastus on ei, sest kahte võrku kasutatakse eri aegadel, tahad teadlikku ümberlülitust. Kui vastus on ei, sest rakendused ise on eraldi, tahad profiilide eraldamist, kus iga rakendus asub kontekstis, millele kuulub tema tunnel. Kui vastus on jah ja üks tee peab teist füüsiliselt kandma, tahad ahelat, ja see on ainus kolmest, kus järjekord on osa lahendusest.

Kõik muu tuleneb sellest valikust. Ümberlülitusel on üleminekukaste, eraldamisel on poliitikapiir ja ahelal on lisakoormuse ja sõltuvuse kulu. Vale valimine ei ebaõnnestu puhtalt; see toodab telefoni, mis näib ühendatud, ja rakenduse, mis ei jõua kuhugi.

Ümberlülitamine ühe kasutajakonteksti sees

Android lubab ühe aktiivse VPN-teenuse kasutaja kohta. Teise VPN-rakenduse käivitamine samas kontekstis asendab esimese või lükatakse täielikult tagasi; see ei liida kunagi kahte marsruudikomplekti ega kuhja kindlasti nende krüpteerimist. Ühe kasutaja sees on kaks tunnelit järjestus, mitte summa.

See on teostatav, kui juurdepääs on tõesti järjestikune. Nimeta profiilid nii, et aktiivne oleks ilmne, lõpeta kõik tundlik enne ümberlülitamist ja oota lühikest akent, kus kumbki tee ei ole täielikult loodud. Brauseri vahekaardi sulgemine ei ole sama mis seansi lõpetamine: vahekaart võib hoida oma konto olekut ja lihtsalt saata järgmise päringu äsja valitud võrgu kaudu, ja täpselt see on leke, mida inimesed hiljem märkavad.

Mida ümberlülitus anda ei saa, on masin, mis on korraga mõlemas võrgus. Kui rakendus vajab privaatset aadressi kummaltki poolt, ei tooda seda ükski kliendi distsipliin.

Eraldamine profiili järgi

Hallatav tööprofiil on eraldi kasutaja oma rakenduste, võtmehoidla ja võrgupoliitikaga. Töö e-posti klient saab kasutada organisatsiooni tunnelit, samal ajal kui isiklik brauser kasutab isiklikku, ja mõlemad saavad olla korraga ühendatud, sest nad ei ole samas kontekstis koha pärast võistlemas.

Eraldamine on ühtlasi piir. Isiklik brauser ei laena töötunnelit, ei näe töö DNS-järelliiteid ega jõua töövõrku ainult sellepärast, et mõlemad teenused kuvatakse ühendatuna. Kui keegi teatab, et link ei avane, kontrolli enne kummagi VPN-i puudutamist, milline rakenduse koopia seda käsitles ja milline profiil selle konto omanik on.

Käsitle piiri fikseerituna. Teise profiili loomine või tööprofiili eemaldamine, et tööandja marsruutimisotsusest mööda minna, hävitab just selle eraldamise, mis paigutuse toimima pani, ja hallataval seadmel on see tavaliselt poliitikarikkumine, mitte konfiguratsiooni muudatus.

Ahel, kus järjekord on lahendus

Ahel on paigutus, mida inimesed tavaliselt mõtlevad, kui ütlevad mõlemad korraga: telefoni tunnel liigub ruuteri tunneli sees. See võib toimida ja piirangud on konkreetsed. Väline teenusepakkuja peab lubama toimivat teed telefoni VPN-i lõpp-punktini, mis UDP-põhiste protokollide puhul tähendab, et väline teenus ei tohi seda liiklust blokeerida ega piirata.

Mõista, kes mida näeb. Väline teenusepakkuja näeb ühendust sisemise lõpp-punkti suunas. Sisemine teenusepakkuja saab telefoni liikluse välisest väljundist ja edastab selle edasi. Lõplik sihtkoht näeb tavaliselt sisemise teenuse väljundit ja ükski teenusepakkuja ahelas ei ole pime; rakendusekontod tuvastavad kasutaja endiselt olenemata teest.

Oota praktilisi kulusid. Iga kiht lisab kapseldamist, seega efektiivne MTU langeb ja väärtus, mis oli ühe tunneliga korras, fragmenteerub või takerdub nüüd, kuni sisemise tunneli MTU seatakse konservatiivselt. Kaks kihti tähendavad ka kaht tõrkesõltuvust ja kaht hoidmisõnumite komplekti, ning TCP-põhine sisemine tunnel kadudega välislingi kohal võib takerduda viisil, mis näeb välja nagu surnud server.

Kõige tähtsam: ahel ei ühenda kaht privaatvõrku. Marsruudid, kattuvad prefiksid, DNS-i lahendamine ja juurdepääsureeglid jäävad eraldi otsusteks, ja ruuter, mis kannab üht VPN-i, samal ajal kui telefon kannab teist, ei anna telefonile mõlemat aadressiruumi.

Kontrolli lahendust enne, kui seda siluda

Kirjuta paigutus ühe lausega üles ja testi seda rakenduse vastu, mis ebaõnnestus. Järjestikune juurdepääs peaks näitama üht tunnelit korraga; profiilide eraldamine peaks näitama iga rakendust oma kasutajas; ahel peaks näitama sisemise tunneli loomist välise liidese kaudu, mitte füüsilise kaudu.

adb shell ip -br addr
adb shell ip route get 10.20.0.8
adb shell dumpsys connectivity | grep -i vpn

Kui marsruudi otsing nimetab füüsilist liidest, samal ajal kui rakendus ootab tunnelit, on lahendus ja rakenduse kontekst vastuolus, ja ükski täiendav VPN-rakendus ei lepita neid. Hallatavate profiilide dokumentatsioon katab eraldamise reeglid, kui vajad pigem poliitika kui marsruutimise üksikasju.

Seotud artiklid