অ্যান্ড্রয়েড এমুলেটর: নেটওয়ার্ক ট্র্যাফিক কীভাবে পর্যবেক্ষণ করবেন?


127

কীভাবে আমি আমার অ্যান্ড্রয়েড এমুলেটর থেকে প্রেরিত এবং প্রাপ্ত নেটওয়ার্ক ট্র্যাফিক পর্যবেক্ষণ করব?

উত্তর:


104

অ্যান্ড্রয়েড এমুলেটর থেকে সরাসরি নেটওয়ার্ক ট্র্যাফিক ক্যাপচার করার দুটি উপায় রয়েছে :

  1. এসিডি কার্ডে আউটপুট লিখতে, সম্ভবত (যেমন tcpdump -s0 -w /sdcard/emulator.cap) এমুলেটরটিতে একটি এআরএম-সামঞ্জস্যপূর্ণ tcpdump বাইনারি অনুলিপি করুন এবং চালনা করুন ।

  2. emulator -tcpdump emulator.cap -avd my_avdআপনার পিসির কোনও স্থানীয় ফাইলে এমুলেটরের সমস্ত ট্র্যাফিক লিখতে চালান

উভয় ক্ষেত্রেই আপনি পিসিপি ফাইলটিকে টিসিপিডম্প বা ওয়্যারশার্ক দিয়ে স্বাভাবিক হিসাবে বিশ্লেষণ করতে পারেন।


তাহলে এটি কি রিয়েল-টাইম / অনলাইন নয়? মানে, প্যাকেটগুলি কি কেবল শেষে বিশ্লেষণ করা যায়?
fikr4n

প্রথম ক্ষেত্রে, আপনি কোনও ফাইল লেখার চেয়ে ডিভাইসে স্টাডআউটের মাধ্যমে বিশ্লেষণ করতে পারেন। দ্বিতীয় ক্ষেত্রে, আপনি ফাইলটি যেমন লিখেছেন তেমন স্ট্রিম / লেজ করতে পারবেন। অথবা আপনি এমুলেটরের পরিবর্তে হোস্ট মেশিনে নেটওয়ার্ক ট্র্যাফিক ক্যাপচার করতে পারেন।
ক্রিস্টোফার অর

আমি ইতিমধ্যে ব্যবহৃত এমুলেটরগুলি পেয়েছি এখন tcpdump ইনস্টল করা আছে, এবং # 1 কমান্ডটি ইনস্টল না করেই কাজ করে। আপনি এটি "adb -e শেল tcpdump -s0 -w /sdcard/emulator.cap" দিয়েও চালাতে পারেন।
লেস

2
আপনি 2nd সলিউশন ব্যবহার করছি এবং আপনি পেয়ে থাকেন The -tcpdump flag is not supported in QEMU2 yet and will be ignored.সতর্কবার্তা, অ্যাড -engine সর্বোত্তম ভালো আপনার কমান্ড হবে: emulator -tcpdump emulator.cap -avd my_avd -engine classic। এটি অবহেলিত এমুলেটর ইঞ্জিনকে বাধ্য করবে, তবে তারা সমস্যার সমাধান না করা পর্যন্ত কাজ করা উচিত।
লেগোম্যান

কোথায় avdঅবস্থিত?
ব্যবহারকারী3806649

20

এমুলেটর থেকে http অনুরোধগুলি নিরীক্ষণের জন্য এইচটিপি প্রক্সি ব্যবহার করাও সম্ভব। অ্যান্ড্রয়েড ট্র্যাফিক নিরীক্ষণের জন্য -http-proxyপ্রক্সি সেট করার জন্য একটি নতুন এমুলেটর শুরু করার সময় আপনি পতাকাটি পাস করতে পারেন (উদাহরণ বারপ )। ব্যবহারের উদাহরণ ./emulator -http-proxy localhost:8080 -avd android2.2। মনে রাখবেন যে আমার উদাহরণে আমি বার্প ব্যবহার করছি এবং এটি শ্রুত পোর্টটি 8080 করছে More আরও তথ্য এখানে পাওয়া যাবে


2
Https

10

ওএস এক্সের জন্য আপনি চার্লস ব্যবহার করতে পারেন , এটি সহজ এবং ব্যবহার করা সহজ।

আরও তথ্যের জন্য, দয়া করে অ্যান্ড্রয়েড এমুলেটর এবং চার্লস প্রক্সি ব্লগ পোস্টটি একবার দেখুন।


1
আমি Charlesআগে জানি না । তবে যতদূর আমি দেখতে পাচ্ছি এটি HTTP- নির্দিষ্ট। তবে ওপির প্রশ্ন নয়।
সিউ চিং পং-আসুকা কেনজি-

চার্লস লিনাক্সের জন্যও বিদ্যমান, আমি এটি আমার উবুন্টুতে 18.04
মেরেকি

6

