Pruebas y QA · 6 min de lectura

Búsqueda de direcciones MAC en 2026: prefijos OUI, bits I/G y U/L

Cómo leer correctamente una dirección MAC: la estructura de 48 bits, los prefijos OUI, los bits I/G y U/L, las direcciones aleatorizadas, la conversión a EUI-64 link-local y los errores de búsqueda.

Por Charlie Simmon ·

Una búsqueda de dirección MAC parte de 48 bits y seis octetos, y casi todos los errores provienen de ignorar dos bits dentro del primer octeto. El bit I/G indica si la trama es unicast o multicast. El bit U/L indica si el prefijo está asignado globalmente o es de administración local. Si te equivocas en eso, una búsqueda de fabricante devuelve una respuesta errónea con total seguridad.

Esta guía cubre la disposición de los bytes, la numeración de bits que confunde a mucha gente, por qué los dispositivos modernos aleatorizan sus direcciones, cómo una dirección de 48 bits se convierte en un identificador de interfaz EUI-64 para IPv6 link-local, y los errores que una herramienta de búsqueda debería mostrar en lugar de adivinar. No afirma que ninguna dirección pertenezca a un dispositivo real; las herramientas de este sitio analizan y generan valores sintéticos.

La estructura de 48 bits

Una dirección MAC-48 son seis octetos, 48 bits, normalmente escrita como seis pares hexadecimales. Los tres primeros octetos son el Organizationally Unique Identifier, el OUI, asignado por el IEEE a un fabricante. Los tres últimos los asigna ese fabricante, aunque en la práctica muchos proveedores los derivan de un número de serie o de una fuente aleatoria.

Los dígitos hexadecimales se escriben con el más significativo primero en la forma textual, pero el IEEE transmite cada octeto con el bit menos significativo primero en el medio. Esa discrepancia es la razón por la que el primer octeto es el único lugar donde la numeración de bits confunde a todo el mundo: el bit 0 en el estándar significa el bit menos significativo de ese primer octeto tal como se escribe, no el bit más a la izquierda de la cadena.

  • Longitud total: 48 bits, 6 octetos, 12 dígitos hexadecimales
  • OUI: los primeros 24 bits, asignados por el IEEE
  • Porción NIC: los últimos 24 bits, asignados por el titular del OUI
  • Forma textual: el nibble más significativo primero dentro de cada octeto
  • Orden en el medio: cada octeto se transmite con el bit menos significativo primero

El primer octeto: I/G y U/L

Dos bits del primer octeto tienen significado. El bit 0 es el bit Individual/Group: cero significa una dirección unicast para una interfaz, uno significa una dirección de grupo o multicast. El bit 1 es el bit Universal/Local: cero significa que la dirección está administrada globalmente bajo un OUI, uno significa que se asignó localmente, normalmente por software.

Como los dígitos hexadecimales son cuatro bits, estos dos bits siempre se codifican en el último dígito hex del primer octeto. Por eso el segundo carácter del primer octeto es siempre par en una dirección unicast e impar en una dirección multicast, y por eso las direcciones unicast de administración local con patrones como 02, 06, 0A, 0E, 12 y similares aparecen como primer octeto de las direcciones Wi-Fi aleatorizadas.

Primer octetoBinarioI/GU/LSignificado
000000 00000 unicast0 globalInterfaz normal asignada por OUI
020000 00100 unicast1 localAdministración local, a menudo aleatorizada
010000 00011 multicast0 globalGrupo multicast estándar
030000 00111 multicast1 localMulticast de ámbito local
330011 00111 multicast1 localMAC multicast IPv6, prefijo 33:33
FF1111 11111 multicast1 localTrama de broadcast

OUI, EUI-48 y la división global/local

El OUI es una asignación de 24 bits. Cuando el bit U/L es cero, los tres primeros octetos identifican al cesionario y una búsqueda en el registro del IEEE tiene sentido. Cuando el bit U/L es uno, los tres primeros octetos los eligió el dispositivo o el sistema operativo y no puede existir ninguna entrada en el registro, por muy plausible que parezca el prefijo.

