adb forwarding ဖြင့် USB မှတစ်ဆင့် Android ဖုန်း၏ proxy ကို အသုံးပြုခြင်း
လက်တော့ပ်မှ ဖုန်းပေါ်တွင် host လုပ်ထားသော HTTP proxy သို့ adb-forward ချိတ်ဆက်မှုကို loopback လိပ်စာများ၊ မိုဘိုင်းထွက်ပေါက် နှင့် သီးခြား SSH SOCKS မျိုးကွဲ အပါအဝင် နားလည်ပါ။
ခွင့်ပြုထားသော Android စက်တစ်ခုသည် adb ဖြင့် port 8080 တွင် ရောက်ရှိနိုင်သော HTTP proxy ကို လည်ပတ်နေပြီဆိုလျှင် လက်တော့ပ် port တစ်ခုကို ထိုသို့ ပို့ဆောင်ပါ-
adb -s DEVICE_SERIAL forward tcp:6400 tcp:8080
စက်၏ တကယ့် serial ကို အသုံးပြုပြီး လက်တော့ပ် browser ၏ HTTP proxy ကို 127.0.0.1:6400 သို့ သတ်မှတ်ပါ။ ပထမ port သည် လက်တော့ပ်၏ အဆုံးမှတ်ဖြစ်ပြီး ဒုတိယသည် ဖုန်း၏ ဝန်ဆောင်မှုဖြစ်သည်။ adb သည် TCP လမ်းကြောင်းကို ပေးသည်၊ proxy protocol ကို မဟုတ်ပါ။
laptop browser
-> laptop 127.0.0.1:6400
-> adb USB forwarding
-> phone TCP port 8080
-> phone's outbound network
ဖုန်း၏ proxy သည် တောင်းဆိုထားသော လုပ်ဆောင်ချက်များကို ပံ့ပိုးရမည်၊ browser HTTPS အတွက် CONNECT အပါအဝင်။ USB debugging ကို ခွင့်ပြုထားသော စက်နှင့် ယုံကြည်ရသော ကွန်ပျူတာနှင့်သာ အသုံးပြုပါ။ ဤလမ်းကြောင်းသည် ဖုန်းသို့ မတောင်းဆိုဘဲ အင်တာနက် ချိတ်ဆက်မှုများကို ဝန်ဆောင်သူ ခွင့်ပြုရန် မလိုအပ်ပါ။
USB ဖြင့် ရောက်ရှိနိုင်မှုနှင့် သီးခြား ထွက်ပေါက်ကို စစ်ဆေးပါ။ proxy သည် ဖုန်း၏ ရွေးချယ်ထားသော အပြင်ထွက် ကွန်ရက်ကို အသုံးပြုသည်၊ ၎င်း၏ အက်ပ်က အခြားတစ်ခုကို bind မလုပ်ပါက။ အသက်ဝင်သော Wi-Fi၊ VPN သို့မဟုတ် အက်ပ်၏ တိကျသော routing သည် ထွက်ပေါက်ကို မိုဘိုင်းဒေတာနှင့် ကွဲပြားစေနိုင်သည်။
ဖုန်းသည် အစား SSH server ကို လည်ပတ်နေပါက ထို port ကို ပို့ဆောင်ပြီး လက်တော့ပ်တွင် SOCKS ဖန်တီးပါ-
adb -s DEVICE_SERIAL forward tcp:2222 tcp:2222
ssh -N -D 127.0.0.1:8899 -p 2222 [email protected]
ဤတွင် browser သည် 127.0.0.1:8899 တွင် SOCKS ကို အသုံးပြုပြီး SSH သည် ဖုန်းတွင် ဦးတည်ရာ ချိတ်ဆက်မှုများကို ဖွင့်သည်။ ၎င်းသည် HTTP proxy ကို တိုက်ရိုက် ပို့ဆောင်ခြင်း၏ အစားထိုးနည်းဖြစ်သည်၊ အစီအစဉ်နှစ်ခုစလုံးတွင် အများသူငှာ နားထောင်သူ မလိုအပ်ပါ။
ပြီးဆုံးသောအခါ သီးခြား adb ထည့်သွင်းမှုကို ဖယ်ရှားပါ၊ ဥပမာ adb -s DEVICE_SERIAL forward --remove tcp:6400။ browser ပိတ်ခြင်းသည် forwarding အခြေအနေကို မဖယ်ရှားပါ။