অ্যান্ড্রয়েড ৮.০ থেকে শুরু করে, অ্যান্ড্রয়েড ডিভাইসগুলি নেটওয়ার্কের সাথে সংযুক্ত না থাকাকালীন নতুন নেটওয়ার্ক অনুসন্ধান করার সময় র্যান্ডমাইজড MAC ঠিকানা ব্যবহার করে। অ্যান্ড্রয়েড ৯-এ, আপনি একটি ডেভেলপার বিকল্প সক্ষম করতে পারেন (এটি ডিফল্টরূপে অক্ষম থাকে ) যাতে ডিভাইসটি Wi-Fi নেটওয়ার্কের সাথে সংযোগ করার সময় একটি র্যান্ডমাইজড MAC ঠিকানা ব্যবহার করতে পারে।
অ্যান্ড্রয়েড ১০-এ, ক্লায়েন্ট মোড, সফটঅ্যাপ এবং ওয়াই-ফাই ডাইরেক্টের জন্য ডিফল্টরূপে ম্যাক র্যান্ডমাইজেশন সক্ষম করা আছে।
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_supportedকেtrueতে সেট করুন (এটি একটি ডিভাইস কাস্টম ওভারলেতে করা যেতে পারে)।- ক্লায়েন্ট-মোড MAC র্যান্ডমাইজেশন সক্ষম কিনা তা নিয়ন্ত্রণ করতে এই ফ্ল্যাগটি ব্যবহার করা হয়।
সেটিংস
config.xmlএconfig_wifi_p2p_mac_randomization_supportedকেtrueতে সেট করুন (এটি একটি ডিভাইস কাস্টম ওভারলেতে করা যেতে পারে)।- এই ফ্ল্যাগটি Wi-Fi ডাইরেক্ট MAC র্যান্ডমাইজেশন সক্ষম কিনা তা নিয়ন্ত্রণ করতে ব্যবহৃত হয়।
Validation -এ বর্ণিত পদ্ধতিগুলি ব্যবহার করে আপনার বাস্তবায়ন পরীক্ষা করুন।
সিস্টেম UI অবশ্যই:
- প্রতিটি SSID-এর জন্য র্যান্ডমাইজেশন সক্ষম বা অক্ষম করার একটি বিকল্প আছে।
- নতুন যোগ করা সমস্ত নেটওয়ার্কের জন্য ডিফল্টরূপে MAC র্যান্ডমাইজেশন সক্ষম করুন।
নতুন প্রম্পট বাস্তবায়নের জন্য সেটিংস UI এর রেফারেন্স বাস্তবায়ন ব্যবহার করুন।
অ্যান্ড্রয়েড ৯ বা তার আগের ভার্সনে চলা ডিভাইসগুলিতে ওয়াই-ফাই ম্যাক র্যান্ডমাইজেশন সাপোর্ট নাও থাকতে পারে। এই ধরনের ডিভাইসগুলিকে অ্যান্ড্রয়েড ১০-এ আপগ্রেড করার সময়, ওয়াই-ফাই ভেন্ডর HAL মেক ফাইলে WIFI_HIDL_FEATURE_DISABLE_AP_MAC_RANDOMIZATION ফ্ল্যাগটিকে সত্যে সেট করে ওয়াই-ফাই ম্যাক র্যান্ডমাইজেশন বৈশিষ্ট্যটি অক্ষম করা যেতে পারে।
বৈধতা
বৈশিষ্ট্যটি উদ্দেশ্য অনুযায়ী কাজ করছে কিনা তা যাচাই করতে, একটি ম্যানুয়াল পরীক্ষা চালান:
- ডিভাইস ওভারলেতে
config_wifi_connected_mac_randomization_supportedtrueহিসেবে সেট করা আছে কিনা তা পরীক্ষা করে ডিভাইসে MAC র্যান্ডমাইজেশন সক্ষম করা আছে কিনা তা যাচাই করুন। - একটি Wi-Fi নেটওয়ার্কে সংযোগ করুন।
- নেটওয়ার্কের বিবরণ পৃষ্ঠায় যেতে নেটওয়ার্কে ট্যাপ করুন। যাচাই করুন যে MAC র্যান্ডমাইজেশন চালু আছে। যাচাই করুন যে প্রদর্শিত MAC ঠিকানাটি একটি র্যান্ডমাইজড MAC, যার স্থানীয়ভাবে তৈরি বিট 1 তে সেট করা আছে এবং মাল্টিকাস্ট বিট 0 তে সেট করা আছে।
- MAC র্যান্ডমাইজেশন বন্ধ করুন। একই নেটওয়ার্কে সংযোগ করুন এবং যাচাই করুন যে কারখানার MAC ব্যবহার করা হচ্ছে।
- নেটওয়ার্কের বিবরণ পৃষ্ঠায় ভুলে যান ট্যাপ করে নেটওয়ার্কটি মুছুন।
একই নেটওয়ার্কে সংযোগ করুন এবং যাচাই করুন যে একই র্যান্ডমাইজড MAC ঠিকানা ব্যবহার করা হচ্ছে।
অ্যান্ড্রয়েড ১০ বা তার পরবর্তী সংস্করণে আপগ্রেড করার সময়, প্রাক-অ্যান্ড্রয়েড ১০ ডিভাইসে (ম্যাক র্যান্ডমাইজেশন সমর্থন করতে সক্ষম) MAC র্যান্ডমাইজেশন পরীক্ষা করতে:
- Android 9 বা তার নিচের ভার্সনে চলমান ডিভাইসে কমপক্ষে একটি সংরক্ষিত নেটওয়ার্ক রাখুন।
- অ্যান্ড্রয়েড ১০ সিস্টেম ইমেজ ফ্ল্যাশ করুন।
- ওয়াই-ফাই পিকারে, যাচাই করুন যে সমস্ত সংরক্ষিত নেটওয়ার্কের জন্য MAC র্যান্ডমাইজেশন বন্ধ আছে।
- MAC র্যান্ডমাইজেশন চালু করুন। একই নেটওয়ার্কে সংযোগ করুন এবং যাচাই করুন যে র্যান্ডমাইজড MAC ব্যবহার করা হচ্ছে।