El IEEE también emite asignaciones de 36 bits bajo el registro MA-S, que comparten los primeros 24 bits con otros cesionarios y añaden cuatro bits más en el tercer octeto. Una búsqueda que solo comprueba los tres primeros octetos atribuirá esas direcciones al titular equivocado. Si la precisión importa, comprueba el tamaño de la asignación antes de fiarte del nombre del fabricante.

  • MA-L de 24 bits: OUI clásico, tres octetos, el caso habitual
  • MA-M de 28 bits: comparte un bloque de 24 bits con otros cesionarios
  • MA-S de 36 bits: comparte un bloque de 24 bits, añade cuatro bits del tercer octeto
  • Bit U/L activado: omite el registro por completo, no hay cesionario

Direcciones aleatorizadas y por qué ahora fallan las búsquedas

Los sistemas operativos modernos rotan las direcciones Wi-Fi. iOS y macOS usan una dirección privada por red, Android aleatoriza por SSID y Windows ofrece direcciones de hardware aleatorias. Todas ellas activan el bit U/L, que es la señal honesta de que el prefijo no es una asignación de fabricante. Las búsquedas que ignoran el bit producirán un nombre de fabricante para un prefijo que nadie recibió jamás.

La aleatorización también rompe suposiciones en los controles de red. Un filtro MAC no es autenticación, porque la dirección se establece por software en la mayoría de las plataformas. Esa misma propiedad hace que las direcciones MAC sean inútiles como identificador estable de dispositivo en analítica. Si tu producto vincula una licencia o un registro de dispositivo a una dirección MAC, se fragmentará en cada red que rote direcciones y se puede falsificar trivialmente.

  • Dirección aleatorizada: bit U/L activado, prefijo elegido localmente
  • La rotación por red implica que el valor no es un id estable de dispositivo
  • El filtrado MAC es trivial de eludir y no es control de acceso
  • Las máquinas virtuales y los contenedores a menudo heredan o generan prefijos locales
  • Analiza siempre los bits antes de consultar un registro de fabricantes

EUI-64 y el identificador de interfaz link-local de IPv6

EUI-64 convierte una dirección de 48 bits en 64 bits en tres pasos: separa la porción OUI y la porción NIC, inserta FF:FE entre ellas y invierte el bit U/L. La inserción aporta 16 bits extra de longitud; el bit invertido mantiene coherente el significado universal/local en la forma de 64 bits, y por eso el resultado se llama EUI-64 modificado.

El resultado se usa habitualmente como identificador de interfaz de una dirección IPv6 link-local, que siempre está en fe80::/10 y siempre requiere un índice de zona, como un scope id, cuando te conectas a ella. Las extensiones de privacidad sustituyen este identificador por uno aleatorio para las direcciones globales, pero la forma derivada sigue apareciendo en documentación, entornos de laboratorio e inventarios de dispositivos.

PasoValorExplicación
MAC inicial00:1A:2B:3C:4D:5EEUI-48 de 48 bits
Insertar FF:FE00:1A:2B:FF:FE:3C:4D:5EEUI-64 de 64 bits
Invertir bit U/L02:1A:2B:FF:FE:3C:4D:5EEl primer octeto 00 pasa a 02
Formatear como IPv6fe80::21a:2bff:fe3c:4d5eLink-local con ese id de interfaz

Formatos textuales y cómo analizarlos

Los mismos 48 bits aparecen en al menos cuatro notaciones. Unix y Windows usan pares separados por dos puntos. Windows a veces usa guiones. Cisco usa tres grupos de cuatro dígitos hex separados por puntos. Algunas herramientas emiten mayúsculas, otras minúsculas y otras eliminan los separadores por completo. Un analizador debería normalizarlos todos y rechazar cualquier cosa que no sean exactamente 48 bits.

La normalización importa para comparar, pero no para almacenar el original. La notación con dos puntos en minúsculas es la forma canónica más portable. Si aceptas una cadena hex de 12 dígitos sin separadores, sé explícito al respecto, porque aceptarla en silencio permite que un usuario pegue un identificador de 16 dígitos hex que no es una dirección MAC en absoluto.

