Warum haben die Ersteller des Internetprotokolls beschlossen, IP-Adressen zur Identifizierung eines bestimmten Computers zu verwenden? [geschlossen]

10

Warum haben die Ersteller des Internetprotokolls beschlossen, IP-Adressen zur Identifizierung eines bestimmten Computers zu verwenden?

Warum nicht einfach jedem Computer bei der Herstellung eine eindeutige ID zuweisen und diese ID dann zur Identifizierung des Computers verwenden?

Jerry Rockwell
quelle
3
Es gibt keine Möglichkeit, die in der realen Welt funktionieren würde ...
Radu Murzea
20
Wie MAC-Adresse ?
user694733
12
@ JerryRockwell Sie wissen, dass MAC-Adressen, die Ihrer Beschreibung am nächsten kommen, auch gefälscht werden können? Mit anderen Worten, in dieser Welt würde es wahrscheinlich nur ein Hilfsprogramm und eine glückliche Vermutung erfordern, um eine neue, funktionierende ID zu erhalten. Auf der anderen Seite, wenn Proxies und VPNs wirklich unmöglich werden, werden auch viele ehrliche Leute verarscht.
2
Diese Frage scheint nicht zum Thema zu gehören, da es sich um die in der Hilfe definierte Softwareentwicklung handelt . Ihre Frage könnte besser geeignet sein auf superuser.com oder serverfault.com
Philipp
2
IP-Adresse ist eine ID. Es ändert sich aufgrund des umfangreichen Einsatzes von DHCP normalerweise ständig.
Siyuan Ren

Antworten:

34

IP identifiziert keinen Computer - ein Computer kann mehrere IPs haben und eine einzelne IP kann zu mehreren Computern gehören, solange sie sich in verschiedenen Netzwerken befinden.

IP ist keine Kennung, sondern Teil des Routings. Es identifiziert einen Endpunkt. Und es muss konfigurierbar sein, damit ein Computer in verschiedenen Netzwerken verwendet werden kann. Wenn Sie Ihr Netzwerk ändern, ändern Sie die IP-Adressen von Computern. Wenn diese behoben wären, könnten Sie nicht über den Routing-Mechanismus verfügen, der in IP-Netzwerken verwendet wird.

Zum Beispiel könnte Ihr Name Ihre (feste) Kennung sein, aber Ihre Adresse ist der Ort, an den Ihre E-Mails zugestellt werden. Die Adresse kann hier konfiguriert werden. Wenn Sie umziehen, erhalten Sie eine neue Adresse, und wer an Ihren alten Ort umzieht, erhält Ihre alte Adresse. Wenn sich ein Straßenname (Netzwerkkonfiguration) ändert, ändert sich auch Ihre Adresse. Der Liefermechanismus bleibt jedoch gleich.

Aragaer
quelle
2
In welcher Beziehung steht dies zu der Frage: "Warum haben die Urheber des Internetprotokolls entschieden?"
Mücke
5
Es ist ein hervorragendes Beispiel mit dem Namen (als MAC) und einer Adresse (als IP).
SerG
Wahres Zeug; Aber die Antwort reicht nicht aus, um zu erklären, warum IP für das Routing besser funktioniert als ... Ich weiß nicht. Noch etwas.
Svidgen
1
Die Frage war nicht zu erklären, wie IP-Routing funktioniert und wie die IP-Adresse ein Teil davon ist. Es gibt jedoch andere Antworten, die dies erklären. Es gibt andere Routing-Möglichkeiten, nicht nur IP.
Aragaer
Unter HIP (Host Identity Protocol, RFC4423) finden Sie einen Versuch, eine Schicht für Host-IDs (als IPv6-Adressen gespeichert) zwischen der Netzwerkschicht und der Transportschicht hinzuzufügen.
Ysdx
22

Wenn jeder Computer eine eindeutige ID hätte, müssten Routing-Tabellen alle Routen zu allen Geräten im Internet enthalten. Das ist unpraktisch.

