ADB iyo emulaatarka Android way ku guuldareystaan VPN gadaashiisa: saddex waddo
Helitaanka ADB, kaadhka shabakadda macmalka ah ee emulaatarka iyo xalliyaha martigeliyaha waxay si gooni ah ugu guuldareystaan VPN gadaashiisa. Tijaabi waddo kasta si isku xigta ka hor intaadan tuunelka eedeyn.
Waxaad xiriirtaa VPN-ga xafiiska oo Android Studio lumiyaa emulaatarka socda, adb start-server way xannibaataa, telefoon jidh ahaan Wi-Fi ku jirana liiska aaladaha ka baxaa. Waxay u muuqataa in hal tuunel hal badeeco xannibayso. Dhab ahaan saddex waddo oo gooni ah ayaa saddex siyaabood ku guuldareysta: helitaanka aaladaha adb, shabakadda macmalka ah ee emulaatarka iyo xalliyaha martigeliyaha. Tuunelku badanaa wuxuu leeyahay kaliya kan dambe, iyo badanaa qayb ka mid ah.
Saddex socket, saddex milkiile
Server-ka adb wuxuu dhegeystaa port 5037 ee martigeliyaha wuxuuna la hadlaa aaladaha isagoo u maraya USB ama TCP, isticmaalaya mDNS helitaanka shabakadda. Emulaatarku wuxuu ka shaqeeyaa gadaashiisa router macmal ah oo u gaar ah: martida waa 10.0.2.15, iriddu waa 10.0.2.2 iyo server-ka DNS waa 10.0.2.3, oo habka emulaatarku wuxuu u beddelaa socket-yada martigeliyaha. Xalliyaha martigeliyaha waa meesha macmiilka VPN ku rakibo DNS iyo domain-yada raadinta.
Kala-soociddaas waxay sharraxaysaa sababta hagaajin ugu shaqeeyo hal qalab oo ugu shaqayn waayo mid kale. Macmiilka beddela xalliyaha martigeliyaha wuxuu ka tagaa habka emulaatarka oo socda isagoo leh xaaladda xalliyaha uu akhriyay bilowga. Macmiilka shaandheeya multicast wuxuu jebiyaa helitaanka isagoo aan taaban DNS. Macmiilka shaandheeya adaptarrada macmalka ah wuxuu diidaa emulaatarka inta browser-ka martigeliyaha shaqeynayo. Calaamad kastaa waxay leedahay sabab gooni ah, sidaas darteed aqoonso waddada guuldareysata ka hor intaadan beddelin wax setting ah.
Ka bilow waxa adb arki karo
Socodsii adb devices ka hor intaadan taaban VPN. Liis madhan waa dhibaato gaadiid, ma aha mid waddo, oo ma jiro setting tuunel oo hagaajinaya aalad uusan server-ku waligiis liis gelin. Dib u bilow server-ka si nadiif ah: marka hore adb kill-server ka dibna adb start-server, oo akhri natiijada si aad u aragto port-ka uu qabsaday. Haddii bilowga laftiisu xannibaato, helitaanka mDNS waa tuhunka caadiga ah shabakad shaandheysa multicast; xalka la diiwaangeliyay waa in server-ka la bilaabo iyadoo helitaanku damisanyahay:
ADB_MDNS_OPENSCREEN=0 adb start-server
adb devicesAaladda jidhka ah USB waa waddada ugu gaaban. Haddii aad u baahan tahay TCP, geli aaladda habka dhegeysiga adigoo isticmaalaya adb tcpip 5555 oo ku xiriir cinwaanka iyo port-ka aaladda, adb connect 192.0.2.10:5555. Port 5037 waa port-ka server-ka martigeliyaha, ma aha port-ka aaladdu ku dhegeysato.
Emulaatarka ka tijaabi gudaha
Emulaatarku wuxuu ka jawaabaa DNS laga bilaabo 10.0.2.3, xalliyahaasna waxaa quudiya habka martigeliyaha. Marka macmiilka VPN beddelo xalliyaha martigeliyaha emulaatarku wuu dhaxli karaa; marka macmiilku shaandheeyo habka emulaatarka ama liiska adaptarrada is beddelo bilowga ka dib, ma dhaxli karo. Kala sooc labadaba iyadoo la adeegsanayo bartilmaameed tiro iyo magac isla shell. adb shell ping -c 2 10.0.2.2 wuxuu caddeeyaa in shabakadda macmalka ahi gaarto dhinaca martigeliyaha. Raadinta magac ka dib waxay sheegtaa haddii xallintu ka gudubtay xadka.
Ka dibna socodsii isla raadinta magac ee martigeliyaha. Martigeliyuhu wuu xalliyaa emulaatarkuna ma xalliyo waxay la macno tahay jabku waa inta u dhaxaysa xalliyaha martigeliyaha iyo shabakadda macmalka ah ee emulaatarka, ma aha tuunelka. Labaduba guuldareystaan waxay la macno tahay xalliyaha martigeliyaha waa meesha la eego. Dib u bilaabista emulaatarka ka dib xiriirka VPN way mudan tahay hal isku day, sababtoo ah macmiillada qaar waxay rakibaan xaalad xalliye ah oo aan habka emulaatarka socda qaadin.
Hubi xalliyaha martigeliyaha iyo shaandhayada macmiilka
Macmiilka tuunel buuxa wuxuu xalliyaha martigeliyaha ku beddelaa midkiisa, macmiilka split-DNS-na wuxuu ku daro domain-yo raadin iyo gudbinno shuruud leh. Magacyada gudaha waxay inta badan ku xiran yihiin qaabeyntaas split-DNS, marka eeg waxa martigeliyuhu isticmaalo inta aad xiran tahay: cinwaanka xalliyaha, domain-ka raadinta iyo haddii aagga gudaha loo jiheeyo DNS-ka shirkadda. Xalliye ka jawaaba magacyo guud laakiin aan ka jawaabin kuwa gudaha waa su aal siyaasad, ma aha tuunel jabay.
Macmiillada shirkadaha qaarkood waxay kaloo xannibaan gaadiidka ka imanaya adaptarrada macmalka ah. Darawalka shaandhaynta emulaatarku wuxuu u muuqdaa sida adaptar macmal ah, sidaas darteed martigeliyuhu si fiican ayuu u shaqeyn karaa inta siyaasaddu diiddayso emulaatarka. Siyaasaddaas lama arki karo goobta shaqada, oo qiyaasidda setting-yada proxy ma muujinayso. Haddii martigeliyuhu xalliyo oo emulaatarku xannibnaado si kasta oo setting-yada xalliyaha, kor u qaadista saxda ah waa kooxda leh siyaasadda macmiilka.
Nidaamka hubinta iyo waxa natiijo kastaa ka dhigan tahay
Ka shaqee kor ilaa hoos oo joogso safka ugu horreeya ee guuldareysta. Natiijo kastaa waxay tilmaantaa milkiile kale, oo midkoodna laguma hagaajiyo dib u rakibista Android Studio.
| Result | Likely owner | Next check |
|---|---|---|
| adb devices is empty with USB attached | USB, driver or adb server | cable, authorization prompt, adb kill-server |
| adb start-server hangs | mDNS discovery | ADB_MDNS_OPENSCREEN=0 |
| Emulator reaches 10.0.2.2, names fail | Host resolver to emulator boundary | host lookup of the same name |
| Host resolves, emulator still fails | Emulator process or client filter | restart emulator, ask IT about virtual adapters |
| Both fail for internal names only | Split DNS or search domain | resolver and zone configuration |
Kaliya labada saf ee ugu dambeeya ayaa ah su aalo VPN macne caadi ah, oo kaliya kan dambe ayaa ku saabsan waxa ku jira DNS. Dukumentiyada adb waxay daboolaan port-ka server-ka iyo doorsoomayaasha deegaanka ee halkan lagu sheegay, taas oo ku filan in dhinaca gaadiidka daacad loo hayo inta aad tijaabinayso inta kale.