Motivo de una dirección MAC y una dirección IP

25

Si mi computadora tiene una dirección IP, ¿por qué necesita una dirección MAC?

usuario1369975
fuente
2
Para darle la mejor respuesta, ¿podría ampliar su pregunta para incluir por qué cree que no necesitaría una dirección MAC si su computadora tiene una dirección IP?
Brett Lykins
1
Yo recomendaría elegir un buen libro básico sobre Redes y leerlo; valdrá la pena Contestará esta pregunta y muchas más: amazon.com/Computer-Networking-Top-Down-Approach-Edition/dp/…
Manoj Pandey
44
Esto puede sonar sarcástico, pero es la forma más sencilla de reducir la confusión. ¿Por qué pusiste una NIC de ethernet en tu computadora? Responda esa pregunta, y responde la pregunta sobre la necesidad de una dirección mac.
Mike Pennington
44
@Reprovo, el único lugar donde los comentarios / respuestas realmente hacen esta declaración es cuando el OP responde a la respuesta de Teun Vink con el deseo de evitar modelos de red en las respuestas. Si no sabe los por qué y cómo de los modelos de red, realmente no comprende su red y "hacer el trabajo" será mucho más doloroso o creará problemas adicionales. Hay muchas cosas que realmente no necesita saber como profesional de la red (por ejemplo, cómo se colocan los bits en el cable, etc.), pero los modelos de red no son algo que puedan evitar al menos obtener una comprensión básica.
YLearn
2
@ user1369975, creo que te estás perdiendo el punto. No estamos diciendo que la pregunta no sea válida, ni estamos diciendo que las personas no necesitan aprender. Sin embargo, este es un sitio para ingenieros / profesionales de redes y no es razonable pedir una respuesta aquí, ignorando los fundamentos básicos de las redes. Si desea una respuesta no dirigida a otros profesionales de la red, debe preguntarla en uno de los otros sitios, como SuperUser .
YLearn

Respuestas:

13

sin entrar en el modelo OSI, la capa TCP, etc.

En el pasado, se crearon redes: algunas computadoras se comunicaban entre sí para compartir algo. Para hacer eso, necesitan saber quién estaba hablando y con quién se estaba hablando. Entonces, en lugar de darle un nombre a cada computadora, les dimos una identificación. Esta identificación se llama dirección MAC, debe identificar de manera única cada computadora.

(ok, identifique cada tarjeta de red, pero en ese momento, podría pensar una dirección MAC para cada computadora).

No había una especificación única sobre cómo las computadoras se hablarían entre sí: aparecieron muchos protocolos: TCP / IP, IPX / SPX, etc. Cada protocolo especificaría las cosas como pensaban que estaba bien. Por ejemplo, IPX / SPX abordaría cada computadora utilizando la dirección MAC y algo más de información.

Pero el protocolo TCP / IP fue diseñado un poco diferente: decidieron que tener una dirección virtual, hecha de 4 bytes (0.0.0.0 a 255.255.255.255) era suficiente, y era aún más fácil de administrar: no importa si todas sus tarjetas de red tienen una dirección MAC similar o no, agruparemos nuestra computadora para que todas las direcciones TCP / IP que comenzaron con 10.0.xx formen parte del grupo de ingeniería, y las de 10.1.xx sean las impresoras, y. ..

Entonces, si una dirección TCP / IP necesita comunicarse con otra, solo usa la dirección TCP / IP. Pero los dispositivos de red necesitan saber a qué tarjeta de red va ese mensaje, por lo que, de alguna manera, traducen la dirección TCP / IP a la dirección MAC.

¿Por qué no simplemente eliminar el MAC y en su lugar usar solo TCP / IP?

algunas razones:

  • fácil de agrupar direcciones TCP / IP,
  • todos los dispositivos están diseñados para cuidar la dirección MAC, en ese requisito de bajo nivel, y tendrían que cambiarse
  • A pesar de ser la gran mayoría (creo :-P), algunos otros protocolos todavía están en uso y dependen de la dirección MAC
woliveirajr
fuente
25

