एमएसी पता बदलने की सुविधा लागू करना

Android 8.0 से, Android डिवाइस किसी नेटवर्क से कनेक्ट न होने पर, नए नेटवर्क की खोज करते समय, रैंडम एमएसी पते का इस्तेमाल करते हैं. Android 9 में, डिवाइस को वाई-फ़ाई नेटवर्क से कनेक्ट करते समय, किसी भी क्रम में लगाए गए एमएसी पते का इस्तेमाल करने के लिए, डेवलपर का विकल्प चालू किया जा सकता है. यह विकल्प डिफ़ॉल्ट रूप से बंद होता है.

Android 10 में, क्लाइंट मोड, SoftAP, और वाई-फ़ाई डायरेक्ट के लिए, मैक पते को बदलने की सुविधा डिफ़ॉल्ट रूप से चालू होती है.

एमएसी को रैंडमाइज़ करने की सुविधा से, एमएसी पतों का इस्तेमाल करके डिवाइस पर की गई गतिविधि का इतिहास बनाने से रोका जा सकता है. इससे उपयोगकर्ता की निजता को बेहतर बनाने में मदद मिलती है.

इसके अलावा, Wi-Fi Aware और Wi-Fi RTT ऑपरेशन के तहत, एमएसी पतों को रैंडम तरीके से बदला जाता है.

ज़्यादा जानकारी के लिए, MAC को रैंडमाइज़ करने का तरीका देखें.

लागू करना

अपने डिवाइस पर मैक पते को बदलने की सुविधा लागू करने के लिए:

  1. यहां दिए गए एचएएल के तरीके लागू करने के लिए, वाई-फ़ाई चिप वेंडर के साथ काम करें:

    • IWifiStaIface#setMacAddress: इंटरफ़ेस के MAC पते को कॉन्फ़िगर करता है. डिफ़ॉल्ट तौर पर लागू होने पर, इंटरफ़ेस बंद हो जाता है, MAC पता बदल जाता है, और इंटरफ़ेस फिर से चालू हो जाता है.
    • IWifiStaIface#getFactoryMacAddress: ioctl कॉल का इस्तेमाल करके, wlan0 का फ़ैक्ट्री एमएसी पता पाता है.
    • ISupplicantP2pIface#setMacRandomization: supplicant में P2P एमएसी पता बदलने की सुविधा को चालू/बंद करता है.
  2. सेटिंग config.xml में जाकर, config_wifi_connected_mac_randomization_supported को true पर सेट करें. ऐसा डिवाइस के कस्टम ओवरले में किया जा सकता है.

    • इस फ़्लैग का इस्तेमाल यह कंट्रोल करने के लिए किया जाता है कि क्लाइंट-मोड में मैक पते को बदलने की सुविधा चालू है या नहीं.
  3. सेटिंग config.xml में जाकर, config_wifi_p2p_mac_randomization_supported को true पर सेट करें. ऐसा डिवाइस के कस्टम ओवरले में किया जा सकता है.

    • इस फ़्लैग का इस्तेमाल यह कंट्रोल करने के लिए किया जाता है कि वाई-फ़ाई डायरेक्ट एमएसी रैंडमाइज़ेशन चालू है या नहीं.
  4. पुष्टि में बताए गए तरीकों का इस्तेमाल करके, लागू करने की प्रक्रिया की जांच करें.

सिस्टम यूज़र इंटरफ़ेस (यूआई) को ये शर्तें पूरी करनी होंगी:

  • आपके पास हर एसएसआईडी के लिए, रैंडमाइज़ेशन की सुविधा को चालू या बंद करने का विकल्प होता है.
  • जोड़े गए सभी नए नेटवर्क के लिए, मैक पते को बदलने की सुविधा डिफ़ॉल्ट रूप से चालू हो.

नए प्रॉम्प्ट लागू करने के लिए, सेटिंग यूज़र इंटरफ़ेस (यूआई) के रेफ़रंस लागू करने का इस्तेमाल करें.

ऐसा हो सकता है कि Android 9 या इससे पहले के वर्शन वाले डिवाइसों पर, वाई-फ़ाई मैक पते को रैंडमाइज़ करने की सुविधा काम न करे. ऐसे डिवाइसों को Android 10 पर अपग्रेड करते समय, वाई-फ़ाई वेंडर एचएएल मेक फ़ाइल में WIFI_HIDL_FEATURE_DISABLE_AP_MAC_RANDOMIZATION फ़्लैग को 'सही है' पर सेट करके, वाई-फ़ाई के मैक पते को बदलने की सुविधा बंद की जा सकती है.

पुष्टि करें

यह पुष्टि करने के लिए कि सुविधा सही तरीके से काम कर रही है, मैन्युअल टेस्ट चलाएं:

  1. डिवाइस पर एमएसी रैंडमाइज़ेशन की सुविधा चालू है या नहीं, इसकी पुष्टि करने के लिए देखें कि डिवाइस ओवरले में config_wifi_connected_mac_randomization_supported, true पर सेट है या नहीं.
  2. अपने डिवाइस को वाई-फ़ाई नेटवर्क से कनेक्ट करें.
  3. नेटवर्क की ज़्यादा जानकारी वाले पेज पर जाने के लिए, नेटवर्क पर टैप करें. पुष्टि करें कि एमएसी को रैंडमाइज़ करने की सुविधा चालू है. पुष्टि करें कि दिखाया गया MAC पता, बिना किसी तय नियम के चुना गया मैक पता है. इसमें, स्थानीय तौर पर जनरेट किया गया बिट 1 पर सेट है और मल्टीकास्ट बिट 0 पर सेट है.
  4. एमएसी पते को रैंडम पर सेट करने की सुविधा बंद करें. डिवाइस को उसी नेटवर्क से कनेक्ट करें और पुष्टि करें कि फ़ैक्ट्री एमएसी का इस्तेमाल किया जा रहा है.
  5. नेटवर्क की जानकारी वाले पेज पर, भूल जाएं पर टैप करके नेटवर्क मिटाएं.
  6. एक ही नेटवर्क से कनेक्ट करें और पुष्टि करें कि रैंडम तौर पर जनरेट किए गए एक ही मैक पते का इस्तेमाल किया जा रहा है.

Android 10 से पहले के वर्शन वाले ऐसे डिवाइस पर एमएसी पता बदलने की सुविधा की जांच करने के लिए जिसे Android 10 या इसके बाद के वर्शन पर अपग्रेड किया जा रहा है:

  1. Android 9 या उससे पहले के वर्शन वाले डिवाइस पर, कम से कम एक सेव किया गया नेटवर्क हो.
  2. Android 10 सिस्टम इमेज को फ़्लैश करें.
  3. वाई-फ़ाई पिकर में, पुष्टि करें कि सेव किए गए सभी नेटवर्क के लिए, मैक पता बदलने की सुविधा बंद हो.
  4. एमएसी पता बदलने की सुविधा चालू करें. एक ही नेटवर्क से कनेक्ट करें और पुष्टि करें कि किसी भी MAC का इस्तेमाल किया जा रहा है.