MAC র্যান্ডমাইজেশন ফিচারটি ডিভাইসগুলোকে ওয়াই-ফাই নেটওয়ার্কে সংযোগ করার সময় একটি র্যান্ডমাইজড MAC অ্যাড্রেস ব্যবহার করতে দেয়। এটি বাস্তবায়নের নির্দেশাবলীর জন্য, “Implement MAC randomization ” দেখুন। এই পৃষ্ঠাটি অ্যান্ড্রয়েডে MAC র্যান্ডমাইজেশনের আচরণ বর্ণনা করে।
যখন আপনার ডিভাইস কোনো ওয়াই-ফাই নেটওয়ার্ক বা অ্যাক্সেস পয়েন্টের সাথে সংযুক্ত হয়, তখন এটি ম্যাক অ্যাড্রেস ব্যবহার করে। যেহেতু এই ম্যাক অ্যাড্রেসগুলো এনক্রিপশন ছাড়াই প্রেরিত হয়, তাই এগুলো ক্যাপচার করে ব্যবহারকারীর অবস্থান ট্র্যাক করার জন্য ব্যবহার করা যেতে পারে। ঐতিহাসিকভাবে, ডিভাইসগুলো ওয়াই-ফাই নেটওয়ার্কের সাথে যুক্ত হওয়ার জন্য ফ্যাক্টরি ম্যাক অ্যাড্রেস ব্যবহার করে। ফ্যাক্টরি ম্যাক অ্যাড্রেসটি বিশ্বব্যাপী অনন্য এবং স্থির, যা ডিভাইসটিকে ট্র্যাক এবং স্বতন্ত্রভাবে শনাক্ত করার সুযোগ দেয়।
ওয়াই-ফাই নেটওয়ার্কে সংযোগ করার সময় একটি র্যান্ডমাইজড ম্যাক অ্যাড্রেস ব্যবহার করার মাধ্যমে ম্যাক র্যান্ডমাইজেশন ফিচারটি ব্যবহারকারীর গোপনীয়তা বৃদ্ধি করে।
MAC অ্যাড্রেস ৪৮ বিট দীর্ঘ এবং সাধারণত ১২টি হেক্স ডিজিট (৬টি অক্টেট, কারণ প্রতিটি অক্টেট ৮ বিটের) দ্বারা প্রকাশ করা হয়, যেমন 00:11:22:AA:BB:CC । MAC র্যান্ডমাইজেশন বৈশিষ্ট্যটি লোকালি অ্যাডমিনিস্টারড বিটকে ১ এবং ইউনিকাস্ট বিটকে ০ সেট করে অ্যাড্রেসটিকে র্যান্ডমাইজ করে। বাকি ৪৬টি বিট র্যান্ডমাইজ করা হয়।
অ্যান্ড্রয়েড ১০ বা তার উচ্চতর সংস্করণে চালিত ডিভাইসগুলির জন্য, ফ্রেমওয়ার্ক ডিফল্টরূপে একটি র্যান্ডমাইজড MAC অ্যাড্রেস ব্যবহার করে। আপনি সেটিংস- এর নেটওয়ার্ক ডিটেইলস স্ক্রিনের একটি অপশনের মাধ্যমে স্বতন্ত্র নেটওয়ার্কগুলির জন্য MAC র্যান্ডমাইজেশন চালু বা বন্ধ করতে পারেন, যেমনটি চিত্র ১-এ দেখানো হয়েছে। যদি আপনি কোনো নেটওয়ার্কের জন্য MAC র্যান্ডমাইজেশন বন্ধ করে দেন, তাহলে ফ্রেমওয়ার্ক ফ্যাক্টরি MAC অ্যাড্রেস (বিশ্বব্যাপী অনন্য অ্যাড্রেস) ব্যবহার করে।

