# Dirección MAC

En las redes de computadoras, la dirección MAC (siglas en inglés de Medium Access Control) es un identificador de 48 bits (6 bloques de dos caracteres hexadecimales 8 bits) que corresponde de forma única a una tarjeta o dispositivo de red. Se la conoce también como dirección física, y es única para cada dispositivo. Está determinada y configurada por el IEEE (los primeros 24 bits) y el fabricante (últimos 24 bits) utilizando el organizationally unique identifier. La mayoría de los protocolos que trabajan en la capa 2 del modelo OSI usan una de las tres numeraciones manejadas por el IEEE: MAC-48, EUI-48 y EUI-64, las cuales han sido diseñadas para ser identificadores globalmente únicos. No todos los protocolos de comunicación usan direcciones MAC, y no todos los protocolos requieren identificadores globalmente únicos.

## Descripción

Es también "La Dirección del Hardware de Control de acceso a soportes de un distribuidor que identifica los equipos, los servidores, los routers u otros dispositivos de red. Al mismo tiempo es un identificador único que está disponible en NIC y otros equipamientos de red. La mayoría de los protocolos que trabajan en la capa 2 del modelo OSI usan una de las tres numeraciones manejadas por el IEEE: MAC-48, EUI-48, y EUI-64, que se diseñan para ser globalmente únicos. Un equipo en la red se puede identificar mediante sus direcciones MAC e IP".
Las direcciones MAC son únicas a nivel mundial, puesto que son escritas directamente, en forma binaria, en el hardware en su momento de fabricación. Debido a esto, las direcciones MAC son a veces llamadas burned-in addresses, en inglés.
Si nos fijamos en la definición como cada bloque hexadecimal son 8 dígitos binarios (bits), tendríamos:
    6 * 8 = 48 bits únicos
En la mayoría de los casos no es necesario conocer la dirección MAC, ni para montar una red doméstica, ni para configurar la conexión a internet, usándose esta solo a niveles internos de la red. Sin embargo, es posible añadir un control de hardware en un conmutador o un punto de acceso inalámbrico, para permitir solo a unas MAC concretas el acceso a la red. En este caso, deberán conocerse las MAC de los dispositivos para añadirlos a la lista. Dicho medio de seguridad se puede considerar un refuerzo de otros sistemas de seguridad, ya que teóricamente se trata de una dirección única y permanente, aunque en todos los sistemas operativos hay métodos que permiten a las tarjetas de red identificarse con direcciones MAC distintas de la real.
La dirección MAC es utilizada en varias tecnologías entre las que se incluyen:
* Ethernet
* 802.3 CSMA/CD
* 802.5 o redes en anillo a 4 Mbps o 16 Mbps
* 802.11 redes inalámbricas (Wi-Fi).
* Asynchronous Transfer Mode
MAC opera en la capa 2 del modelo OSI, encargada de hacer fluir la información libre de errores entre dos máquinas conectadas directamente. Para ello se generan tramas, pequeños bloques de información que contienen en su cabecera las direcciones MAC correspondiente al emisor y receptor de la información.

## Obtención de MAC en distintos sistemas operativos
### Windows 2000/XP/Vista/7/8/10/11

En el entorno Windows la Dirección MAC se conoce como «dirección física». La manera más sencilla es abrir una terminal de línea de comandos («cmd» desde Inicio>Ejecutar) y allí usar la instrucción: ipconfig /all, o también se puede usar el comando getmac.

### UNIX, GNU/Linux y Mac OS X

En el entorno de familia *nix (Mac Os X está basado en UNIX), habrá que abrir un terminal y ejecutar el comando: ifconfig. Esto nos muestra las interfaces seguidas de sus respectivas direcciones MAC en el epígrafe ether. (Nota: para ejecutar "ifconfig" algunas distribuciones requieren que se tengan privilegios de root: "sudo ifconfig").
Usando el paquete iproute2, es posible obtener las direcciones MAC de todas las tarjetas ethernet : "ip link list".
Tanto en Mac OS X 10.5, 10.7 o 10.9, para saber la dirección MAC basta con ir a Preferencias del Sistema > Red y dentro del apartado Wi-FI darle al botón Avanzado... En la ventana que saldrá, abajo del todo vendrá la dirección Wifi correspondiente a nuestro ordenador.

### Android