Las direcciones MAC y las direcciones IP operan en diferentes capas del conjunto de protocolos de Internet . Las direcciones MAC se usan para identificar máquinas dentro de la misma red de transmisión en la capa 2, mientras que las direcciones IP se usan en la capa 3 para identificar máquinas en diferentes redes.

Incluso si su computadora tiene una dirección IP, aún necesita una dirección MAC para encontrar otras máquinas en la misma red (especialmente el enrutador / puerta de enlace al resto de la red / Internet), ya que cada capa está usando capas subyacentes. En la página mencionada anteriormente, puede encontrar algunos diagramas agradables que explican el conjunto de protocolos en detalle.

Teun Vink
fuente
, muchas gracias por su respuesta, pero sería mejor si alguien pudiera dar una respuesta, sin entrar en las especificaciones de la capa OSI o la capa TCP
user1369975
11
Si eso es demasiado difícil, este realmente no es el sitio para ti. Podría argumentar que esta pregunta está fuera de tema, ya que esto se considera de conocimiento común para los ingenieros de redes.
Teun Vink
11
@ user1369975, los modelos a los que hace referencia son los marcos de trabajo para el funcionamiento de las redes (tanto de hardware como de software). Sin esa comprensión básica, no habría una respuesta significativa a su pregunta. Eso sería similar a preguntar (sobre un ciudadano estadounidense), "si tienen un nombre por qué necesitan un número de seguro social" sin permitir la mención del gobierno en la respuesta.
YLearn
55
Piense en una dirección MAC como una descripción de una casa en su calle. Para sus vecinos, todos entenderán "La casa verde" o "La casa del Sr. Johnsons" o "El dúplex en la esquina": son comparables a una dirección MAC, descriptiva solo localmente. Una dirección IP es públicamente enrutable, por lo que sería como usar las direcciones completas: 123 Main St, Somewhere, CA 92069. Entonces supongo que IP a MAC sería como el cartero que viene a la calle y grita "¿QUIÉN ESTÁ EN 123 PRINCIPAL? !?!? " y el Sr. Johnson escuchándolo y diciendo "¡Aquí, la casa verde!" ¿Supongo? Horrible analogía.
David Houde
3
Eso explica por qué es necesario dada la arquitectura actual. Pero, ¿por qué se diseñó la arquitectura de esa manera en primer lugar? Fácilmente podría imaginar un mundo donde solo hay direcciones IP locales y direcciones IP WAN. Es técnicamente posible.
Hola Mundo,
17

Cuando comprenda que la comunicación de IP a IP es realmente solo una serie de comunicación de MAC a MAC que tiene lugar en cada salto de enrutador, entonces verá por qué ambas son necesarias.

El encabezado IP de un paquete que deja su estación de trabajo destinada a una IP en una subred diferente mantendrá la IP de origen y la IP de destino, olvidando por el momento la NAT. [Más adelante, analizaré lo que sucede cuando el destino está dentro de la misma subred.] El encabezado de Ethernet contiene su MAC de origen y el MAC de destino de su puerta de enlace predeterminada. No hay conocimiento del destino final MAC desde su perspectiva. Ese primer enrutador reescribirá el MAC de origen para sí mismo y el MAC de destino para el siguiente salto de enrutador, y así sucesivamente, hasta que el paquete llegue al último enrutador que esté conectado directamente a la subred de destino.

Para intentar una ilustración simple, considere los encabezados L2 / L3 a medida que un paquete se mueve de la IP de origen (sIP) a una IP de destino (dIP) y las MAC de origen y destino se reescriben en el camino - fs = first-source y ld = último destino, y r1-r3 son enrutadores:

fsMAC-r1MAC / sIP-dIP 
r1MAC-r2MAC / sIP-dIP
r2MAC-r3MAC / sIP-dIP
r3MAC-ldMAC / sIP-dIP

Los conmutadores L2 involucrados no modificarán las direcciones MAC.

Ahora, para comunicarse con otra IP dentro de su subred, se necesita una comunicación MAC directa, pero para obtener esa dirección MAC se requiere el protocolo ARP que utiliza una transmisión en la subred para encontrarla. Por cierto, así es como su estación de trabajo obtiene la dirección MAC de su puerta de enlace predeterminada que debe existir en su misma subred.