চিত্র ১. MAC র্যান্ডমাইজেশন বিকল্প।
MAC র্যান্ডমাইজেশন প্রকার
অ্যান্ড্রয়েড ফ্রেমওয়ার্ক দুই ধরনের ম্যাক র্যান্ডমাইজেশন ব্যবহার করে: পারসিস্টেন্ট র্যান্ডমাইজেশন এবং নন-পারসিস্টেন্ট র্যান্ডমাইজেশন । যদি ব্যবহারকারী ম্যাক র্যান্ডমাইজেশন নিষ্ক্রিয় করে, তাহলে ফ্যাক্টরি ম্যাক অ্যাড্রেস ব্যবহৃত হয়।
আপনার ডিভাইস যখন কোনো ওয়াই-ফাই নেটওয়ার্কের সাথে যুক্ত হয়, তখন অ্যান্ড্রয়েড নির্ধারণ করে যে কোন MAC র্যান্ডমাইজেশন টাইপ ব্যবহার করা হবে। ডিফল্টরূপে, অ্যান্ড্রয়েড পার্সিস্টেন্ট র্যান্ডমাইজেশন ব্যবহার করে। অ্যান্ড্রয়েড ১২ থেকে, অ্যান্ড্রয়েড নিম্নলিখিত পরিস্থিতিগুলিতে নন-পার্সিস্টেন্ট র্যান্ডমাইজেশন ব্যবহার করে:
- একটি নেটওয়ার্ক সাজেশন অ্যাপ
WifiNetworkSuggestion.Builder#setMacRandomizationSettingAPI-এর মাধ্যমে নেটওয়ার্কের জন্য নন-পার্সিস্টেন্ট র্যান্ডমাইজেশন ব্যবহারের বিষয়টি নির্দিষ্ট করে দেয়। - নেটওয়ার্কটি একটি উন্মুক্ত নেটওয়ার্ক যা কোনো ক্যাপটিভ পোর্টালের সম্মুখীন হয়নি এবং
config_wifiAllowEnhancedMacRandomizationOnOpenSsidsওভারলেটিtrueতে সেট করা আছে। এই ওভারলেটি ডিফল্টরূপে নিষ্ক্রিয় (falseতে সেট করা) থাকে।
স্থায়ী এলোমেলোকরণ
ম্যাক র্যান্ডমাইজেশন চালু থাকলে অ্যান্ড্রয়েড ডিফল্টরূপে পারসিস্টেন্ট র্যান্ডমাইজেশন টাইপ ব্যবহার করে। অ্যান্ড্রয়েড নেটওয়ার্ক প্রোফাইলের প্যারামিটার, যেমন—SSID, সিকিউরিটি টাইপ, বা FQDN (পাসপয়েন্ট নেটওয়ার্কের জন্য)-এর উপর ভিত্তি করে একটি পারসিস্টেন্ট র্যান্ডমাইজড ম্যাক অ্যাড্রেস তৈরি করে। ফ্যাক্টরি রিসেট না করা পর্যন্ত এই ম্যাক অ্যাড্রেসটি একই থাকে। আপনি যদি ওয়াই-ফাই নেটওয়ার্কটি ভুলে গিয়ে আবার যোগ করেন, তাহলেও ম্যাক অ্যাড্রেসটি পুনরায় র্যান্ডমাইজ হয় না , কারণ ম্যাক অ্যাড্রেসটি নেটওয়ার্ক প্রোফাইলের প্যারামিটারগুলোর উপর নির্ভরশীল।
যখন নেটওয়ার্কগুলো দরকারি কার্যকারিতা প্রদানের জন্য ম্যাক অ্যাড্রেসের স্থায়িত্বের উপর নির্ভর করে, তখন স্থায়ী ম্যাক অ্যাড্রেস অপরিহার্য। উদাহরণস্বরূপ, এগুলো কোনো ডিভাইস মনে রাখতে সাহায্য করতে পারে এবং প্রত্যাশা অনুযায়ী আপনাকে লগইন স্ক্রিন এড়িয়ে যেতে দেয়, অথবা প্যারেন্টাল কন্ট্রোল চালু করে।
অ্যান্ড্রয়েড ১০ এবং ১১-এর ক্ষেত্রে, ম্যাক র্যান্ডমাইজেশন সক্রিয় থাকলে ফ্রেমওয়ার্কটি সমস্ত নেটওয়ার্কের জন্য স্থায়ী র্যান্ডমাইজেশন ব্যবহার করে।
অ-স্থায়ী এলোমেলোকরণ
নন-পার্সিস্টেন্ট র্যান্ডমাইজেশন পদ্ধতিতে, যা অ্যান্ড্রয়েড ১২ বা তার পরবর্তী সংস্করণে কিছু নেটওয়ার্কের জন্য ব্যবহৃত হয়, ওয়াই-ফাই মডিউল প্রতিটি সংযোগের শুরুতে ম্যাক অ্যাড্রেসটি পুনরায় র্যান্ডমাইজ করে, অথবা ফ্রেমওয়ার্কটি নেটওয়ার্কে সংযোগ করার জন্য বিদ্যমান র্যান্ডমাইজড ম্যাক অ্যাড্রেসটি ব্যবহার করে। ওয়াই-ফাই মডিউল নিম্নলিখিত পরিস্থিতিগুলিতে ম্যাক অ্যাড্রেসটি পুনরায় র্যান্ডমাইজ করে:
- DHCP লিজের মেয়াদ শেষ হয়ে গেছে এবং ডিভাইসটি এই নেটওয়ার্ক থেকে শেষবার সংযোগ বিচ্ছিন্ন হওয়ার পর ৪ ঘণ্টার বেশি সময় অতিবাহিত হয়েছে।
- নেটওয়ার্ক প্রোফাইলের জন্য বর্তমান র্যান্ডমাইজড MAC অ্যাড্রেসটি ২৪ ঘণ্টারও বেশি আগে তৈরি করা হয়েছিল। MAC অ্যাড্রেস পুনরায় র্যান্ডমাইজ করা শুধুমাত্র একটি নতুন সংযোগ শুরু হওয়ার সময়ই ঘটে। MAC অ্যাড্রেস পুনরায় র্যান্ডমাইজ করার জন্য Wi-Fi নিজে থেকে সংযোগ বিচ্ছিন্ন করে না।
যদি এই পরিস্থিতিগুলোর কোনোটিই প্রযোজ্য না হয়, তাহলে ফ্রেমওয়ার্কটি নেটওয়ার্কে সংযোগ করার জন্য পূর্বে র্যান্ডমাইজ করা MAC অ্যাড্রেসটি ব্যবহার করে।
অস্থায়ী র্যান্ডমাইজেশনের জন্য ডেভেলপার বিকল্প
অ্যান্ড্রয়েড ১১ বা তার উচ্চতর সংস্করণে চালিত ডিভাইসগুলির জন্য, আপনি ডেভেলপার অপশন স্ক্রিনের মাধ্যমে বিশ্বব্যাপী সমস্ত ওয়াই-ফাই নেটওয়ার্কের (যেগুলিতে ম্যাক র্যান্ডমাইজেশন সক্রিয় করা আছে) জন্য নন-পার্সিস্টেন্ট ম্যাক র্যান্ডমাইজেশন চালু করতে পারেন। সমস্ত প্রোফাইলের জন্য নন-পার্সিস্টেন্ট ম্যাক র্যান্ডমাইজেশন চালু করার অপশনটি আপনি সেটিংস > ডেভেলপার অপশন > ওয়াই-ফাই নন-পার্সিস্টেন্ট ম্যাক র্যান্ডমাইজেশন -এ খুঁজে পাবেন।

চিত্র ২. ওয়াই-ফাই অস্থায়ী ম্যাক র্যান্ডমাইজেশন বিকল্প।