অ্যান্ড্রয়েড ৮.০ থেকে শুরু করে, কোনো নেটওয়ার্কের সাথে সংযুক্ত না থাকা অবস্থায় অ্যান্ড্রয়েড ডিভাইসগুলো নতুন নেটওয়ার্ক খোঁজার জন্য র্যান্ডমাইজড ম্যাক অ্যাড্রেস ব্যবহার করে। অ্যান্ড্রয়েড ৯-এ, আপনি একটি ডেভেলপার অপশন চালু করতে পারেন (যা ডিফল্টরূপে নিষ্ক্রিয় থাকে ) যাতে ডিভাইসটি কোনো ওয়াই-ফাই নেটওয়ার্কে সংযোগ করার সময় একটি র্যান্ডমাইজড ম্যাক অ্যাড্রেস ব্যবহার করে।
অ্যান্ড্রয়েড ১০-এ ক্লায়েন্ট মোড, সফটএপি এবং ওয়াই-ফাই ডিরেক্ট-এর জন্য ম্যাক র্যান্ডমাইজেশন ডিফল্টরূপে সক্রিয় থাকে।
MAC র্যান্ডমাইজেশন লিসেনারদেরকে MAC অ্যাড্রেস ব্যবহার করে ডিভাইসের কার্যকলাপের ইতিহাস তৈরি করা থেকে বিরত রাখে, ফলে ব্যবহারকারীর গোপনীয়তা বৃদ্ধি পায়।
এছাড়াও, Wi-Fi Aware এবং Wi-Fi RTT অপারেশনের অংশ হিসেবে MAC অ্যাড্রেসগুলো র্যান্ডমাইজ করা হয়।
আরও তথ্যের জন্য, MAC র্যান্ডমাইজেশন আচরণ দেখুন।
বাস্তবায়ন
আপনার ডিভাইসে MAC র্যান্ডমাইজেশন প্রয়োগ করতে:
নিম্নলিখিত HAL পদ্ধতিগুলো বাস্তবায়নের জন্য একটি Wi-Fi চিপ বিক্রেতার সাথে কাজ করুন:
-
IWifiStaIface#setMacAddress: ইন্টারফেসের MAC অ্যাড্রেস কনফিগার করে। ডিফল্ট পদ্ধতিতে ইন্টারফেসটি ডাউন করা হয়, MAC অ্যাড্রেস পরিবর্তন করা হয় এবং ইন্টারফেসটি আবার আপ করা হয়। -
IWifiStaIface#getFactoryMacAddress: একটিioctlকল ব্যবহার করেwlan0এর ফ্যাক্টরি MAC অ্যাড্রেস পাওয়া যায়। -
ISupplicantP2pIface#setMacRandomization: সাপ্লিক্যান্টে P2P MAC র্যান্ডমাইজেশন চালু বা বন্ধ করে।
-
সেটিংস
config.xmlফাইলেconfig_wifi_connected_mac_randomization_supportedtrueতে সেট করুন (এটি একটি ডিভাইস কাস্টম ওভারলে-তে করা যেতে পারে)।- এই ফ্ল্যাগটি ক্লায়েন্ট-মোড MAC র্যান্ডমাইজেশন সক্রিয় থাকবে কিনা তা নিয়ন্ত্রণ করতে ব্যবহৃত হয়।
সেটিংস
config.xmlফাইলেconfig_wifi_p2p_mac_randomization_supportedtrueতে সেট করুন (এটি একটি ডিভাইস কাস্টম ওভারলে-তে করা যেতে পারে)।- এই ফ্ল্যাগটি ওয়াই-ফাই ডিরেক্ট ম্যাক র্যান্ডমাইজেশন চালু থাকবে কিনা তা নিয়ন্ত্রণ করতে ব্যবহৃত হয়।
ভ্যালিডেশন- এ বর্ণিত পদ্ধতিগুলো ব্যবহার করে আপনার ইমপ্লিমেন্টেশনটি পরীক্ষা করুন।
সিস্টেম UI-কে অবশ্যই:
- প্রতিটি SSID-এর জন্য র্যান্ডমাইজেশন চালু বা বন্ধ করার একটি বিকল্প থাকবে।
- নতুন যোগ করা সমস্ত নেটওয়ার্কের জন্য ডিফল্টরূপে MAC র্যান্ডমাইজেশন সক্রিয় রাখুন।
নতুন প্রম্পটগুলো প্রয়োগ করতে সেটিংস UI-এর রেফারেন্স ইমপ্লিমেন্টেশনটি ব্যবহার করুন।
অ্যান্ড্রয়েড ৯ বা তার নিচের সংস্করণে চালিত ডিভাইসগুলিতে ওয়াই-ফাই ম্যাক র্যান্ডমাইজেশনের সাপোর্ট নাও থাকতে পারে। এই ধরনের ডিভাইসগুলিকে অ্যান্ড্রয়েড ১০-এ আপগ্রেড করার সময়, ওয়াই-ফাই ভেন্ডরের HAL মেক ফাইলে WIFI_HIDL_FEATURE_DISABLE_AP_MAC_RANDOMIZATION ফ্ল্যাগটিকে true সেট করে ওয়াই-ফাই ম্যাক র্যান্ডমাইজেশন ফিচারটি নিষ্ক্রিয় করা যেতে পারে।
বৈধতা
ফিচারটি উদ্দেশ্য অনুযায়ী কাজ করছে কিনা তা যাচাই করতে, একটি ম্যানুয়াল টেস্ট চালান:
- ডিভাইস ওভারলে-তে
config_wifi_connected_mac_randomization_supportedমানtrueসেট করা আছে কিনা তা পরীক্ষা করে নিশ্চিত করুন যে ডিভাইসটিতে MAC র্যান্ডমাইজেশন সক্রিয় আছে। - একটি ওয়াই-ফাই নেটওয়ার্কে সংযুক্ত হন।
- নেটওয়ার্ক ডিটেইলস পেজে যেতে নেটওয়ার্কটিতে ট্যাপ করুন। MAC র্যান্ডমাইজেশন চালু আছে কিনা তা যাচাই করুন। প্রদর্শিত MAC অ্যাড্রেসটি একটি র্যান্ডমাইজড MAC কিনা তা যাচাই করুন, যেটির লোকালি জেনারেটেড বিট ১ এবং মাল্টিকাস্ট বিট ০-তে সেট করা আছে।
- MAC র্যান্ডমাইজেশন বন্ধ করুন। একই নেটওয়ার্কে সংযুক্ত হয়ে যাচাই করুন যে ফ্যাক্টরি MAC ব্যবহৃত হচ্ছে।
- নেটওয়ার্ক বিবরণ পৃষ্ঠায় ‘ভুলে যান’ (Forget) ট্যাপ করে নেটওয়ার্কটি মুছে ফেলুন।
একই নেটওয়ার্কে সংযোগ করুন এবং যাচাই করুন যে একই র্যান্ডমাইজড MAC অ্যাড্রেস ব্যবহৃত হচ্ছে।
অ্যান্ড্রয়েড ১০-এর পূর্ববর্তী কোনো ডিভাইসে (যা MAC র্যান্ডমাইজেশন সমর্থন করতে সক্ষম) MAC র্যান্ডমাইজেশন পরীক্ষা করতে, অ্যান্ড্রয়েড ১০ বা তার উচ্চতর সংস্করণে আপগ্রেড করতে হবে:
- অ্যান্ড্রয়েড ৯ বা তার নিম্নতর সংস্করণে চালিত ডিভাইসটিতে অন্তত একটি সংরক্ষিত নেটওয়ার্ক থাকতে হবে।
- অ্যান্ড্রয়েড ১০ সিস্টেম ইমেজ ফ্ল্যাশ করুন।
- ওয়াই-ফাই পিকার-এ, সংরক্ষিত সমস্ত নেটওয়ার্কের জন্য MAC র্যান্ডমাইজেশন বন্ধ আছে কিনা তা যাচাই করুন।
- MAC র্যান্ডমাইজেশন চালু করুন। একই নেটওয়ার্কে সংযুক্ত হয়ে যাচাই করুন যে র্যান্ডমাইজড MAC-টিই ব্যবহৃত হচ্ছে।