অ্যান্ড্রয়েড স্টুডিওর বর্তমান প্রকাশটি -tcpdumpযুক্তিটি সঠিকভাবে প্রয়োগ করে নি । আমি নীচে সম্পর্কিত প্যারামিটারটি কেমুতে পাস করে একটি ডাম্প ক্যাপচার করতে সক্ষম হয়েছিলাম:

tools/emulator -engine classic -tcpdump dump.cap -avd myAvd

5

হ্যাঁ, ওয়্যারশার্ক কাজ করবে।

আমি মনে করি না একমাত্র এমুলেটর ট্র্যাফিক ফিল্টার আউট করার কোনও সহজ উপায় আছে, যেহেতু এটি একই এসসিআর আইপি থেকে আসছে।

সম্ভবত সবচেয়ে ভাল উপায় হ'ল খুব খালি ভিএমওয়্যার পরিবেশ স্থাপন এবং কেবল সেখানে এমুলেটর চালানো, কমপক্ষে সেই পথে খুব বেশি ব্যাকগ্রাউন্ড ট্র্যাফিক হবে না।


ভাল পরামর্শ, তবে একটি ভিএম এর শীর্ষে এমুলেটর চালানো শক্ত। আপনি কি কাজ করতে পেরেছেন?
মাইকশেম

আপনি কোন বিষয়গুলিতে অংশ নিয়েছেন? আমি নিজে এটি করিনি, তবে কোনও সমস্যা হবে তা আমি ভাবতে পারি না।
বিট ডিভিশন

আমার ক্ষেত্রে, অনুরোধগুলি প্রেরণ করা হচ্ছিল সবুজ, আমি যা করেছি তা অন্যান্য ব্রাউজারগুলিকে বন্ধ করে দেওয়া হয়েছিল এবং আমি মিষ্টি সবুজ সারিগুলি সন্ধান করতে সক্ষম হয়েছি। আপনি একবার অনুরোধটি সন্ধান করলে গন্তব্যের ঠিকানাটি অনুলিপি করুন এবং তারপরে আপনি এটি ip.dst == "আপনার অনুলিপি করা আইপি ঠিকানা" রেখে কেবলমাত্র প্রাসঙ্গিক অনুরোধগুলি দেখে ফিল্টারটিতে ব্যবহার করতে পারবেন।
14ত্বভেক

4

আপনি HTTP ট্রাফিক নিরীক্ষণ করতে ফিডলার ব্যবহার করতে পারেন :

http://aurir.wordpress.com/2010/03/22/tutorial-getting-android-emulator-working-with-fiddler-http-proxy-tool/

আপনি এখানে Fiddler2 ব্যবহার করতে পারেন ।


2
এখানে অন্য লিঙ্ক । আমি যুক্ত করব যে প্রক্সি সার্ভারটি এমন হওয়া উচিত 10.0.2.2যা অ্যান্ড্রয়েড এমুলেটরে হোস্ট মেশিনের আইপি ঠিকানা, এটি কী তা খুঁজে বের করার দরকার নেই।
মেন্ডাক

4

অ্যান্ড্রয়েড এমুলেটর ট্র্যাফিক ক্যাপচারের জন্য এখন সরাসরি ওয়্যারশার্ক ব্যবহার করা সম্ভব। একটা হল extcap প্লাগইন নামক androiddump যার ফলে এটি সম্ভব করে তোলে। tcpdumpআপনার এমুলেটরটিতে চলমান সিস্টেমের ইমেজে এক্সিকিউটেবল হওয়া দরকার (বেশিরভাগ বর্তমান ছবি এটিতে থাকে, এপিআই 24 এবং এপিআই 27 চিত্রের সাহায্যে পরীক্ষা করা হয়) এবং adbdহোস্টে মূল হিসাবে চলমান (কেবল চালানো adb root)) ওয়্যারশার্কে উপলভ্য ইন্টারফেসের তালিকায় (কেবল কিউটি সংস্করণ, অবহেলিত জিটিকে + এটি নেই) বা tshark -Dসেখানে প্রদর্শিত তালিকার মধ্যে বেশ কয়েকটি অ্যান্ড্রয়েড ইন্টারফেস থাকতে হবে যা ব্লুটুথ, লগক্যাট বা ওয়াইফাই ট্র্যাফিককে স্নিগ্ধ করতে দেয়, যেমন:

android-wifi-tcpdump-emulator-5554 (Android WiFi Android_SDK_built_for_x86 এমুলেটর-5554)


2

আপনি কমান্ডটি দিয়ে এমুলেটরটি শুরু করতে পারেন -avd Adfmf -http-proxy http://SYSTEM_IP:PORT। আমি HTTP বিশ্লেষক ব্যবহার করেছি তবে এটি অন্য যে কোনও কিছুর জন্য কাজ করা উচিত। আরও বিশদ এখানে পাওয়া যাবে: http://stick2code.blogspot.in/2014/04/intercep-http-requests-mitted-from-app.html


