MAC rastgeleleştirme özelliği, cihazların bir Wi-Fi ağına bağlanırken rastgele bir MAC adresi kullanmasına olanak tanır. Uygulama talimatları için bkz. MAC Rastgeleleştirmesinin Uygulanması . Bu sayfada Android'deki MAC rastgeleleştirme davranışı açıklanmaktadır.
MAC adresleri cihazlar tarafından bir Wi-Fi ağına veya erişim noktasına bağlanırken kullanılır. Bu MAC adresleri şifreleme olmadan iletildiğinden, yakalanıp potansiyel olarak kullanıcının konumunu izlemek için kullanılabilirler. Geçmişte cihazlar bir Wi-Fi ağıyla bağlantı kurmak için fabrika MAC adresini kullanır. Fabrika MAC adresi global olarak benzersiz ve statik olup, cihazın izlenmesine ve bireysel olarak tanımlanmasına olanak tanır.
MAC rastgeleleştirme özelliği, bir Wi-Fi ağına bağlanırken rastgele bir MAC adresi kullanarak kullanıcı gizliliğini artırır.
MAC adresleri 48 bit uzunluğundadır ve genellikle 00:11:22:AA:BB:CC
gibi 12 onaltılık rakamla (her sekizli 8 bit olduğundan 6 sekizli) temsil edilir. MAC rastgeleleştirme özelliği , yerel olarak yönetilen biti 1'e ve tek noktaya yayın bitini 0'a ayarlayarak adresi rastgele hale getirir. Diğer 46 bit rastgeleleştirilir.
Android 10 veya üstünü çalıştıran cihazlar için çerçeve, varsayılan olarak rastgele MAC adresini kullanır. Kullanıcılar, Şekil 1'de gösterildiği gibi Ayarlar'daki Ağ ayrıntıları ekranındaki bir seçenek aracılığıyla bireysel ağlar için MAC rastgeleleştirmesini etkinleştirebilir veya devre dışı bırakabilir. Bir kullanıcı bir ağ için MAC rastgeleleştirmesini devre dışı bırakırsa, çerçeve fabrika MAC adresini (genel olarak benzersiz adres) kullanır.
Şekil 1. MAC rastgeleleştirme seçeneği.
MAC rastgeleleştirme türleri
Android çerçevesi iki tür MAC rastgeleleştirmesi kullanır: kalıcı rastgeleleştirme ve kalıcı olmayan rastgeleleştirme . Kullanıcı MAC rastgeleleştirmesini devre dışı bırakırsa fabrika MAC adresi kullanılır.
Android, cihaz bir Wi-Fi ağına bağlandığında hangi MAC rastgeleleştirme türünün kullanılacağını belirler. Varsayılan olarak Android kalıcı rastgeleleştirmeyi kullanır. Android 12'den itibaren Android aşağıdaki durumlarda kalıcı olmayan rastgeleleştirmeyi kullanır:
- Bir ağ önerisi uygulaması, ağ için
WifiNetworkSuggestion.Builder#setMacRandomizationSetting
API'si aracılığıyla kalıcı olmayan rastgeleleştirmenin kullanılacağını belirtir. - Ağ, sabit bir portalla karşılaşmamış açık bir ağdır ve
config_wifiAllowEnhancedMacRandomizationOnOpenSsids
kaplamasıtrue
olarak ayarlanmıştır. Bu yer paylaşımı varsayılan olarak devre dışıdır (false
olarak ayarlanmıştır).
Kalıcı randomizasyon
Android, MAC rastgeleleştirme özelliği etkinleştirildiğinde varsayılan olarak kalıcı rastgeleleştirme türünü kullanır. Android, SSID, güvenlik türü veya FQDN (Passpoint ağları için) dahil olmak üzere ağ profilinin parametrelerine dayalı olarak kalıcı, rastgele bir MAC adresi oluşturur. Bu MAC adresi fabrika ayarlarına sıfırlanana kadar aynı kalır. MAC adresi ağ profilinin parametrelerine bağlı olduğundan, kullanıcı Wi-Fi ağını unutup yeniden eklerse MAC adresi yeniden rastgele hale getirilmez .
Kalıcı MAC adresleri, ağların kullanıcıya faydalı işlevsellik sağlamak için MAC adresinin kalıcılığına dayandığı durumlarda (örneğin, bir cihazı hatırlamak ve kullanıcıların beklendiği gibi oturum açma ekranını atlamasına veya ebeveyn kontrollerini etkinleştirmesine izin vermek) gereklidir.
Android 10 ve 11 için çerçeve, MAC rastgeleleştirmesi etkinleştirildiğinde tüm ağlar için kalıcı rastgeleleştirmeyi kullanır.
Kalıcı olmayan randomizasyon
Android 12 veya sonraki sürümlerdeki bazı ağlar için kullanılan kalıcı olmayan rastgeleleştirme türü altında, Wi-Fi modülü, her bağlantının başlangıcında MAC adresini yeniden rastgele hale getirir veya çerçeve, ağlara bağlanmak için mevcut rastgele MAC adresini kullanır. ağ. Wi-Fi modülü aşağıdaki durumlarda MAC adresini yeniden rastgele seçer:
- DHCP kiralama süresi sona erdi ve cihazın bu ağla bağlantısının son kesilmesinin üzerinden 4 saatten fazla zaman geçti.
- Ağ profilinin mevcut rastgele MAC'ı 24 saatten daha uzun bir süre önce oluşturuldu. MAC adresinin yeniden rastgele hale getirilmesi yalnızca yeni bir bağlantının başlangıcında gerçekleşir. Wi-Fi, bir MAC adresini yeniden rastgele hale getirmek amacıyla bağlantıyı aktif olarak kesmez.
Bu durumların hiçbiri geçerli değilse çerçeve, ağa bağlanmak için önceden rastgele hale getirilmiş MAC adresini kullanır.
Kalıcı olmayan rastgeleleştirme için geliştirici seçeneği
Android 11 veya üstünü çalıştıran cihazlarda kullanıcılar, geliştirici seçenekleri ekranı aracılığıyla tüm Wi-Fi ağları (MAC rastgeleleştirmesinin etkin olduğu) için kalıcı olmayan MAC rastgeleleştirmesini global olarak etkinleştirebilir. Tüm profiller için kalıcı olmayan MAC rastgeleleştirmesini etkinleştirme seçeneği , Ayarlar > Geliştirici Seçenekleri > Wi-Fi kalıcı olmayan MAC rastgeleleştirmesi bölümünde bulunur.
Şekil 2. Wi-Fi kalıcı olmayan MAC rastgeleleştirme seçeneği.