generalnetworkerror
fuente
3
En resumen, MACes lo que lleva el mensaje de un salto a otro, mientras que IP realiza un seguimiento de la fuente y el destino originales. Esto parece análogo a una oficina de correos, donde dirijo mi carta a la abuela en Phoenix, pero al cartero que la recoge del buzón solo le importa llevarla a la oficina de correos, y a la oficina de correos solo le importa llevarla a la clasificación centre etc ...
CodyBugstein
3
Sin embargo, mi pregunta es, ¿por qué tener un protocolo separado para MAC? ¿Por qué no solo determinar la siguiente dirección IP a la que saltar y almacenar las IP de origen / destino actuales junto con las IP de origen / destino originales?
CodyBugstein
@ Imray: el primer problema con la eliminación del protocolo MAC requiere un nuevo diseño / reescritura de los estándares Ethernet y TCP / IP. En segundo lugar, IP no es el único protocolo en L3 que usa direcciones MAC en L2 para comunicarse. En tercer lugar, las direcciones MAC normalmente están vinculadas a las direcciones de hardware (grabadas) en las NIC, mientras que la IP en el nivel superior puede ser algo arbitraria por flexibilidad. Cuarto, los MAC solo son relevantes localmente, mientras que las IP son relevantes a nivel mundial (sin considerar los cambios más recientes con NAT y direcciones privadas que no formaban parte del diseño original).
generalnetworkerror
14

No hay nada que le impida físicamente diseñar una red que solo tenga una dirección IP para L2 y L3. Luego, el 'conmutador ethernet' aprendería la dirección SIP de los paquetes entrantes y se desbordaría o reenviaría hacia la dirección DIP.

Sin embargo, esta red solo admitiría IP, cuando llegue la próxima generación de IPvX, no funcionaría, ya que el 'conmutador ethernet' no podría admitir ese protocolo. Tampoco podría ejecutar varios otros protocolos, como IPX y AppleTalk, o algún protocolo nuevo que esté desarrollando y probando en su hogar.

Las capas de abstracción aumentan la velocidad de desarrollo y fomentan la innovación, ya que no es necesario reconstruir toda la casa para cambiar una ventana.

Ahora podría haber ejecutado los mismos conmutadores de ethernet y migrar su red entre IPX a IPv4 a IPv6, sin tocar su LAN en absoluto.

ytti
fuente
No hay nada que le impida físicamente diseñar esta red, aparte de estos componentes, que existen solo en su imaginación: A) un conmutador ethernet que aprende las direcciones IP de origen B) una NIC ethernet sin una dirección mac
Mike Pennington,
3

La dirección IP y la dirección MAC tienen diferentes propósitos (pero cruciales):

La dirección MAC obtiene una trama de una NIC a la siguiente. La dirección IP obtiene un paquete de una computadora al servidor

Entonces, dado lo siguiente:

Source Computer  <--->  RouterA  <--->  RouterB  <--->  Destination Server

Lo que dirige el paquete al "Origen" al "Destino" es la dirección IP. Pero lo que lleva el paquete del equipo de origen al enrutador A, y luego del enrutador A al enrutador B, y luego del enrutador B al destino, son las direcciones MAC.

Puedes ver la relación en esta ilustración:

Paquetes de viaje: cómo se mueven los paquetes a través de Internet - pracnet.net/pt

Eddie
fuente
Por supuesto, es muy común que los enlaces de enrutador a enrutador utilicen un protocolo que no tenga direcciones MAC.
Ron Maupin
@RonMaupin Sí. Por supuesto. Pero ... ¿cómo es eso relevante dada la pregunta formulada específicamente sobre las direcciones MAC =)?
Eddie
Simplemente parece que su respuesta implica que habrá una dirección MAC asignada en cada salto, lo que puede ser engañoso. También funciona si su diagrama muestra direcciones MAC solo en el primer y último salto. Está un poco incompleto, por eso hice el comentario.
Ron Maupin
1

El protocolo IP proporciona la base para soportar la noción de subredes y enrutamiento . Esto significa que IP no asume que su destino está en la misma red; si no lo está, su tráfico debe reenviarse a través de un dispositivo intermediario como un enrutador. IP tiene campos de límite de salto / TTL y tales que admiten esto.

