Pregunta ¿Por qué no se pueden usar las direcciones MAC en lugar de IPv4 | 6 para redes? [cerrado]


Estoy leyendo sobre TCP / IP y otros protocolos y tecnologías relacionados. Las direcciones MAC se describen como (razonablemente :) únicas y con un gran espacio de posibilidad (varios cientos de trillones), mientras que también se asignan a todas las interfaces de red. ¿Cuáles son las razones históricas y técnicas por las que se utilizan las direcciones IPv4 o IPv6 en lugar de las direcciones MAC para la comunicación entre redes?

¿Me estoy perdiendo algo fundamental o es solo una razón tonta (por ejemplo, construir sobre la tecnología heredada)?


181
2017-07-24 12:51


origen


Corrección pedante: razonablemente único; Las tarjetas con direcciones MAC de HW idénticas se han visto en la naturaleza: este es un problema de red "divertido" para depurar. - Piskvor
Personalmente fui testigo de un conductor de buggy que en realidad asignado la misma dirección MAC a diferentes tarjetas de red en diferentes máquinas (que tenían direcciones HW únicas antes de instalar ese controlador). Bueno eso fue doloroso. - Massimo
Massimo, he visto exactamente lo mismo. No es raro que un controlador haga eso en el desarrollo y que los programadores se olviden de activar ese componente de cuándo se va a producir. @Felix, también es común que los fabricantes reutilicen los MAC a lo largo del tiempo y en diferentes partes del mundo. Una tarjeta vendida en 2005 en los EE. UU. Podría tener el mismo MAC que una vendida en China en 2013, por ejemplo. - Robert Kaucher
Dirigir un paquete con una dirección MAC sería como enviar una carta con un número de seguro social. - Mikey
Como tu saber ¿Dónde está una dirección MAC específica en este momento? ¿Por adelantado, sin necesidad de que todos los nodos en Internet sean notificados cuando te mudas a otra red? - Thorbjørn Ravn Andersen


Respuestas:


La dirección MAC puede ser única, pero no hay nada especial en el número que indique dónde está. MAC 00-00-00-00-00-00 podría estar en el otro lado del planeta desde 00-00-00-00-00-01.

IP es un esquema de numeración arbitrario impuesto de manera jerárquica en un grupo de computadoras para distinguirlos lógicamente como un grupo (eso es lo que es una subred). El envío de mensajes entre esos grupos se realiza mediante tablas de enrutamiento, que se dividen en múltiples niveles para que no tengamos que realizar un seguimiento de cada subred. Por ejemplo, 17.x.x.x Está dentro de la red de Apple. A partir de ahí, Apple sabrá dónde se encuentran cada una de sus miles de subredes y cómo llegar a ellas (nadie más necesita conocer esta información, solo necesita saber que 17. todo va a Apple).

También es bastante fácil relacionar esto con otro par de sistemas. Tiene un número de identificación emitido por el estado, ¿por qué necesitaría una dirección de correo si ese número de identificación ya es exclusivo de usted? Necesita la dirección de correo porque es un sistema arbitrario que describe dónde debe ir el destino único para las comunicaciones.


341
2017-07-24 12:56



Esta es una respuesta genial. Habría agregado que las direcciones MAC se usan finalmente en las comunicaciones IP una vez que las computadoras determinan que están en la misma subred; Es por eso que el envenenamiento ARP funciona como un ataque. Lo mismo con una puerta de enlace predeterminada, la computadora dirige los paquetes destinados a otra subred a la dirección MAC devuelta por la búsqueda ARP para la IP de la puerta de enlace predeterminada. El direccionamiento de capa 3 / IP es utilizado principalmente por los enrutadores y solo lo utiliza el host para determinar si el destino está en la misma subred. - Sean C.
@SeanC, las direcciones MAC se utilizan finalmente en las comunicaciones IP a través de los protocolos de línea basados ​​en 802.1 (Ethernet, WiFi, Token Ring, etc.). Pero no sobre protocolos ATM, como PoSDH y IPoATM. - Chris S
Además, puede mantener la misma dirección IP cuando deba reemplazar su tarjeta de red (o la computadora completa). Imagínese lo molesto que sería sin la abstracción de IP. - OrangeDog
@ChrisS Tengo un amigo que, como administrador de sistemas, recibió un lote de tarjetas de un solo proveedor y las tarjetas solo tenían una dirección MAC en toda la paleta. El vendedor dijo que las tarjetas no se mezclaron correctamente con la distribución minorista, por lo que hubo duplicados, ya que el pedido fue una caída directa de la fábrica. Antes de que las tarjetas fueran distribuidas al por menor, se suponía que debían mezclarse para esparcir los falsos. Por lo tanto, para un proveedor determinado, las direcciones MAC no son únicas, y mucho menos en todos los proveedores. - Jarrod Roberson
Hay una variedad de razones históricas para las repeticiones de direcciones de mac duplicadas incluyendo errores de firmware del proveedor. - Mike Pennington


