Staqsi app tal-iOS jekk it-telefon huwiex fuq VPN, u t-tweġiba onesta hi li ma tistax tkun taf kif qed taħseb int. L-SDK ma jurix bandiera għal «it-tagħmir jinsab f'tunnel», u l-interfaċċi privati li jistgħu joqorbu lejn dan huma magħluqa għall-apps li jiġu ppubblikati. Tista' tosserva l-konfigurazzjoni tal-app tiegħek stess, l-istat marbut magħha, u wieħed jew tnejn indikazzjonijiet indiretti mill-munzell tan-netwerk. Kull wieħed iwieġeb mistoqsija differenti, u l-biċċa l-kbira tal-verifiki miksura jiġu milli wieħed minnhom jittieħed bħala t-tweġiba kollha.

Il-mit tal-bandiera waħda tal-VPN

It-twemmin hu li x'imkien fl-SDK hemm propjetà li tirrapporta jekk it-tagħmir huwiex f'tunnel, kif bandiera tal-aċċessibilità tirrapporta jekk host iwieġibx. Propjetà pubblika bħal din ma teżistix. U anke kieku teżisti, «hemm tunnel» u «it-traffiku tiegħi jużah» huma affermazzjonijiet differenti, u għall-biċċa l-kbira tal-apps tgħodd biss it-tieni waħda.

Dan id-distakk huwa r-raġuni għaliex il-libreriji li jirreklamaw ditekter tal-VPN f'linja waħda normalment jaqraw xi ħaġa fraġli, bħal isem ta' interfaċċa jew ċavetta tal-proxy, u jippreżentawha bħala sentenza.

Tagħbija l-preferenzi qabel ma tafda f'nil

L-istanza kondiviża tal-maniġer teżisti malli titlobha, iżda l-propjetà tal-protokoll tagħha tibqa' nil sakemm jitlesta l-callback tat-tagħbija. Għalhekk protokoll nil ifisser «għadu mhux mgħobbi» mill-inqas daqskemm ifisser «mhux installat». Agħmel il-qari fil-blokk tat-tlestija, u biss wara tiddeċiedi: oġġett tal-protokoll li jeżisti, bil-bandiera tal-attivazzjoni mixgħula, hekk jidher «installat».

It-tieni sinjal jinsab fuq l-oġġett tal-konnessjoni: l-istat invalidu, li s-sistema tirrapporta meta din l-app ma jkollhiex konfigurazzjoni installata. Stat invalidu flimkien ma' protokoll nil wara tagħbija kompluta hija assenza vera, mhux tellieqa taż-żmien.

Il-bidliet fil-konnessjoni jiġu bħala notifiki

Il-handlers li jingħataw lil load u save jirrapportaw x'ġara lill-konfigurazzjoni, mhux x'inhu jagħmel it-tunnel. Li tistenna li wieħed minnhom jaqbad fil-mument tal-konnessjoni hija tellieqa li qatt ma tissolva. Minflok, osserva n-notifika tal-bidla fl-istat, u aqra l-valur attwali tal-oġġett tal-konnessjoni meta tasal.

Ladarba konfigurazzjoni tkun installata, l-istat tal-konnessjoni jgħaddi minn sekwenza qasira: skonness, qed jikkonnettja, konness, jerġa' jikkonferma, qed jiskonnettja. «Konness» jiddeskrivi t-tunnel u mhux is-server warajh, għalhekk mhuwiex prova li t-traffiku qed joħroġ. On-demand jista' wkoll iqajjem tunnel waqt li l-app tkun sospiża, u mbagħad in-notifika tasal qabel ma jkollok xi taġġorna.

Is-snapshot tal-proxy b'ambitu limitat huwa ħjiel, mhux sentenza

CFNetwork jista' jagħti lill-app is-settings tal-proxy attwali tas-sistema, u ġewwa dan ir-riżultat hemm dizzjunarju b'ambitu limitat b'ċavetta skont l-isem tal-interfaċċa. Li tara isem li jibda b'tun, utun, ppp, ipsec jew tap huwa ħjiel li hemm tunnel. Jibqa' snapshot ta' dak li din l-app tista' tara, mhux dikjarazzjoni dwar fejn jivvjaġġaw il-pakketti.

Il-fornituri ma jaqblux dwar l-ismijiet, għalhekk prefiss nieqes ma jipprova xejn, u interfaċċa preżenti tista' teżisti mingħajr ma ġġorr traffiku. L-aċċessibilità hija saħansitra aktar dgħajfa: talba li tirnexxi lejn indirizz privat turi li t-triq ħadmet għal dik it-talba f'dak il-mument, mhux li VPN huwa installat.

Is-simulatur jissellef il-Mac, u apps oħra jibqgħu inviżibbli

Is-simulatur m'għandux munzell tan-netwerk tiegħu stess; kull konnessjoni li jagħmel hija tal-Mac. Għalhekk VPN li qed jaħdem fuq il-Mac ospitanti diġà huwa fis-seħħ għall-app simulata, u s-settings tas-simulatur innifsu ma jurux xejn. Jekk it-tunnel tela' wara li beda s-simulatur, li terġa' tibdih normalment jgħaġġel aktar milli tiddebġja l-app. Ospitanti fuq port mhux standard jeħtieġ dak il-port fl-URL, jew ridirezzjoni lokali bħal socat TCP-LISTEN:12345,fork TCP:host:12345.

L-API pubbliċi mhux se jelenkaw profili tal-VPN li jappartjenu lil apps oħra jew lil profili tal-konfigurazzjoni. Għal app waħda magħrufa, it-test tal-iskema tal-URL permezz ta' canOpenURL huwa l-trick portabbli, u mill-iOS 9 l-iskema mistoqsiija trid tiġi ddikjarata fl-Info.plist tiegħek; jekk tħalliha barra, is-sejħa tirritorna false. OpenVPN Connect iwieġeb fuq openvpn://, li jagħmilha eżempju tajjeb u ditekter ġenerali ħażin.

Għaqqad tliet osservazzjonijiet u għid x'ifissru

Fil-prattika ġemma' tliet riżultati: konfigurazzjoni li tgħabbiet u hija attivata, stat tal-konnessjoni li mhuwiex invalidu, u talba lejn indirizz li jista' jintlaħaq biss mit-tunnel. Kull wieħed iqarraq waħdu; flimkien jgħidu dak li l-app tista' tkun taf u mhux dak li l-utent jassumi.

Ikteb ir-riżultat bħala tliet linji fid-dijanjostika tiegħek, mhux boolean wieħed. Meta utent jgħid li l-VPN huwa mitfi filwaqt li l-app tiegħek ma taqbilx, it-tliet linji juru liema osservazzjoni ddevjat, u din hija d-differenza bejn ticket ta' appoġġ li tista' taġixxi fuqu u wieħed li jispiċċa b'«għandi jaħdem».

Artikli relatati