adb फ़ॉरवर्डिंग के साथ USB पर Android फ़ोन का प्रॉक्सी उपयोग करें
लैपटॉप से फ़ोन पर होस्ट किए गए HTTP प्रॉक्सी तक के adb-फ़ॉरवर्ड कनेक्शन को समझें, जिसमें loopback पते, सेलुलर एग्रेस और अलग SSH SOCKS संस्करण शामिल हैं।
यदि कोई अधिकृत Android डिवाइस पहले से ही HTTP प्रॉक्सी चला रहा है जो adb के माध्यम से पोर्ट 8080 पर पहुँच योग्य है, तो लैपटॉप का एक पोर्ट उस ओर फ़ॉरवर्ड करें:
adb -s DEVICE_SERIAL forward tcp:6400 tcp:8080
डिवाइस का वास्तविक सीरियल नंबर उपयोग करें, फिर लैपटॉप के ब्राउज़र का HTTP प्रॉक्सी 127.0.0.1:6400 पर सेट करें। पहला पोर्ट लैपटॉप का एंडपॉइंट है; दूसरा फ़ोन की सेवा है। adb TCP पथ देता है, प्रॉक्सी प्रोटोकॉल नहीं।
laptop browser
-> laptop 127.0.0.1:6400
-> adb USB forwarding
-> phone TCP port 8080
-> phone's outbound network
फ़ोन के प्रॉक्सी को अनुरोधित क्रियाओं का समर्थन करना चाहिए, जिसमें ब्राउज़र HTTPS के लिए CONNECT शामिल है। USB डिबगिंग केवल अधिकृत डिवाइस और विश्वसनीय कंप्यूटर के साथ ही उपयोग करें। इस पथ के लिए ऑपरेटर को फ़ोन तक अनचाहे इंटरनेट कनेक्शन स्वीकार करने की आवश्यकता नहीं है।
USB पहुँच से अलग, एग्रेस सत्यापित करें। प्रॉक्सी फ़ोन के चुने हुए आउटबाउंड नेटवर्क का उपयोग करता है, जब तक कि उसका एप्लिकेशन किसी और को बाइंड न करे। सक्रिय Wi-Fi, VPN या स्पष्ट ऐप रूटिंग एग्रेस को मोबाइल डेटा से भिन्न बना सकते हैं।
यदि फ़ोन इसके बजाय SSH सर्वर चलाता है, तो उस पोर्ट को फ़ॉरवर्ड करें और लैपटॉप पर SOCKS बनाएँ:
adb -s DEVICE_SERIAL forward tcp:2222 tcp:2222
ssh -N -D 127.0.0.1:8899 -p 2222 [email protected]
यहाँ ब्राउज़र 127.0.0.1:8899 पर SOCKS का उपयोग करता है, और SSH फ़ोन पर गंतव्य कनेक्शन खोलता है। यह HTTP प्रॉक्सी को सीधे फ़ॉरवर्ड करने का विकल्प है; दोनों में से किसी व्यवस्था के लिए सार्वजनिक श्रोता आवश्यक नहीं है।
पूरा होने पर विशिष्ट adb प्रविष्टि हटाएँ, उदाहरण के लिए adb -s DEVICE_SERIAL forward --remove tcp:6400। ब्राउज़र बंद करने से फ़ॉरवर्डिंग स्थिति नहीं हटती।