¿Por qué los sistemas operativos permiten cambiar la dirección MAC de una NIC?

Puede haber ocasiones en las que un MAC sea la clave para una cantidad significativa de infraestructura, como un sistema de computadoras en red en una LAN que no sea servido por DNS, y que espere una cierta consistencia de IP con el tiempo. Reemplazar el hardware defectuoso debería resultar en un nuevo MAC, sin embargo, la suplantación de MAC puede hacer que el cambio sea invisible para todo el resto del sistema.
El ISP de mi hogar crea nombres de IP que son una convolución de los MAC en el enrutador de mi hogar además de otras cosas que solo el ISP conoce. Existían en algunos servidores web, páginas con ese nombre de IP incrustado, y si hubiera cambiado el MAC del enrutador, esas páginas habrían terminado con enlaces rotos. Afortunadamente, cuando reemplacé el enrutador, pude falsificar el MAC y retener el nombre de IP que usé originalmente. Esto no fue hecho por un sistema operativo en una PC de escritorio o servidor, sino en un enrutador / conmutador básico (que posiblemente ejecute Linux internamente), pero el mismo propósito podría haberse cumplido en un sistema operativo de computadora completo.
Por cierto, esta capacidad es posible debido a la forma en que se fabrican la mayoría de las NIC (tal vez todas). El conjunto de chips que hace la interfaz de red real tiene uno o más registros, en los que el sistema operativo escribe el MAC. Los chips no saben nada sobre sus MAC hasta que se escribe este registro. La NIC contiene un chip (generalmente) separado (PROM) en el que el fabricante de la NIC ha quemado permanentemente la MAC única para esa NIC. Esto está expuesto a la CPU para que el sistema operativo lea y luego escriba en el registro del chip ethernet. El sistema operativo es libre de ignorar el valor grabado en la PROM y escribir lo que considere apropiado en el registro de configuración MAC del chip ethernet.

A veces, cuando obtiene un dispositivo de red de un ISP (un módem de cable, por ejemplo), solo lo han aprovisionado para un dispositivo. Lo que esto significa es que antes de que le den el dispositivo, lo borran. La próxima vez que el dispositivo se inicie y vea algo conectado a él, aprovisionará automáticamente ese dispositivo por dirección MAC. El resultado de este aprovisionamiento es que el dispositivo obtiene una dirección IP del ISP (puede ser una dirección IP fija o puede ser dinámica).

Si quisiera colocar varias computadoras detrás de este único dispositivo de red (con su única dirección MAC / IP), colocaría, por ejemplo, un firewall u otro dispositivo de traducción de direcciones de red (NAT) entre las computadoras de su casa u oficina y la red dispositivo. Una forma de hacer que este nuevo dispositivo sea reconocido por el dispositivo de red es clonar la dirección MAC de la única computadora que se estaba utilizando antes. En general, también puede llamar a su ISP y pedirle que borre o reaprovisione el dispositivo de red.

El dispositivo NAT toma paquetes de su red interna y los convierte para que se vean como paquetes del dispositivo que el dispositivo de red conoce. Tenga en cuenta que el NAT mostrará una dirección MAC dentro de la red y otra fuera de la red (la que está fuera podría ser un clon de una de las computadoras dentro).

en los viejos tiempos, antes del advenimiento de los protocolos tcp-ip, había muchos otros protocolos disponibles para las comunicaciones de red de área local.
en algunas implementaciones, se permitió que las direcciones de control de acceso a los medios se definieran por diseño, en una configuración llamada LAA (direcciones administradas localmente). en arquitecturas ibm esta práctica era bastante común.

@mgua

El fabricante de la tarjeta de red establece la dirección MAC de una NIC. Los primeros tres octetos son la identificación del fabricante y los últimos tres son la dirección específica del dispositivo. El hardware informa el MAC al sistema operativo para que el software sepa qué dirección usar al crear un paquete de red.

No hay nada que diga que el software no puede usar ninguna dirección en lugar de la dirección física del hardware. Permitir que el usuario cambie la dirección MAC es muy similar a permitir que el usuario cambie la dirección IP de su computadora. Dependiendo de la situación, un usuario puede necesitar o querer cambiar algunos parámetros para satisfacer sus necesidades.

Puede ser necesario cambiar una dirección IP o establecer una dirección IP estática debido al diseño y la configuración de la red. Del mismo modo, puede haber algunas situaciones en las que un usuario quiera modificar su dirección MAC.

1. Prueba
El usuario puede querer cambiar la dirección MAC informada a la red para probar diferentes configuraciones de red, dispositivos de seguridad o nuevos protocolos.

2. Soluciones alternativas
Tal vez hay un problema en la red o una pieza de hardware de red está fuera del control del usuario. En este caso, el usuario puede querer cambiar su dirección MAC para que aparezca como una ‘nueva’ computadora en la red.

3. Medios nefastos
Cambiar la dirección MAC en su computadora puede permitirle eludir algunas técnicas de seguridad y filtrado en juego en una red. ¿Alguna vez has estado en un café que ofrece “1 hora de WiFi gratis”? Después de que su hora se acabe, su dirección MAC suele ser todo lo que se necesita para obtener otra hora libre.

Los proveedores de servicios de Internet como Comcast y otras redes de cable también lo autentican mediante la dirección MAC.

Entonces, si se asignó a una anterior y ahora tiene una nueva y la anterior está dañada, puede clonar su dirección MAC o llamar al ISP.

Es fácil clonar el MAC 🙂

Por un lado, DECNET lo requiere: el LSB de la dirección MAC se cambia para que coincida con el LSB de la dirección DECNET (o algo así).