MAC aleatoria en Android 10
Una de las novedades de Android 10 ha sido que, a la hora de establecer conexión con una red wifi por primera vez, se generará una MAC aleatoria para esa conexión en lugar de usar la MAC propia del dispositivo. Esto, en ciertas situaciones, ayuda a proteger un poco nuestra privacidad. Pero en otras puede resultar algo molesto.
Lo primero ¿Qué es la MAC?
La MAC (Media Access Control, también conocida como dirección física) es un identificador único de una tarjeta o dispositivo de red y debería ser única para cada dispositivo. Tiene una longitud de 48 bits (6 bloques de 2 caracteres hexadecimales) con un formato del tipo AB:CD:EF:12:34:56. Pero creo que es mejor poner algún ejemplo.
Pensemos en un portátil, normal hasta no hace mucho, con un puerto ethernet (RJ45, cable de red normal) y una tarjeta WiFi. Es decir, hablamos de un cacharro con 2 dispositivos de red. Pues bien, la tarjeta de red por cable tendría su propia MAC y la tarjeta de red inalámbrica tendría otra MAC diferente. Es algo así como un DNI de cada tarjeta de red.
¿Cómo mejora mi privacidad?
Todo lo que he contado hasta ahora no parece tener muchas implicaciones en la privacidad, ¿verdad? ¿cómo se podría usar eso? Pues bien, voy a hacer que imagines un escenario.
Imagina que el ayuntamiento de tu ciudad decide crear un servicio de WiFi gratuito en diferentes puntos clave: el polideportivo municipal, el centro cultural, el ayuntamiento, un parque… lo normal que se podría esperar.
Un día tienes que ir a hacer un trámite al ayuntamiento, parece que hay un poco de cola así que te conectas a la WiFi municipal, conectas tus auriculares al móvil y te pones a ver un par de vídeos en YouTube/Netflix/HBO/LoQueMásTeGuste aprovechando que no vas a consumir datos. Todo funciona como la seda (si, aprovecho que es un escenario imaginal para decir que un servicio tecnológico municipal funciona como la seda).
A los 3 días te acercas al polideportivo municipal por cualquier motivo y, de nuevo, te conectas a la red WiFi municipal. A la semana siguiente vas a ___________ y de nuevo repites la misma operación.
Como hemos dicho antes, la dirección MAC de cada dispositivo (en este caso tu móvil) es única. Así que si el ayuntamiento quiere hacer algún tipo de perfil de usuario no tendría más que localizar los puntos a los que se ha conectado tu dispositivo (identificado con la MAC) y mirar en que momentos ha estado conectado.
Esto, para un ayuntamiento igual no tiene mucha miga (podrías pensar que todavía menos si es pequeño), pero imagina por un momento que vives en una ciudad grande y que quien te presta el servicio es tu cadena de ropa favorita en los diferentes puntos de venta. Ahora ya empieza a importar la cosa, ¿cierto?
Entonces… ¿qué a cambiado Android?
Hace ya unas cuantas versiones Android emitía una MAC aleatoria cuando realizaba búsqueda de redes WiFi para evitar conductas como las mencionadas anteriormente por el mero hecho de llevar la WiFi de tu dispositivo activada. Piensa que cada cierto tiempo, aunque no uses el móvil, va a buscar redes WiFi cercanas. Por eso al llegar a casa se te conecta solo a la WiFi.
El problema es que una vez conectado a la WiFi la MAC siempre era la real del dispositivo. En la versión 9 se dio un paso más y se podía forzar esta generación de MAC aleatoria desde las opciones de desarrollador. Pero el grueso de los usuarios de Android creo que no han oído escuchar de esta sección.
Ha sido en la versión 10 de Android cuando han implementado este comportamiento (uso de MAC aleatoria) por defecto y obligan al usuario a poner de su parte (cambiar el ajuste a mano) en caso de querer mostrar la MAC real del dispositivo.
NOTA: se generará una MAC aleatoria por cada red a la que nos conectemos y se guardará en los ajustes de la red. Es decir, una vez te vuelves a conectar a esa red WiFi en el futuro la MAC aleatoria no se volverá a generar, sino que se usará la generada la primera vez que te conectaste.
Espera… si tanto ayuda… ¿para que desactivarlo?
En algunos entornos la MAC se usa para fines un poco menos cabrones. Puede haber políticas de uso de la WiFi que solo permitan la conexión a una lista de MAC conocidas (piensa en una WiFi de una empresa que se quiere asegurar de que nadie externo se pueda conectar). Puedes querer asociar una IP estática (dentro de tu red) a una MAC predeterminada en el servidor DHCP. Puedes… ese tipo de cosas frikis que a mi tanto me gustan pero que igual al resto de mortales no le hacen tanta gracia 🙂
En estos casos eso de no saber que MAC está usando tu dispositivo puede ser un problema. Pero por suerte hay una forma de prevenir este comportamiento. Simplemente tienes que ir a: Ajustes -> Redes e Internet -> Wi-Fi -> Pulsar el engranaje. Recuerda que, dependiendo de tu capa de personalización, algún texto puede cambiar… pero más o menos la ruta es similar en todos los dispositivos que he probado.
Una vez dentro de los ajustes avanzados de la red WiFi te vas a encontrar con un ajuste dedicado a este comportamiento.