Sut i ddarllen cyflwr VPN a dirprwywr ar gyfer ap gwaith wedi'i reoli
Ychydig iawn y mae eicon VPN ar ffôn wedi'i reoli yn ei brofi. Darllenwch y rhwydwaith gweithredol, ei alluoedd a'r dirprwy effeithiol, yna darllenwch bob nwl fel y mae.
Mae ap gwaith yn methu ar ffôn wedi'i reoli, mae rhywun yn gwirio'r togl VPN, yn ei weld ymlaen, ac yn datgan bod y llwybr yn iach. Dyma lle mae'r rhan fwyaf o'r diagnostegau hyn yn stopio, ac mae'n rhy fuan: nid yw trafnidiaeth VPN weithredol yn dweud bod ceisiadau'r ap hwn wedi'i defnyddio, a gall y dirprwy sy'n gweithredu mewn gwirionedd fod fesul ap neu gael ei ddewis gan ffeil PAC yn hytrach na'i ddangos yn Gosodiadau. Dechreuwch o'r ap a'r proffil penodol rydych chi'n dadfygio, yna darllenwch olwg y platfform ei hun ar y llwybr.
Dechreuwch o'r ap a'i broffil
Mae ap â bathodyn gwaith fel arfer yn rhedeg mewn proffil ar wahân gyda'i bolisi rhwydwaith ei hun. Nid yw porwr personol ar yr un ffôn yn dystiolaeth ar ei gyfer, ac nid yw canlyniad o ddyfais cydweithiwr â rheolaeth wahanol ychwaith. Nodwch i ba broffil y mae'r ap yn perthyn cyn darllen unrhyw beth.
Yn Gosodiadau, rhestruwch y cofnodion VPN sydd wedi'u ffurfweddu a nodwch pwy sy'n berchen ar bob un. Ar adeiladwaith Samsung, mae labeli'r ddewislen yn symud rhwng datganiadau, felly disgrifiwch y cofnod yn hytrach na'r llwybr iddo. Mae cofnod llwyd neu wedi'i reoli'n perthyn i pwy bynnag sy'n gweinyddu'r ddyfais; mae ei ddiffodd fel arbrawf yn newid yr hyn rydych chi'n ceisio'i fesur ac efallai yn groes i bolisi.
Darllenwch y cyflwr y mae'r platfform yn ei adrodd
O fewn gweithgaredd presennol yn eich offer cymorth, ar API 23 neu'n ddiweddarach, gellir darllen cyflwr y rhwydwaith heb anfon un beit. Mae'r alwad angen y caniatâd maniffest arferol ACCESS_NETWORK_STATE ar gyfer darllen galluoedd.
val cm = getSystemService(android.net.ConnectivityManager::class.java) ?: return
val network = cm.activeNetwork
val caps = network?.let { cm.getNetworkCapabilities(it) }
val hasVpn = caps?.hasTransport(android.net.NetworkCapabilities.TRANSPORT_VPN)
val proxy = cm.defaultProxyMae pob gwerth yn ateb cwestiwn cul. Y rhwydwaith gweithredol yw'r rhwydwaith diofyn ar gyfer y broses alw ar y foment honno. Mae'r gwiriad galluoedd yn dweud wrthych a yw'r rhwydwaith diofyn hwnnw'n cael ei gefnogi gan VPN. Mae'r alwad ddirprwy yn adrodd y dirprwy HTTP diofyn effeithiol, a gall y gwrthrych a dychwelwyd ddisgrifio naill ai dirprwy statig neu sgript PAC.
Os ydych angen yr olwg fesul rhwydwaith yn lle'r un diofyn, darllenwch briodweddau cyswllt yr un rhwydwaith a chymharu ag cm.getLinkProperties(network)?.httpProxy. Mae dirprwy a osodwyd gan reolaeth y ddyfais yn ymddangos yn yr alwad ddirprwy diofyn ac nid ym mhriodweddau'r cyswllt, sy'n ffordd gyflym o wahaniaethu dirprwy a ddarperir gan bolisi oddi wrth un a roddwyd gan y rhwydwaith.
Cadwch yr allbwn yn eich sianel gymorth yn hytrach nag mewn adroddiad cyhoeddus. Mae enwau gwesteiwy dirprwy, URLau PAC a swffigiau mewnol yn datgelu sut mae eich sefydliad yn llwybrlwyfaint traffig, ac nid oes angen unrhyw un ohonynt i ddisgrifio'r methiant.
Dehonglwch bob maes yn gul
Mae rhwydwaith nwl neu wrthrych galluoedd nwl yn golygu bod cyflwr rhwydwaith y galwr yn anarferol neu wedi newid yn ystod y darllen. Nid yw'n golygu nad oes VPN. Triniwch fel anhysbys a darllenwch eto ar ôl i'r ap fod yn y blaendir, nid fel canlyniad negyddol.
Trafnidiaeth VPN yw'r gwanaf o'r positifau. Mae unrhyw ap sy'n dal VpnService yn cynhyrchu un, gan gynnwys ap hidlo lleol sy'n byth anfon eich traffig i unman. Felly mae gwerth true yn dweud bod rhwydwaith diofyn wedi'i gefnogi gan VPN yn bodoli, nid bod allanfa eich sefydliad wedi'i defnyddio a sicr nid bod arolygaeth wedi digwydd.
Mae dirprwy diofyn nwl yn golygu bod yr API hwn yn adrodd dim dirprwy HTTP diofyn ar gyfer y ffurfweddiad effeithiol. Mae'n diystyru ychydig iawn: gall ap gario ei osodiad SOCKS ei hun, gweithredu ei gleient HTTP ei hun, neu gael ei lywio gan ddirprwy yn y giât na ddysg y ddyfais amdano.
PAC yw'r achos sy'n trechu ateb un gwerth. Gall sgript lwybrlwyfaint un gyrchfan trwy ddirprwy ac anfon un arall yn uniongyrchol, felly gall dau gais o'r un ap o fewn eiliad gymryd llwybrau gwahanol. Ac nid oes dyletswydd ar ap sy'n clymu ei socedau i rwydwaith a ddewiswyd, neu'n galw bindProcessToNetwork, i ddilyn y diofyn o gwbl.
Be na all y ciplun hwn ei ddweud
Nid hanes yw hwn. Nid oes dim yma'n cofnodi pa lwybr a gymerodd y cais sy'n methu, ac nid yw darlleniad llwyddiannus ar ôl y methiant yn dystiolaeth am y methiant. Nid rhestr gyflawn ychwaith: rydych yn cael rhwydwaith diofyn y broses alw, nid rhestr o gysylltiadau preifat pob ap.
Nid yw'n dweud dim am yr hyn sy'n digwydd uwchben y soced ychwaith. Gall gafael TLS sy'n methu ar ddyfais wedi'i reoli fod yn broblem storfa ymddiriedaeth, yn anghysondeb pinning neu'n enw y mae'r dirprwy yn ei wrthod, ac nid oes yr un ohonynt yn ymddangos mewn darlleniad cysylltedd.
Dyna pam mae'r ddau hanner yn bwysig gyda'i gilydd: mae'r ciplun yn culhau ble i edrych, ac mae diagnosteg yr ap ei hun yn dweud beth aethodd mewn gwirionedd.
Adroddwch hyn mewn ffurf y gall gweinyddwr ei defnyddio
Rhowch yr ap yr effeithiwyd arno, y proffil, y stamp amser, a'r cam union a aethodd: datrysiad enwau, cysylltiad TCP, gafael TLS neu statws HTTP. Ychwanegwch werthoedd y ciplun fel y'u darllenwyd, gyda nwl wedi'i ysgrifennu fel nwl yn hytrach nag fel dim. Nodwch a yw apiau eraill yn yr un proffil yn methu'r un ffordd, sy'n gwahanu problem ap oddi wrth broblem llwybr ar draws y proffil.
Yna stopiwch a gadewch i berchennog y llwybr ymateb. Peidiwch â thrin tystysgrif gorfforaethol, cyfeiriad dirprwy na chofnod VPN fel caniatâd i ddileu rheolaeth nac i osgoi'r llwybr a gymeradwywyd; mae hynny'n troi achos cymorth yn ddigwyddiad polisi.
Mae'r contract dirprwy diofyn yn fyr ac yn werth ei ddarllen unwaith, oherwydd mae'n diffinio'n union pa ddirprwy y mae'r alwad yn ei adrodd, ac mae pob darlleniad gormodol o'r ciplun hwn yn dechrau trwy dybio ei fod yn adrodd mwy.