EstiloEjemploOrigen habitual
Dos puntos00:1a:2b:3c:4d:5eLinux, macOS, la mayoría de las API
Guion00-1a-2b-3c-4d-5eWindows, parte del equipamiento de red
Punteado Cisco001a.2b3c.4d5eIOS y CLI relacionadas
Hex sin separadores001a2b3c4d5eLogs y CSV, ambiguo
Mayúsculas00:1A:2B:3C:4D:5EDocumentación, etiquetas

Errores que una búsqueda debería notificar

Una buena búsqueda distingue entre «esto está mal formado», «esto es de administración local» y «este prefijo es válido pero el cesionario no está en el registro local». Colapsar los tres casos en «desconocido» hace perder el tiempo al usuario, porque las soluciones son completamente distintas.

Los errores de longitud son los más comunes: cinco octetos, siete octetos o un EUI-64 de 64 bits pegado en un campo de 48 bits. Después vienen los errores de caracteres, normalmente una O en lugar de un cero o una I en lugar de un uno por OCR. Luego están los casos lógicos: direcciones multicast, la dirección de broadcast y prefijos de administración local, cada uno de los cuales es sintácticamente válido y semánticamente especial.

SíntomaCausaTratamiento correcto
Cinco octetosPegado truncadoRechazar con un error de longitud
Contiene O o IOCR o error tipográfico manualRechazar como hex no válido
Bit U/L activadoAsignación aleatoria o localOmitir el registro
Bit I/G activadoDirección de grupoNo es una dirección de dispositivo
FF:FF:FF:FF:FF:FFBroadcastRechazar como dirección de interfaz
16 dígitos hexSe proporcionó un EUI-64Rechazar o convertir explícitamente

Generar fixtures MAC que no puedan colisionar

Para datos de prueba, genera siempre direcciones unicast de administración local: pon el primer octeto en 02 y mantén el bit I/G a cero. Esa combinación garantiza que no pertenece a ningún fabricante, así que un fixture nunca podrá confundirse con un dispositivo real, y una herramienta de búsqueda dirá correctamente que el prefijo es local en lugar de inventar un fabricante.

Las herramientas MAC del sitio operan sobre la estructura de 48 bits y no afirman identificar hardware real. Analizan los bits, muestran el OUI como bits en lugar de como garantía de fabricante y pueden derivar una forma EUI-64. Ten en cuenta que el sitio no genera direcciones de dispositivos Bluetooth ni otros identificadores de 48 bits fuera de las herramientas MAC de estilo Ethernet, y no genera números de serie en absoluto.

  • Usa 02 como primer octeto para direcciones unicast sintéticas
  • Nunca generes un OUI de fabricante real junto con una porción NIC aleatoria
  • Mantén los fixtures en un prefijo documentado para que sean localizables
  • Tampoco uses direcciones MAC como identificadores estables de dispositivo en las pruebas

Preguntas

¿Cuántos bits tiene una dirección MAC?+
Cuarenta y ocho bits, seis octetos, normalmente escrita como seis pares hexadecimales. EUI-64 extiende el mismo esquema a 64 bits insertando FF:FE e invirtiendo el bit U/L.
¿Qué me dice el segundo carácter del primer octeto?+
Su bit bajo es el bit I/G, así que un segundo carácter par significa unicast y uno impar significa multicast. El siguiente bit hacia arriba es el bit U/L, y por eso 02 indica una dirección de administración local.
¿Por qué una búsqueda de fabricante no devuelve nada para mi dispositivo?+
Probablemente la dirección esté aleatorizada. Los sistemas operativos modernos activan el bit U/L para las direcciones Wi-Fi privadas, y ningún fabricante tiene asignado un prefijo local.
¿Es una dirección MAC un identificador fiable de dispositivo?+
No. Se establece por software en la mayoría de las plataformas, rota por red en teléfonos y portátiles, y es trivial de falsificar. No vincules licencias ni analítica a ella.
¿Puede la herramienta decirme si una dirección MAC es real?+
No. Analiza la estructura y los bits, y una búsqueda en el registro solo puede reflejar asignaciones de prefijos, no si existe un dispositivo. El sitio no verifica hardware.

Los ejemplos son sintéticos. No utilices una dirección generada para verificaciones de identidad, registro de cuentas ni entregas.

Estándares de referencia

Leer a continuación

Todas las guías