Aus diesem Grund verwendet tcp / ip einen abgestuften Ansatz.

Wenn mein Computer 1.1.1.1 mit 2.2.2.2 kommunizieren möchte, fordert er das Gateway grundsätzlich auf, das Paket weiterzuleiten. Daher kommuniziert er mit: 1.1.1.0, aber dieses Gateway weiß auch nicht, wo sich 2.2.2.2 befindet, und fragt sein Gateway Um das Paket weiterzuleiten, nimmt das Gateway 1.1.0.0 es auf und fragt 1.0.0.0. 1.0.0.0 weiß auch nicht, wo sich 2.2.2.2 befindet, aber es weiß, wo sich 2.0.0.0 befindet (in seiner Routing-Tabelle), sodass die Anforderung jetzt nicht ausgeführt wird, da 2.0.0.0 weiß, wo sich 2.2.0.0 befindet, und das Paket weiterleitet. dies bis zum Erreichen des Pakets 2.2.2.2

(Dies ist eine EXTREME Vereinfachung dessen, was passiert, und es kann eine beliebige Anzahl von Sprüngen zwischen 1.0.0.0 und 2.0.0.0 geben.)

Dieser abgestufte Ansatz mit Routing-Tabellen ermöglicht die effiziente Lokalisierung eines anderen Computers in einem Netzwerk. Es bedeutet aber auch, dass es ein System ohne die eindeutige ID geben muss, da Routing-Tabellen nicht alle IDs und Routen aller mit dem Internet verbundenen Computer enthalten können.

Pieter B.
quelle
11

Aus dem gleichen Grund verwendet der Postdienst eher Adressen als Namen .

Postdienste (und andere Beförderer von Paketen) versenden Pakete nicht wirklich an Personen. Sie versenden an Orte und lassen die Leute an diesem Ort herausfinden, welche Person das Paket tatsächlich erhält. Der Grund, warum sie dies tun, ist, dass Sie nicht anhand ihres Namens allein erkennen können, wo sich eine Person befindet, und dass Sie dies nicht im Namen kodieren können, ohne ihn veränderbar zu machen .

Das Internet verwendet nicht nur ein Protokoll, sondern mehrere Protokolle übereinander. Es gibt Protokolle, die eindeutige IDs verwenden und sich auf der untersten Ebene befinden, die als Verbindungsschicht bezeichnet wird . Ethernet (das MAC-Adressen verwendet) und PPP (das am häufigsten Telefonnummern verwendet) sind zwei beliebte Beispiele für Verbindungsprotokolle. Die Verbindungsschicht hat jedoch ihre Grenzen: Sie können nur ein Signal zwischen Computern empfangen, die direkt miteinander verbunden sind , da jeder bereits wissen muss, wo sich jeder befindet. Dies macht es wie die Leute am Ziel des Pakets: Jeder kennt sich bereits, so dass er untereinander herausfinden kann, wer das Paket tatsächlich erhält.

IP befindet sich einen Schritt weiter in der Netzwerkschicht (manchmal auch als Internetschicht bezeichnet ). IPs Aufgabe ist es, ein Signal zwischen Standorten zu erhalten, die nicht direkt verbunden sind . Andere haben sich bereits mit dem verwendeten hierarchischen Routing-Schema befasst, aber die meisten Postdienste haben schon lange vor dem Internet oder sogar Computern ähnliche hierarchische Systeme verwendet. Sie tun dies, weil es der einfachste Weg ist, verschiedene Orte zu identifizieren und Dinge zwischen ihnen zu routen.

Computer und Standorte sind jedoch nicht dasselbe. Computer können sich wie Menschen zwischen verschiedenen Standorten bewegen : Sie können beispielsweise einen Laptop zwischen Ihrem Zuhause und Ihrem Arbeitsplatz bewegen. An einem bestimmten Standort kann sich mehr als ein Computer befinden : Wenn Sie zu Hause einen WLAN-Router verwenden, sind möglicherweise mehrere Geräte angeschlossen, die jedoch für die Außenwelt alle eine einzige IP-Adresse gemeinsam haben. Unter bestimmten Umständen kann ein einzelner Computer sogar mehr als eine Adresse haben.