Ethernet asume que el MAC de destino es directamente accesible cuando los datos se envían desde su interfaz. Ethernet se diseñó originalmente cuando la forma más común de conectar computadoras en una red era a través de una topología de bus físico. A pesar de que casi todo el tráfico de Ethernet por cable está conmutado ahora, lógicamente todavía funciona como una topología de bus. Entonces, la suposición subyacente con Ethernet es que el nodo con el MAC de destino está físicamente en la misma red. No existe tal suposición con IP.

Supongo que podría "piratear" Ethernet para hacer subredes y enrutamiento, pero también podría diseñar un protocolo que no se base en los detalles y suposiciones de bajo nivel de Ethernet, y es por eso que tenemos IP.

LawrenceC
fuente
0

Para ser lo más simple posible:

Una dirección Mac es la dirección física o virtual de su tarjeta NIC o interfaz de red. Desde una computadora en el punto de vista de una red, es la dirección física de la tarjeta NIC de esa computadora. Se utiliza para llevar información a esa computadora en la capa 2 del modelo OSI.

La dirección IP se requiere en la capa 3. Se requiere que se comunique con computadoras en diferentes subredes y dispositivos. La dirección IP verifica "dónde" está ubicado el dispositivo dentro de una red.

Las direcciones IP y las direcciones Mac se usan en conjunto. Address Resolution Protocol se utiliza para vincular los dos juntos por resolver direcciones IP a direcciones MAC dentro de la capa de enlace dentro de una única red.

Es posible que también desee consultar aquí para obtener una explicación más detallada.

HAL
fuente
1
Manteniéndolo simple: si tienes un nombre, te identificas en la localidad. Es necesario tener un SSN, para mantenerlo identificado en el nivel mundial
pulsarjune
-2

La dirección MAC representa los componentes de hardware que ensambla, es constante y los sistemas diferentes en nuestra red fabricados por diferentes proveedores tienen un rango muy diferente de direcciones MAC para que sean difíciles de organizar como una red. Pero usando direcciones IP podemos conectar los dispositivos en nuestro red en un rango que es direcciones simultáneas. Tampoco podemos enviar nuestros mac addrees a redes externas

Sunnychen
fuente
-2

Para empezar, esta es una muy buena pregunta, que toca los fundamentos básicos de la red. La conclusión de su pregunta es que realmente no necesitamos una dirección MAC para lograr la conectividad. ¡Teóricamente, se podría construir una red implementando direcciones IP solo! Sin embargo, pueden surgir algunas dificultades prácticas al utilizar dicho esquema. Si espera asignar manualmente una dirección IP a cada dispositivo de red, puede evitar las principales dificultades. Sin embargo, si necesita asignar automáticamente direcciones IP, como cuando hay demasiados nodos de red para administrar manualmente, entonces no hay forma de asegurarse de que a cada nodo se le asigne exactamente una sola dirección IP, o un número predeterminado de ellas, porque no puede distinguir uno del otro, a menos que la entidad de distribución de direcciones pueda identificar de manera única e inequívoca el dispositivo solicitante, por ejemplo por su dirección MAC, que se supone que es única para cualquier dispositivo en una LAN. Tal dispositivo no identificable puede pedir repetidamente direcciones IP adicionales y, eventualmente, causar estragos en la viabilidad de la red. Volviendo al tema, todo lo que necesita para establecer una red solo IP es permitir que la capa de enlace de datos del adaptador de interfaz de red pase a través de cualquier marco de datos que reciba, directamente a la capa de red, independientemente de cualquier tipo de dirección MAC comparable, donde pueda se filtrará de acuerdo con su dirección IP de destino, en lugar de filtrarse en la capa de datos. Solo para ilustrar el concepto, suponga que se establece una red mediante la interconexión de puertos UART RS-232: los dispositivos UART no tienen direcciones MAC, ni ningún otro identificador único, para el caso, sin embargo, podría construir una red local utilizando UART y direcciones IP solo, siempre que instale los controladores UART adecuados. Espero que este pasaje te haya dado algunas ideas sobre el tema.

Turing
fuente