Excepție VPN pentru LAN-ul de acasă pe Android: ghid pentru un singur serviciu
Excludeți doar serviciul de acasă pe care l-ați aprobat, nu toate rutele private. Scrieți politica, folosiți un VPN care poate fi ocolit, apoi testați eșecul rețelei pentru oaspeți.
Vreți ca un serviciu de acasă să fie accesibil în timp ce VPN-ul rămâne în vigoare pentru tot restul. Setarea tentantă este o excepție de rută locală care acoperă fiecare adresă privată, iar acesta este controlul greșit: în următoarea rețea de hotel sau cafenea poate transforma în ocol orice răspunde. Acest ghid limitează excepția la un singur serviciu și o demonstrează în tranzițiile care o strică.
Definiți excepția ca serviciu, nu ca subrețea
Notați aplicația, numele de gazdă și adresa destinației, protocolul și portul, rețeaua în care este permisă și verificarea identității pe care o face serviciul însuși. Pe un NAS cu autentificare, certificatul sau contul dovedește că ați ajuns la mașina corectă. O adresă din 192.168.0.0/16 nu dovedește nimic, pentru că fiecare router de acasă distribuie aceleași prefixe.
Decideți și ce înseamnă aproape. Un serviciu pe un VLAN rutat nu este în subrețeaua conectată direct la telefon, iar un Wi-Fi pentru oaspeți poate împărți același prefix privat ca acasă și totuși să fie o mașină complet diferită. Excepția trebuie să numească serviciul și mediul, nu doar intervalul de adrese.
Verificați că controlul platformei se potrivește cerinței
Generatorul de profiluri IKEv2 din Android expune setLocalRoutesExcluded(true), iar documentația sa cere un VPN care poate fi ocolit: excepția are sens doar când clientul lasă traficul să ocolească tunelul. Aceeași documentație avertizează că rețeaua de bază poate furniza rute care afectează excepția, de aceea setarea urmează rețeaua în care intrați, nu rețeaua în care aveți încredere.
Nu este nici o promisiune că fiecare blocare sau configurație gestionată îi va permite utilizatorului să activeze aceeași excepție. Excepția de rută, marcajul de ocolire și politica de blocare a dispozitivului sunt controale separate, iar un dispozitiv gestionat poate interzice al treilea permițând primele două. Verificați profilul instalat și politica de gestionare înainte de a proiecta în jurul unei casete de bifare.
Ghid: construiți și aplicați excepția
Pasul 1: creați profilul pe calea acceptată pentru implementare, fie configurația gestionată, fie generatorul de client. Pasul 2: marcați VPN-ul ca putând fi ocolit, fiindcă excepția de rută locală nu este eficientă fără asta. Pasul 3: activați excepția de rută locală. Pasul 4: lăsați activate autentificarea serviciului însuși și validarea certificatului; excepția ține de rutare, nu de încredere. Pasul 5: salvați și reconectați pentru ca profilul să fie aplicat.
Revenirea este același drum invers: ștergeți excepția, apoi ștergeți ocolirea, apoi reconectați. Nu peticiți o rută sau un cârlig de firewall direct pe dispozitiv. Daemonul de rețea deține acele reguli, iar o regulă manuală poate rata altă familie de adrese, o reconectare sau o tranziție de rețea. Dacă configurația instalată nu poate exprima politica, păstrați blocarea mai strictă până când proprietarul aprobă alt proiect.
Testați cele patru cazuri care contează
Folosiți cereri inofensive și notați rezultatul așteptat înainte de a rula fiecare caz. Matricea de mai jos este testul de acceptare, nu o sugestie: dacă vreun caz interzis reușește, excepția este mai largă decât politica.
| Case | Network | Destination | Expected |
|---|---|---|---|
| 1. Approved service | Home Wi-Fi | The NAS | Reachable and authenticated |
| 2. Other local device | Home Wi-Fi | A printer | Denied by VPN policy |
| 3. Same private prefix | Hotel or cafe Wi-Fi | 192.168.1.10 | Denied |
| 4. Transition | VPN drop, Wi-Fi to cellular | The NAS | No silent direct path |
Cazul 3 este cel care prinde o ocolire largă a subrețelei private, iar cazul 4 prinde un client care a aplicat excepția doar la conectare. Rulați cazul 4 cu VPN-ul deconectat și cu telefonul mutat pe rețeaua mobilă, apoi reconectați și confirmați că excepția revine fără repornire. Referința API a rutei locale indică cerința de ocolire care face pasul 2 obligatoriu.
Înregistrați excepția și revizuiți-o
Registrul întreținut trebuie să numească serviciul, mediul care l-a justificat, proprietarul și data. Local descrie o relație de rutare, nu un nivel de încredere, iar următoarea rețea în care intră telefonul nu este rețeaua în care a fost aprobată excepția.
Revizuiți registrul după o actualizare de sistem, o actualizare de client sau o mutare. Rulați din nou cazul 3 la fiecare reînnoire a excepției, pentru că un profil care a limitat cândva ocolirea la un serviciu poate fi extins cu o singură modificare implicită.