Porque las tablas de enrutamiento serían increíblemente grandes.

Las direcciones IP se asignan jerárquicamente, por lo que un enrutador puede agrupar rutas por prefijos de dirección. La cantidad de sistemas autónomos presentes en la red ahora es lo suficientemente razonable como para caber en el hardware actual.

Por otro lado, la distribución de direcciones MAC a través de la red es aleatoria y no tiene ninguna relación con la topología. La agrupación de rutas sería imposible, cada enrutador tendría que realizar un seguimiento de las rutas para cada dispositivo que transmita el tráfico a través de él. Eso es lo que hacen los switches de la capa 2, y eso no se escala mucho más allá de un cierto número de hosts.


73
2017-07-24 12:52



¿Puedes elaborar sobre esto? ¿Por qué lo harían? ¿Por qué ese no es el caso con IPv *? - Félix Saparelli
No hay ninguna razón intrínseca por la que las tablas de enrutadores que usan una dirección con formato MAC sean "increíblemente grandes" en comparación con los formatos IPv4 / 6. El problema es que la asignación de direcciones IP está vinculada a una jerarquía que hace que el enrutamiento WAN sea factible. Las direcciones MAC son asignadas a los dispositivos Ethernet por los fabricantes (y se pueden cambiar en el software) y, a medida que el dispositivo de hardware se mueve, hacer que las revisiones ad hoc de las tablas de enrutamiento de WAN sea una tarea "increíblemente grande". - hardmath


El mundo no se ejecuta exclusivamente en Ethernet (al menos históricamente). La capa IP es independiente de la capa de hardware debajo de ella.

Los nodos PPP no tienen direcciones Mac. Tampoco lo hacen arcnet, token ring, fddi, hppi. Es posible que esas otras normas no sean tan relevantes hoy en día, pero Ethernet puede reemplazarse con otras tecnologías en el futuro y sería transparente para la capa IP.

Hay una discusión más larga sobre cómo seguimos inventando nuevos protocolos de hardware y llamándolos Ethernet, pero estoy divagando ...


36
2017-07-24 16:03



Token Ring tiene direcciones MAC. - Chris S
¿Quiere decir que tampoco pueden cambiarse a ipv6 porque el nodo PPP no tiene una dirección v6? (O al menos no tenía uno hace 5-10 años). Por lo que puedo decir, nunca detuve el despliegue de ipv6 hoy. Esto tampoco hace una diferencia para MAC. - Dorus
@Dorus: Tu comentario no tiene sentido. Los nodos PPP pueden tener direcciones IPv4 e IPv6, precisamente porque IP se basa en los protocolos subyacentes, como Ethernet o PPP. Sin embargo, los nodos PPP no tienen una dirección MAC (porque el estándar PPP no los tiene). - sleske
3 años después (y un poco más informado), me encantaría leer esa "discusión más larga sobre cómo seguimos inventando nuevos protocolos de hardware y llamándolos Ethernet". ;PAG - Félix Saparelli
Este es un buen comienzo - standards.ieee.org/events/ethernet/history.html - Jeff Sacksteder


Además del enrutamiento jerárquico de la IP, el hecho de que estén separados de las direcciones MAC le permite cambiar su tarjeta de red o su computadora completa al tiempo que conserva la misma dirección IP (y, por lo tanto, la topología lógica de la red).

Esta abstracción permite una red mucho más flexible y fácil de mantener.


30
2017-07-24 14:46





Echa un vistazo a la Modelo OSI: http://en.wikipedia.org/wiki/OSI_model

Esto explica por qué no tiene sentido hacer enrutamiento, un concepto de capa 3, decisiones basadas en un mecanismo físico de capa 2.

Las redes modernas se dividen en muchas capas diferentes para lograr su comunicación de extremo a extremo. Su tarjeta de red (a la que se dirige la dirección mac [dirección física]) solo debe ser responsable de comunicarse con sus compañeros en su red física.

