
Da in herkömmlichen Netzwerken jeder Host eine eindeutige IP-Adresse hat, die von den Stationen im Netzwerk erkannt wird, warum ist dann noch eine MAC-Adresse erforderlich?
Angenommen, Station A möchte an Station B senden. Station A kennt die IP-Adresse von Station B. Station A würde jedoch vor dem Senden trotzdem ein ARP senden, um die MAC-Adresse von B anzufordern. Und nachdem A die MAC-Adresse von B hat, würde sie die Daten mit der MAC-Adresse von B als Zieladresse senden.
Warum kann B das Paket nicht einfach so akzeptieren, wie es auf das von A gesendete ARP reagiert? Auf diese Weise müsste Station A kein ARP senden, um nach der MAC-Adresse zu fragen, und die Notwendigkeit einer MAC-Adresse wäre damit auch überflüssig. Außerdem sind die IP-Adressen unter den Netzwerkstationen eindeutig. Warum ist eine weitere MAC-Adresse erforderlich, um die Stationen zu erkennen?
Antwort1
Denn man braucht eine in die Netzwerkkarte eingebaute eindeutige Kennung zur Stationsidentifikation, falls man keine IP-Adresse hat. Oder wie soll ein System per DHCP eine gültige IP-Adresse bekommen, wenn es keine Kennung der Station gibt, die eine bekommen möchte?
Und da IP nicht das einzige Protokoll ist, das Sie über Ethernet senden können, muss Ethernet selbst eine eindeutige Kennung bereitstellen, um verschiedene Protokolle zu ermöglichen.
Antwort2
Zunächst möchte ich Dans Antwort unterstützen; eine gründliche Recherche zu diesem Thema ist viel besser, als Fragen zu stellen, die jeweils nur ein Licht in die Dunkelheit werfen. Ich empfehleSteven's TCP/IP illustriert, die Bibel der Netzwerke; mein Exemplar von Band 1 ist vom Übergebrauch ziemlich kaputt. Aber da Sie die Frage gestellt haben und ich die halbe Antwort getippt hatte, als Dans Frage kam, möchte ich trotzdem auf „Posten“ drücken, mit meinem Hut als alter Admin.
Teilweise ist es historisch bedingt. MAC-Adressen sind eine Sache der Schicht 2, während IP-Adressen der Schicht 3 angehören (siehe z. B.diese Wikipedia-Seitefür weitere Einzelheiten zu den Schichten).
Warum diese Trennung? Nun, als Ethernet erfunden wurde, war IP nicht die einzige Netzwerktechnologie, die über ein Ethernet-Netzwerk übertragen werden konnte. Ich selbst habe Mitte der 80er Jahre DECnet über Ethernet ausgiebig genutzt, und das hatte keine IP-Adressen. Darüber hinaus ist es durchaus möglich, IP über Nicht-Ethernet-Netzwerktechnologien auszuführen, die keine MAC-Adressen haben; Token-Ring-Netzwerke fallen mir da ein, ebenso wie SLIP).
Wenn Ethernet und IP wie von Ihnen vorgeschlagen zusammengefügt worden wären, wäre keines der oben genannten Dinge möglich gewesen. Ja, im Nachhinein ist klar, dass IP der große Erfolg bei der Internetarbeit war, aber das war 1981 noch nicht so klar, und die Entkopplung der beiden Schichten war damals definitiv das Richtige.
Antwort3
xENOn, das ist eine Frage, die ich mir in der Vergangenheit oft gestellt habe. Tatsächlich ist sie irgendwie willkürlich, denn wie MadHatter freundlicherweise erwähnt hat, gibt es IP-Netzwerktypen, die auch ohne physische Adresse gut funktionieren. Das heißt, es besteht theoretisch kein Bedarf für einen zusätzlichen Adresstyp. Die MAC-Adresse ist jedoch praktisch, wenn IP-Adressen automatisch verteilt werden, z. B. durch DHCP, da der DHCP-Server eindeutig wissen muss, welcher Host welche IP erhalten hat, oder dass keinem einzelnen Host unaufgefordert zusätzliche IP-Adressen zugewiesen werden. Ohne die MAC-Adresse müssten Sie die IP-Adressen für jeden Host manuell festlegen, was bei einer großen Anzahl von Hosts nicht sehr praktisch und für IT-Administratoren ein Albtraum ist. Bei lokalen Ethernet-Verbindungen haben Sie keine große Wahl, da das Ethernet-Subsystem nur Ethernet-Frames erkennt, d. h. jede Ethernet-Schnittstellenschaltung filtert alle Ethernet-Frames heraus, die weder ihre eigene noch eine Broadcast-/Multicast-MAC-Adresse als Zieladresse tragen. Nur die Frames, die diese Front-End-Filterung überstehen, liefern ihre IP-Nutzlast tatsächlich an die IP-Schicht. Ich hoffe, es hat Ihnen ein wenig geholfen, das Geheimnis zu lüften.