Android-forrit neitar að keyra yfir VPN: hvaða lag ákveður
Forrit getur hafnað VPN vegna staðbundinnar flutningsprófunar, reglu um vistföng á þjóninum eða eigin stefnu. Greindu þessi þrjú áður en útgöngum er breytt.
Þegar Android-forrit hættir að virka á sama augnabliki og göngin rísa geta þrír mismunandi hlutir borið ábyrgð, og þeir valda svipuðum bilunum. Forritið getur lesið eigið netástand símtækisins og hafnað staðbundið. Þjónninn getur flokkað vistfangið sem þú kemur frá og hafnað því. Eða höfnunin getur alls ekkert haft með VPN að gera. Röðin hér fyrir neðan safnar sönnunargögnum áður en hún breytir nokkru, því að skipta um útgang er dýrasta skrefið og það sem er ólíklegast til að hjálpa ef prófunin er staðbundin.
Skref 1: finna út hvenær forritið hafnar
Tímasetningin er fyrsti aðgreinirinn. Hreinsaðu atburðarásarbiðminnið, endurgerðu bilunina og skoðaðu hvað forritið gerði áður en það kvartaði:
adb logcat -c
# reproduce the failure in the app
adb logcat -d | grep -iE 'vpn|network|connect|http' | tail -60
Ef forritið hafnar áður en nokkurri útleiðandi beiðni er reynt er um staðbundna ákvörðun að ræða. Ef það tengist, sendir eitthvað og sýnir svo villu kom höfnunin frá hinum endanum. Ef forritið bilar á sama hátt með göngin niðri var VPN aldrei breytan.
Líttu á þessa tímasetningu sem sönnun en ekki staðfestingu. Forrit getur spilað skyndiminnið svar aftur, og bakgrunnsbeiðnir gætu hafa heppnast eða mistekist áður en þú skoðaðir. Skráðu tímasetningar síðustu heppnu beiðni og villunnar, ekki bara augnablikið þegar skilaboðin birtust.
Skref 2: lesa eigið sjónarhorn símtækisins á netinu
Android birtir VPN-ástand sem netgetu, svo forrit þarf ekki lista yfir verslunarveitur til að taka eftir að göng eru virk. Það spyr tengingarþjónustuna hvaða net er virkt og svarið inniheldur VPN-flutningsbit:
val cm = context.getSystemService(ConnectivityManager::class.java)
val caps = cm.getNetworkCapabilities(cm.activeNetwork)
val onVpn = caps?.hasTransport(NetworkCapabilities.TRANSPORT_VPN) == true
Þessi prófun er staðbundin og ódýr, og hún skýrir heilan flokk skýrslna af gerðinni „þetta forrit virkar ekki yfir VPN“ án nokkurrar fjartengdrar flokkunar. Það sem forritið getur séð fer enn eftir eigin netsamhengi, svo ekki gera ráð fyrir að hvert forrit skoði hvert prófíl tækisins.
Frá vinnustöð geturðu séð sama ástand í prófunartæki með adb shell dumpsys connectivity og með því að leita að VPN-netfærslunni. Berðu saman keyrslu með göngin uppi og keyrslu með þau niðri og geymdu báðar útkomurnar.
Skref 3: lesa hvað þjónninn sér í raun
Hinn athugandinn er þjónustan. Hún sér upprunavistfangið sem berst og getur brugðist við því, hýsingarnetinu bak við það, svæðinu, flutningsaðilanum eða merkjum sem tengjast reikningnum og tækinu. Ekkert þessara er einstök auðkenni, og deilt vistfangi gerir hliðarblokkanir eðlilegar: eitt takmarkað vistfang getur slegið ótengda notendur út fyrir sama þýðingunni.
Fáðu vistfangið eftir sömu leið og forritið notar, ekki úr vafra á fartölvu. Í símanum sýnir einföld beiðni til vistfangsbergmálsþjónustu hvað fjarlægi aðilinn tekur við, og samanburður við beiðni yfir farsímanet segir þér hvort vistfangið breyttist yfirhöfuð.
Ef forritið virkar yfir farsímanet og bilar yfir göngunum með sama reikningi er höfnunin á fjarlæga endanum eða í eigin stefnu forritsins. Ef það bilar á báðum stöðum er VPN ekki aðgreinirinn og þú ættir að hætta að prófa endapunkta.
Skref 4: para sönnunargögnin við einn af þremur dómum
Þrjár samsetningar ná yfir næstum hverja skýrslu. Höfnun án nokkurrar útleiðandi tilraunar á meðan göng eru virk bendir til staðbundinnar flutningsprófunar. Beiðni sem fer út og kemur til baka með villu, tímamörkum á tilteknum þjóni eða svæðisskilaboðum bendir til fjarlæga aðilans. Bilun sem endurtekur sig yfir farsímanet án ganga bendir til reikningsins, útgáfu forritsins eða eigin stefnu þjónustunnar, og engin VPN-breyting færir hana.
Skrifaðu dóminn niður ásamt sönnunargögnunum sem sköpuðu hann. Gildi þessa skrefs er að það stöðvar lykkjuna þar sem einhver skiptir um útgangshnúta fjórum sinnum til að laga prófun sem keyrir á símanum sjálfum.
Það heldur líka fullyrðingunum heiðarlegum. Eigin hýsing breytir endapunktinum og internetútgangi hans; hún lætur Android ekki gleyma því að VPN-net er virkt og tryggir ekki að þjónusta sem flokkar vistföng samþykki það. Staðbundið sía getur virkjast á þínu eigin VPN-neti jafn auðveldlega og á verslunarneti.
Skref 5: farðu studda leiðina og staðfestu hana
Byrjaðu á skjalfestri stefnu vörunnar og eiganda stuðningsins. Sendu útgáfu biðlarans, nákvæm skilaboð og þröngt bilunartímabil; sendu ekki fullar umferðarupptökur eða skírteini bara til að sanna að villa sé til.
Ef þjónustan leyfir beinann aðgang og tækisstefnan leyfir það, þá er undanþága fyrir hvert forrit studda aðferðin, og hún tekur það forrit viljandi út úr göngunum í stað þess að fela göngin. Umferð forritsins fer þá sína eigin leið, sem er stefnuákvörðun sem einhver verður að eiga. Í uppsetningu sem blokkar án VPN getur undanþegið forrit einfaldlega misst tengingu, svo prófaðu þá samsetningu áður en þú lofar því að hún virki.
Eftir hverja breytingu skaltu endurtaka tímaprófun fyrsta skrefs, staðfesta að forritið virki og staðfesta að öll önnur forrit noti enn göngin. Farðu svo aftur í fyrri uppsetningu og athugaðu hvort bilunin komi aftur, því að lagfæring sem þú getur ekki endurtekið er tilviljun sem þú mætir aftur.