iPhonea VPN batean al dago? iOS aplikazio batek benetan zer ikus dezakeen
Ez dago VPN bandera bakarra iOS SDKan. Aplikazio batek bere konfigurazioa, egoera-ohar bat eta proxy-argazki mugatu bat baino ezin ditu behatu, ez gehiago.
Galdetu iOS aplikazio bati telefonoa VPN batean dagoen, eta erantzun zintzoa da ezin duela jakin zuk uste duzun zentzuan. SDKak ez du «gailua tunel batean dago» banderarik ematen, eta horretara hurbilduko liratekeen interfaze pribatuak itxita daude argitaratzen diren aplikazioentzat. Zure aplikazioaren konfigurazioa, hari lotutako egoera eta sare-pilatik datozen zeharkako seinale bat edo bi behatu ditzakezu. Bakoitzak galdera desberdin bati erantzuten dio, eta hautsi diren egiaztapen gehienak horietako bat erantzun oso gisa hartzetik datoz.
VPN bandera bakarraren mitoa
Sinesmena da SDKaren nonbait badela gailua tunel batean dagoen adierazten duen propietate bat, irisgarritasun-bandera batek ostalari batek erantzuten duen adierazten duen bezala. Halako propietate publikorik ez dago. Egongo balitz ere, «tunel bat dago» eta «nire trafikoak hura erabiltzen du» baieztapen desberdinak dira, eta aplikazio gehienentzat bigarrena da garrantzitsua.
Hutsune hori da VPN detektagailu bat lerro bakarrean iragartzen duten liburutegiek zerbait hauskorra irakurtzeko joera duten arrazoia, hala nola interfaze-izen bat edo proxy-gako bat, eta epaia balitz bezala aurkeztea.
Kargatu hobespenak nil bat fidatu aurretik
Kudeatzailearen instantzia partekatua badago eskatzen duzun unetik, baina haren protokolo-propietatea nil izaten jarraitzen du karga-deia osatu arte. Beraz, nil protokoloak «oraindik kargatu gabe» esan nahi du, gutxienez, «instalatu gabe» adina maiz. Egin irakurketa osatze-blokearen barruan, eta orduan bakarrik erabaki: existitzen den protokolo-objektu bat, gaitze-bandera piztuta duena, horrela ikusten da «instalatuta».
Bigarren seinale bat konexio-objektuan dago: baliogabe egoera, sistemak aplikazio honek konfiguraziorik instalatuta ez duenean jakinarazten duena. Baliogabe egoera eta nil protokoloa karga osatu ondoren benetako absentzia dira, ez denbora-lasterketa bat.
Konexio-aldaketak ohar gisa iristen dira
load eta save funtzioei ematen zaizkien kudeatzaileek konfigurazioari zer gertatu zitzaion jakinarazten dute, ez tunelak zer egiten duen. Konektatzean horietako bat pizteko itxarotea inoiz konpontzen ez den lasterketa bat da. Begiratu, aldiz, egoera-aldaketaren oharra, eta irakurri konexio-objektuaren uneko balioa iristen denean.
Konfigurazio bat instalatuta dagoenean, konexio-egoerak sekuentzia labur bat egiten du: deskonektatuta, konektatzen, konektatuta, berretsiz, deskonektatzen. «Konektatuta» tunelari buruzkoa da, ez haren atzean dagoen zerbitzariari buruzkoa, beraz ez da trafikoak isurtzen duen froga. On-demand funtzioak tunela altxa dezake aplikazioa etenda dagoen bitartean, eta orduan oharra eguneratzeko ezer baino lehen iristen da.
Proxy-argazki mugatua aztarna da, ez epaia
CFNetworkek sistemaren uneko proxy-ezarpenak eman diezazkioke aplikazioari, eta emaitza horren barruan interfaze-izenaren araberako gakoa duen hiztegi mugatu bat dago. tun, utun, ppp, ipsec edo tap hasten den izen bat ikustea tunel bat dagoenaren aztarna da. Aplikazio honek ikus dezakeenaren argazkia izaten jarraitzen du, ez paketeak norantz doazen adierazpena.
Hornitzaileak ez datoz bat izendatzean, beraz falta den aurrizkiak ez du ezer frogatzen, eta existitzen den interfaze bat egon daiteke trafikorik eraman gabe. Irisgarritasuna are ahulagoa da: helbide pribatu baterako eskaera arrakastatsuak eskaera hura une hartan bideak funtzionatu zuela erakusten du, ez VPN bat instalatuta dagoenik.
Simuladoreak Maca maileguan hartzen du, eta beste aplikazioak ikusezin geratzen dira
Simuladoreak ez du bere sare-pilarik; egiten duen konexio bakoitza Macarena da. Beraz, ostalari-Macean dabilen VPN bat jada indarrean dago simulaturiko aplikazioarentzat, eta simuladorearen ezarpenek ez dute ezer erakusten. Tunela simuladorea hasi ondoren altxatu bada, hura berrabiaraztea azkarragoa izaten da aplikazioa araztea baino. Portu ez-estandarrean dagoen ostalariak portu hori behar du URLean, edo socat TCP-LISTEN:12345,fork TCP:host:12345 bezalako birbideratze lokal bat.
API publikoek ez dituzte zerrendatuko beste aplikazio batzuei edo konfigurazio-profileri dagozkien VPN profilak. Aplikazio ezagun batentzat, canOpenURL bidezko URL eskema-proba da trikimailu eramangarria, eta iOS 9tik aurrera galdetu den eskema zure Info.plist-en deklaratu behar da; kanpoan uzten baduzu, deiak false itzuliko du. OpenVPN Connectek openvpn:// erantzuten du, eta horrek adibide ona eta detektagailu orokor txarra egiten du.
Konbinatu hiru behaketa eta esan zer esan nahi duten
Praktikan pilatu hiru emaitza: kargatu eta gaituta dagoen konfigurazio bat, baliogabea ez den konexio-egoera bat, eta tunelaren bidez bakarrik iristen den helbide baterako eskaera bat. Bakoitzak bakarrik engainatzen du; elkarrekin aplikazioak zer jakin dezakeen esaten dute, erabiltzaileak zer suposatzen duen beharrean.
Idatzi emaitza hiru lerro gisa zure diagnostikoan, boolear bakar gisa beharrean. Erabiltzaile batek VPNa itzalita dagoela esaten duenean eta zure aplikazioa ados ez dagoenean, hiru lerroek erakusten dute zein behaketa aldendu zen, eta hori da jardun dezakezun laguntza-txartel baten eta «niri funtzionatzen dit» esanez amaitzen den baten arteko aldea.