Das Internet muss in der Lage sein, all diese Fälle zu behandeln. Um dies auf einfache und effiziente Weise zu tun, verwenden sie Adressen anstelle von IDs. Auf diese Weise muss IP nicht wissen oder sich darum kümmern, was sich an jedem Ende der Verbindung befindet: Es gibt nur ein Signal, einen Ort, von dem es kommt, und einen Ort, an den es übertragen werden kann . Andere Protokolle im Stapel können sich um die anderen Details kümmern.

Der Löffel
quelle
große Analogie ...
Charles Salvia
2

Die MAC-Adresse identifiziert einen Computer bzw. dessen Netzwerkhardware.

Eine IP-Adresse beschreibt, wo sich die Hardware befindet. Router verwenden es, um herauszufinden, wohin die Pakete weitergeleitet werden sollen, damit sie am richtigen Ziel ankommen.

Da sich eine MAC-Adresse beim Verschieben der Hardware nicht ändert, ist es unpraktisch, sie für das Routing zu verwenden, da dies im Wesentlichen bedeuten würde, dass jeder Router auf der ganzen Welt den Standort jeder einzelnen MAC-Adresse verfolgen müsste. IP-Adressen funktionieren so, dass jeder Router keine vollständigen Informationen des Empfängers benötigt, um sie korrekt weiterzuleiten. Er weiß, welcher IP-Bereich wohin gesendet werden soll. Auf diese Weise muss nur ein tatsächlicher Router oder Switch genau wissen, welche IP sich wo befindet. Jeder andere Router benötigt nur eine sehr allgemeine Vorstellung.

Pierre Andersson
quelle
1
Dies scheint lediglich die Punkte zu wiederholen, die in der vorherigen Antwort
Mücke
Ich frage mich, warum MAC-Adressen global eindeutig zugewiesen werden sollen, da es sehr unwahrscheinlich ist, dass selbst das Zuweisen von zufälligen 32-Bit-Adressen zu Kollisionen in Subnetzen führt, in denen nicht Tausende von Computern vorhanden sind (die meisten Subnetze haben weniger als 100) Die Kollisionsauflösung könnte einfach dadurch bewältigt werden, dass jede Maschine, die eine Kollision erkennt, zufällig eine neue Adresse auswählt. Wenn es nicht auf die alte Adresse reagiert, wird der Computer, der kommunizieren wollte, erneut ARP, die neue Adresse finden und alles wird gut.
Supercat
1

Warum haben die Ersteller des Internetprotokolls beschlossen, IP-Adressen zur Identifizierung eines bestimmten Computers zu verwenden?

Sie haben es nicht getan. Es identifiziert eine Netzwerkverbindung, obwohl dieselbe Verbindung auch andere IP-Adressen haben kann.

Warum nicht einfach jedem Computer bei der Herstellung eine eindeutige ID zuweisen und diese ID dann zur Identifizierung des Computers verwenden?

Zum einen identifizieren sie Computer nicht wie oben.

Okay, sagen wir, sie wollten es mit Netzwerkadaptern machen. Sie hätten jeden Hersteller von Netzwerkadaptern davon überzeugen müssen, eine Kennung aus einem Satz zu verwenden, der von Personen gesteuert wird, die an diesem speziellen Plan beteiligt sind, um Netzwerke zu verbinden, von denen viele nicht glaubten, dass sie funktionieren würden, bevor sie funktionieren könnten. Viel Glück damit.

