Jo hawwe de hotspot oanset, de VPN ferbûn, in poarte yn de app iepene, en it oare apparaat kin noch altyd net ferbine. It ûntbrekkende stik is hast nea de poarte sels, mar de fraach hokker masine de harkjende socket hat en hokker adres it oare apparaat berikke moat. Ik gean fan de tillefoan nei bûten, want it skerm foar jo lit sjen hokker fan de trije yngongspunten jo echt testen.

Begjin dêr ’t se tsjinst echt rint

Iepenje de app dy’t de ferbining oannimme moat en lês syn eigen status side. Stiet der dat er harket, skriuw dan it adres op dêr’t er oan ferbûn is, want dat iene detail beslút de measte gefallen hjirûnder. In app ferbûn oan 127.0.0.1 is allinne fan de tillefoan ôf te berikken, en noch in hotspot-klant, noch operatormapping, noch VPN-útgong feroaret dat.

Befêstige dan hokker apparaat de tsjinst draait. Is it de tillefoan, dan heart de socket by dy app; is it in laptop efter de hotspot, dan hearre de harker en syn firewall by de laptop en stjoert de tillefoan allinne pakketten troch. It binne twa ferskillende ûntwerpen, en se trochinoar helje is de reden dat in poarte iepene op ien plak neat docht op it oare.

Yn in debugbere build listet adb shell sockets fia /proc/net/tcp, mar foar de measte minsken is de eigen status fan de app de earlike boarne.

Earste yngongspunt: in oar apparaat op de hotspot

Dit is it lokale gefal en it maklikste. It oare apparaat berikt de tillefoan op it adres dat it as syn gateway sjocht, op de poarte dêr’t de app op harket, en neat bûten de hotspot docht mei. Operatormapping is net nedich, want it ferkear ferlit nea it lokale segmint.

Twa dingen brekke dit: de app is ferbûn oan loopback, of it klantbelied op de tillefoan lit de lokale ferbining net ta. Test mei it eigen protokol fan de applikaasje ynstee fan in keale TCP, want in harker dy’t akseptearret en dan wegeret liket fan fierrens op in sletten poarte.

Rint de tsjinst op in ferbûne laptop, dan is it hotspot-adres fan de tillefoan hielendal net it doel; jo hawwe it adres fan de laptop op de hotspot-ynterface nedich en in harker dêre.

Twadde yngongspunt: it paad fan de operator

De tillefoan berikke fan it mobile netwurk is in oar probleem, en foar IPv4 wurket it meastentiids gewoan net. Operators sette apparaten efter dielde oersetting, en dêrom hat RFC 6598 krekt in dield adresberik foar dy opstelling reservearre. In net-frege ferbining fan bûten hat gjin mapping om troch te kommen, en gjin lokale konfiguraasje makket ien, want de oersetter is jo apparaat net.

Root tagong feroaret dat ek net; it jout kontrôle oer de stack fan de tillefoan, net oer de oersetter fan de operator. Dêr’t de operator in iepenbier IPv6-prefiks biedt kin in yngongspaad bestean, mar de harker en de firewall fan de tillefoan hawwe noch hieltiten bewuste tastimming nedich.

Tredde yngongspunt: de VPN-útgong

It adres dat in webside rapporteart wylst de tunnel omheech is, is it adres fan de útgong foar bedutsen útgeand ferkear. It is gjin adres dat yngongferbiningen yn jo namme oannimt. It nei binnen ta brûke freget in funksje dy’t de oanbieder echt biedt, lykas in trochstjoerde poarte, plus in brûkber paad fan de útgong nei de klant.

In lokale tastimming regel kin dy mapping net meitsje. Wat it docht is feroarje hokker paad de antwurden fan de app nimme, en dat is fan belang as de app fan de tunnel útsletten is: it fersyk en it antwurd kinne yn ferskillende netwurk konteksten einigje en de ferbining mislearret as in firewall probleem.

Test ien paad fan begjin oant ein, neam dan de eigner

Skriuw de tuple op foar’t jo testen: bedoelde boarne, bestimmingsadres, ferfier, poarte en de masine dy’t de harkjende socket hat. Is ien elemint in gissing, dan fertelt de test jo neat nuttichs.

Test dan dat iene tastiene paad mei de autentikaasje fan de app ûnskansearre. Publisearje gjin brede harker en skeakelje gjin ûnferbâne kontrôles út allinne om in dûbelsinnige adres kontrôle antwurdzje te litten, want beide feroarings oerlibje de test.

It tethering subsystem fan Android stjoert delgeand ferkear op syn eigen paad troch, los fan de gewoane VPN-opfangst, dat in browser dy’t wurket op in ferbûne laptop seit neat oer yngong tagong ta in tsjinst op de tillefoan. Foar’t jo sizze dat it wurket:

  • De harker is op in adres dat de oare kant berikke kin, net op loopback.
  • De oare kant brûkt it adres fan dat yngongspunt, net it útgangsadres fan in status side.
  • Elke mapping by de operator of oanbieder is in stipe funksje, net in regel dy’t jo lokaal tafoege hawwe.
  • Fersyk en antwurd gean troch deselde netwurk kontekst, en de autentikaasje slagget noch.

Relatearre artikelen