La comunicación que se le permite realizar con su dirección MAC se limitará a otros dispositivos que residan dentro del contacto físico con su máquina. En Internet, por ejemplo, no está conectado físicamente a cada máquina. Es por eso que utilizamos el mecanismo TCP / IP (una capa 3, dirección lógica) cuando necesitamos comunicarnos con una máquina a la que no estamos conectados físicamente.


22
2017-07-24 15:37



+1 por mencionar el modelo OSI. - Massimo


b0fh tiene razón, pero también porque las direcciones MAC no siempre son únicas.

Ver por ejemplo en escenarios de virtualización. Aquí varios hosts pueden servir máquinas virtuales con las mismas direcciones MAC.


8
2017-07-24 12:54





Las tablas de enrutamiento para las direcciones MAC necesitarían casi todos los dispositivos con una dirección MAC en la lista. El enrutamiento a Internet para IP es una sola entrada 0.0.0.0/0. Para las clases de redes se desglosan en 10.0.0.0/8 172.16.0.0/16 y 192.168.0.0/24. Muchos de estos se pueden agregar como 172.16.0.0/12 y 192.168.0.0/16, lo que reduce aún más el tamaño de la tabla de enrutamiento.

Las rutas se buscan en orden inverso al número de bits en su máscara. Esto hace que el enrutamiento a 192.168.100.0/24 funcione cuando hay una ruta para 192.168.0.0/16 y otra para 0.0.0.0/0 (ruta predeterminada).

EDITAR: Originalmente, el rango de IP se dividió en varias clases; A, B y C son las más significativas. La clase A formó la primera mitad del rango de direcciones, el rango B el siguiente trimestre y el rango C los siguientes ocho del rango. Estas clases tenían máscaras de 8, 16 y 24 bits respectivamente. Más tarde, el uso estricto de estas máscaras se eliminó y la asignación de direcciones se realizó en una variedad de tamaños.

El tamaño de la asignación es siempre una potencia de 2 y la dirección más baja y más alta en cada asignación está reservada. Cada asignación también tendrá una dirección para un enrutador. Esta es a menudo la dirección no reservada más alta o más baja. La asignación práctica más pequeña es una dirección / 30.

IPv6 utiliza la misma forma de asignación con / 64 la asignación más pequeña que puede aparecer en Internet. Por lo general, a los ISP se les asignará una asignación mucho mayor, que es todo lo que los enrutadores de Internet deberían conocer. Las asignaciones esperadas se especifican en los RFC. El ISP necesitaría saber cómo enrutar su propia subred y qué direcciones enrutar a qué enrutadores de interconexión. Esto es significativamente más simple que saber cómo enrutar cada dirección mac.


4
2017-07-24 13:38



No existen Las clases en redes más y no han estado desde 1994. = [ - Chris S
Las búsquedas @ChrisS IPv4 PTR todavía se realizan por clase, aunque la delegación es posible. Las agregaciones aún se aplican con o sin clases, y las agregaciones B y C todavía se aplican incluso antes de las redes sin clases. - BillThor
Las búsquedas de PTR se realizan por octeto, no hay clases. Ver RFC 1517 a 1520. - Chris S
@ChrisS Entre las personas con las que trabajo, las clases se usan para referirse al número de octetos en la máscara de red A = 1, B = 2 y C = 3. No los asociamos con rangos históricos, y dividiremos la clase A 10.0.0.0 en segmentos B y C. Las clases viven en la tradición, si no su significado original. - BillThor


Creo que el punto principal que intentan expresar es que las direcciones MAC están determinadas por los proveedores, por lo que no existe un esquema de direccionamiento coherente que pueda ser adherido en una subred local debido a la gran variedad de fabricantes que hacen interfaces.

Las direcciones MAC se utilizan cuando la dirección de destino está en la subred local (192.168.0.x, por ejemplo). Cuando el tráfico no coincide con la subred local, la computadora se refiere a la tabla de enrutamiento. En general, la tabla de enrutamiento indicará a cualquier tráfico que no coincida con la subred local (0.0.0.0) que se dirija a la puerta de enlace local, momento en el que se eliminará por completo la afiliación a las direcciones MAC. La única forma en que las direcciones MAC podrían usarse globalmente sería tener una subred enorme y plana, que sería completamente inviable.


2
2017-07-24 13:25





La dirección MAC de una dirección IP de destino solo es útil, para la entrega de paquetes, dentro de un único dominio de difusión local.


2
2017-07-25 03:15