2

আপনি http://docs.mitmproxy.org/en/stable/install.html ব্যবহার করতে পারেন

এটি সেটআপ করা সহজ এবং কোনও অতিরিক্ত টুইটের প্রয়োজন হবে না।

আমি বিভিন্ন সরঞ্জামের মধ্য দিয়ে যাই তবে এটি সত্যিই ভাল এবং সহজ বলে মনে হয়েছিল।


আমি mitmproxyআগে জানি না । তবে যতদূর আমি দেখতে পাচ্ছি এটি HTTP- নির্দিষ্ট। তবে ওপির প্রশ্ন নয়।
সিউ চিং পং-আসুকা কেনজি-

1
নতুন অ্যান্ড্রয়েড স্টুডিও 3.0 প্রোফাইলার সরবরাহ করে, আপনি এটি ব্যবহার করতে পারেন। এবং মিটমের জন্য এটি সমস্ত ধরণের প্রোটোকল, HTTP, https ইত্যাদি সরবরাহ করে আপনার প্রক্সিটি সঠিকভাবে কনফিগার করতে হবে।
ধীরাজ হিমানি

আমার দ্বারা বিকাশিত নয় এমন অ্যাপ্লিকেশনগুলি থেকে প্যাকেটগুলি ক্যাপচার করার জন্য কি এটি উপলব্ধ? এবং কোনও তৃতীয় পক্ষের এমুলেটর যেমন নক্স অ্যাপ প্লেয়ার? ধন্যবাদ!
সিউ চিং পং-আসুকা কেনজি-

1
হ্যাঁ, আপনার এমুলেটর / ডিভাইসে mitm শংসাপত্র ইনস্টল করা উচিত যা mitm নিজেই সরবরাহ করে এবং আপনি চলমান অনুরোধ এবং সংশ্লিষ্ট প্রতিক্রিয়াগুলি দেখতে এটি ব্যবহার করতে পারেন।
ধীরাজ হিমানি

2

আপনি অ্যান্ড্রয়েড স্টুডিও থেকে নেটওয়ার্ক ট্র্যাফিক নিরীক্ষণ করতে পারেন। অ্যান্ড্রয়েড মনিটরে যান এবং নেটওয়ার্ক ট্যাব খুলুন।

http://developer.android.com/tools/debugging/ddms.html

আপডেট: ⚠️ অ্যান্ড্রয়েড ডিভাইস মনিটর অ্যান্ড্রয়েড স্টুডিও ৩.১ এ অবমুক্ত করা হয়েছিল। Https://developer.android.com/studio/profile/monitor এ আরও দেখুন


5
লিঙ্কের চিত্রটিতে প্রদর্শিত হিসাবে অ্যান্ড্রয়েড স্টুডিও 1.5 (উইন্ডোজ) এ ডিটেইল নেটওয়ার্ক ব্যবহারের ট্যাবটি কোথায় খুলতে হবে তা আপনি কী বলতে পারেন, আমি কেবল একটি গ্রাফ পাচ্ছি তবে বিশদটি নয়?
Shreyans জেইন

সচেতন হন যে এই বিকল্পটি সীমিত অন্তর্দৃষ্টি দেয়। একটি অনুরোধ কেন অস্বীকৃত হয়েছিল তা আমি যেখানে জানতে চাই সেখানে আমি আমার সমস্যার সমাধান করতে পারিনি, কারণ অ্যান্ড্রয়েড আমাকে এই অনুরোধ সম্পর্কে কিছুই জানায় নি। ফিডলার এখানে আরও উপযুক্ত।
হাইরিসর

2

আমি আপনাকে ওয়্যারশার্ক ব্যবহার করার পরামর্শ দিচ্ছি ।

পদক্ষেপ:

  1. ওয়্যারশার্ক ইনস্টল করুন।
  2. আপনি কলগুলির জন্য যে নেটওয়ার্ক সংযোগটি ব্যবহার করছেন তা নির্বাচন করুন (উদাহরণস্বরূপ, আপনি যদি ওয়াইফাই ব্যবহার করছেন তবে এটি নির্বাচন করুন)
  3. অনেক অনুরোধ এবং প্রতিক্রিয়া থাকবে, অতিরিক্ত অ্যাপ্লিকেশন বন্ধ করুন।
  4. সাধারণত অনুরোধগুলি সবুজ বর্ণের হয়, আপনার অনুরোধটি একবার চিহ্নিত করার পরে গন্তব্যের ঠিকানাটি অনুলিপি করুন এবং গন্তব্যের ঠিকানাটি লিখে টাইপ ip.dst==52.187.182.185করে উপরে ফিল্টারটি ব্যবহার করুন ।

নির্দিষ্ট ট্র্যাফিক পেতে আপনি এখানে উল্লিখিত অন্যান্য ফিল্টারিং কৌশল ব্যবহার করতে পারেন ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.