Außerdem kümmerten sich diese Hersteller von Netzwerkhardware nicht um TCP / IP, sondern um ihre eigenen Netzwerkprotokolle und möglicherweise um die, mit denen sie konkurrierten. In einigen Fällen war es für einige Technologien auf lange Sicht schlecht, eine Schicht darüber zu haben, die die Unterschiede zwischen z. B. Ethernet, ALOHAnet, Token-Bus usw. ausmachte, da dadurch einige ihrer Funktionen weniger nützlich wurden (TCP / IP konnte) tun Sie es stattdessen) und die Leute könnten schließlich zu denen wechseln, die genau das taten, was TCP / IP brauchte, und wenig anderes (wie es Ethernet tat). TCP / IP war für diese Unternehmen ein Trojaner. glücklich mit ihnen zu spielen, aber gleichzeitig ihr Geschäft zu zerstören. Warum sollten sie helfen?

Einige dieser Technologien waren älter als TCP / IP, sodass sie nicht zusammenarbeiten konnten und TCP / IP nicht in nahezu allen Netzwerktypen verwendet werden konnte.

Auch welche Adresse wo? Mein Computer hat derzeit eine Adresse von 192.168.1.24 (unter anderem), die auch von Tausenden anderer Computer in anderen Netzwerken verwendet wird. Ich benötige keine eindeutige Adresse, da ich nicht direkt mit dem Internet verbunden bin. Mit IPv6 beginnen wir, einen Punkt zu erreichen, an dem wir eine wirklich eindeutige ID für jede Maschine haben könnten, wenn wir es wirklich wollten, aber vorher wäre dies beides eine begrenzte Anzahl gewesen (vier Milliarden wären wahrscheinlich viel gewesen von Geräten zu der Zeit, aber das würde eine sehr enge Verteilung der Zahlen erfordern, so dass es in der Praxis viel weniger geben würde, selbst wenn dies ein realistisches Problem wäre) und sinnlos; Der springende Punkt bei IP ist nicht die Vernetzung, sondern die Vernetzung. Wir müssen uns also immer nur um ein Netzwerk kümmern, wenn es um Kennungen geht.

Jon Hanna
quelle
0

Bei einer so eindeutigen ID wie MAC besteht jedoch immer noch das Problem, das Gerät in einem Netzwerk zu lokalisieren. Es ist unmöglich, alle Geräte miteinander zu verbinden und das Ziel einzeln über alle Hosts auf der Welt zu suchen. Es ist der Zweck der Erfindung, einige hierarchische Adressen wie IP.

SerG
quelle
Dies scheint lediglich die Punkte zu wiederholen, die in der vorherigen Antwort
Mücke
@gnat Blick auf den Zeitstempel der letzten Änderungen.
SerG
0

Der Schlüssel zum Verständnis des ursprünglichen Entwurfs des Internetworking- Protokolls besteht darin, dass bereits Netzwerke vorhanden waren. Der Plan bestand darin, Netzwerke mithilfe vorhandener Technologien wie DECnet miteinander zu verbinden. Das Erfordernis, neue Hardware mit einer eindeutigen Kennung hinzuzufügen, hätte dies behindert und war aus irgendeinem technologischen Grund nicht erforderlich. Das verwendete System bestand darin, einer Organisation ein Präfix (z. B. 8.0.0.0/24) zuzuweisen und dann die Verantwortung dieser Organisation zu übernehmen, Adressen innerhalb dieses Bereichs zuzuweisen.

Außerdem kann der Administrator demselben Computer mehrere IP-Adressen zuweisen (zur Konsolidierung von Diensten) oder alternativ den Computer ersetzen, aber weiterhin dieselbe IP-Adresse verwenden oder dieselbe IP-Adresse in einem getrennten Testnetzwerk verwenden auf. Das Binden an bestimmte Hardware wäre einschränkend.

Ethernet verwendet MAC-Adressen, um zwischen Knoten im selben LAN zu unterscheiden, aber Ethernet datiert das Internet nach und lässt sich davon inspirieren: http://inventors.about.com/library/weekly/aa111598.htm behauptet nicht früher als 1973, Die ersten Internet-RFCs stammen aus dem Jahr 1969 ( http://www.ietf.org/download/rfc-index.txt ), ungefähr zur gleichen Zeit wie die Mondlandungen.

pjc50
quelle