Entrar en Ajustes y seleccionar la configuración de Wi-Fi. Una vez ahí pulsar el botón de menú y a continuación en Avanzado. Ahí se puede ver la MAC address del dispositivo y si está conectado a una red, también la IP actual. Si esto no funciona deberás irte a ajustes o configuración del teléfono, luego buscas la sección Acerca del teléfono, ingresas a esta y vas a estado del teléfono, donde puedes encontrar la MAC de Wi-fi, el IMEI, IMEI SV, el serial del teléfono, el modelo, etc.

### BlackBerry 10

Para obtener la dirección MAC en dispositivos BlackBerry con sistema operativo BlackBerry 10, se debe entrar en Configuración >> Redes y conexiones >> Wi-Fi >> Avanzada >> Información del dispositivo.

### Symbian

Se puede obtener la dirección MAC de las interfaces WLan y Bluetooth: Para ello hay que teclear desde la pantalla de inicio los siguientes códigos: *#62209526# (o sea las teclas que forman *#mac0wlan#) para Wlan y *#2820# (o sea *#bta0#) para bluetooth.

### Windows Mobile 6

Se puede obtener la dirección MAC del dispositivo WiFi yendo al Gestor de conexiones => Wifi => Configuración - Configuración WLAN - Estado de Conexión. Aparece bajo el epígrafe "Dirección MAC".

### Windows Phone 8

Se puede observar la dirección MAC entrando a Configuración >> Información >> Más información. Donde se muestra como:
Dirección MAC: xx-xx-xx-xx-xx-xx.

## Detalles de la dirección MAC

La dirección MAC original IEEE 802, ahora oficialmente llamada "MAC-48", viene con la especificación Ethernet. Desde que los diseñadores originales de Ethernet tuvieran la visión de usar una dirección de 48-bits de espacio, hay potencialmente 2^48 = 281×10$^{12}$ (o 281 474 976 710 656) direcciones MAC posibles.
Cada uno de los tres sistemas numéricos usan el mismo formato y difieren tan solo en el tamaño del identificador. Las direcciones pueden ser "direcciones universalmente administradas" o "localmente administradas".
Una "dirección universalmente administrada" es únicamente asignada a un dispositivo por su fabricante, estas algunas veces son llamadas "burned-in addresses". Los tres primeros octetos (en orden de transmisión) identifican a la organización que publicó el identificador y son conocidas como "identificador de organización único" (OUI). Los siguientes tres (MAC-48 y EUI-48) o cinco (EUI-64) octetos son asignados por esta organización a su discreción, conforme al principio de la unicidad. El IEEE espera que el espacio de la MAC-48 se acabe no antes del año 2100; de las EUI-64 no se espera se agoten en un futuro previsible.
Con esto podemos determinar como si fuera una huella digital, desde que dispositivo de red se emitió el paquete de datos aunque este cambie de dirección IP, ya que este código se ha acordado por cada fabricante de dispositivos.

## Cambiar la dirección MAC

A pesar de que cada dispositivo de red tiene una dirección MAC única globalmente que lo identifica y lo hace único por ser especial y que ninguna otra sea igual, es la capa de sistema operativo la que gestiona y distribuye en la red, con lo que se puede modificar la dirección MAC que identifica la interfaz de red. Esta práctica es conocida como MAC spoofing.

### Linux

* ifconfig NetworkAddress down
* ifconfig NetworkAddress hw ether 91:75:1a:ec:9a:c7NetworkAddress
* ifconfig NetworkAddress upNetworkAddress
* /etc/init.d/network-manager content://media/external/file/44restartNetworkAddress

### Microsoft Windows

En Windows, no puede cambiarse la MAC por comandos, pero puede cambiarse en la configuración de la tarjeta de red en el Panel de control, o alterando el valor "NetworkAddress" en la clave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}.

### macOS

En mac, se lleva a cabo el mismo proceso de UNIX. Que sería ejecutar el siguiente código en terminal
* ifconfig en0 lladdr nombredelainterfaz
* en0 puede variar según su adaptador y dispositivo de red, para averiguar el dispositivo al cual cambiar la dirección mac se ejecuta en el terminal el comando ifconfig -a, en nombredelainterfaz se digita la dirección mac nueva que debe tener el siguiente formato: aa:bb:cc:dd:ee:ff