
Nehmen wir an, ich habe einen Router, der auf einer seiner Schnittstellen eine öffentliche IP-Adresse und auf einer der anderen Schnittstellen eine private Adresse hat, sagen wir 192.168.1.1/24. Dann ist an dieser zweiten Schnittstelle ein Computer angeschlossen, der ebenfalls eine private IP-Adresse hat (192.168.1.2/24). Nun möchte der Computer ein Paket an eine öffentliche IP-Adresse senden, sagen wir 11.12.13.14, also würde er diese öffentliche Adresse vermutlich in das Zielfeld des IP-Pakets einfügen, oder nicht?
Aber wie wird dieses Paket nun an den Router übermittelt, wenn die lokale IP des Routers (und das Standard-Gateway des Computers) 192.168.1.1 ist?
Dies scheint eine sehr einfache Frage zu sein, aber ich habe wirklich Schwierigkeiten zu verstehen, wie das funktioniert.
Antwort1
Ein Netzwerk mit Internet und lokalem Netzwerk wird wie folgt eingerichtet.
Ihr Netzwerk ist über ein Modem mit dem Internet verbunden. Ein Modem kann Informationen vom und zum Internet mit genau einem Gerät austauschen.
Normalerweise haben Sie mehr als ein Gerät in Ihrem Netzwerk. Damit diese Geräte miteinander kommunizieren können, benötigen Sie ein Gerät mit mehreren Netzwerkports und ein wenig Software, um dies zu verwalten. Früher war dies ein Netzwerk-Hub. Ein Hub kopiert eingehenden Datenverkehr grundsätzlich auf alle Ports, und wer zuhört, antwortet.
Durch Forschung wurden diese Geräte intelligent und so entstand der Switch. Ein Switch ist etwas anders als ein Hub. Er versucht herauszufinden, wer das Ziel ist, indem er eine neue Verbindung an alle Ports sendet und beobachtet, wer antwortet. Wenn er eine Antwort an einem Port erhält, kennzeichnet er diesen Port mit der IP-Adresse, die in der ursprünglichen Anfrage angegeben wurde, und leitet den gesamten Datenverkehr für diese IP-Adresse an diesen Port weiter, ohne ihn an alle anderen Ports zu senden.
Modem und Switch können nicht zusammen verwendet werden, um lokale PCs mit dem Internet zu verbinden. Daher wurde ein neues Gerät entwickelt, das als Router bezeichnet wird. Ein Router sitzt zwischen Modem und Switch. Ein Router ist normalerweise mit zusätzlichen Funktionen ausgestattet, beispielsweise einem DHCP-Server, der die Verwaltung eines lokalen Netzwerks ermöglicht. Der Router verfügt über eine Nachschlagetabelle, mit deren Hilfe ermittelt werden kann, ob eine IP-Adresse lokal oder im Internet sein soll. Außerdem verfügt er über eine Tabelle mit Portzuordnungen, sodass Sie einen Port aus dem Internet öffnen und den Datenverkehr an ein lokales Gerät weiterleiten können.
Nehmen wir also an, PC1 mit IP: 192.168.1.2 sendet ein Paket an 192.168.1.3. Das Paket wird über das angeschlossene Kabel von der Netzwerkkarte gesendet. Die Pakete erreichen den Port am Switch.
Der Switch hat 3 Ports aktiviert: Port WAN, der zum Router führt, Port 1, der 192.168.1.2 (selbst) ist, und Port 2, der 192.168.1.3 ist. Der Router überträgt es an den WAN-Port und Port 2, sofern er nicht bereits herausgefunden hat, dass 192.168.1.3 zu diesem Port gehört, und das Paket direkt dorthin sendet.
Nehmen wir an, Ihr Computer sendet jetzt ein Paket an 11.22.33.44. Das Paket wandert über die Netzwerkkarte und erreicht erneut den Switch. Dieser hat keine Kenntnis von dieser IP-Adresse und sendet es daher an alle Ports. Der Router empfängt das Paket und leitet es an das Modem weiter, das es ins Internet überträgt.
Etwas später antwortet das Internet und ein Paket kommt vom Modem. Dieses wird an den Router weitergeleitet, der erkennt, dass es sich um eine Antwort auf das vorherige Paket handelt (über uPNP) und es an den Switch weiterleitet. Der Switch leitet es zurück an Ihren Port.
So funktioniert ein Router im Wesentlichen.
Ich hoffe, das war verständlich. :)
Und falls Ihre Frage lautet, dass zwei Geräte dieselbe IP haben: Sie können nicht zwei Geräte mit derselben IP-Adresse haben. Es kommt zu einem IP-Konflikt und das Netzwerk funktioniert nicht richtig.
Antwort2
Nur um die vorherige Antwort zu ergänzen, haben Sie gefragt:
Der Router empfängt also das für 11.22.33.44 bestimmte Paket, obwohl seine Adresse auf dem lokalen (LAN-)Port (über den das Paket kam) 192.168.1.1 lautet?
Ja, denn Ihr Computer ist physisch über eine Ethernet- oder WLAN-Verbindung mit dem Router verbunden. Das ist eine physische Verbindung, über die Sie Ihren gesamten Netzwerkverkehr senden (alle IP-Pakete gehen über dieselbe physische MAC-Adresse zum Router-Gerät). Ihre Router-Verbindung hat, wie Sie sagten, eine IP-Adresse, nämlich 192.168.1.1, und das ist Ihre Standard-Gateway-IP, sodass jeder eingehende Datenverkehr von dieser Adresse als vom Netzwerk über den Router kommend erkennbar ist.
Vergessen Sie jedoch nicht, dass Sie jedes Netzwerkpaket physisch über eine WLAN- oder Ethernet-Verbindung senden und dass diese Verbindungen eine niedrigere Ebene als IP haben, sodass alle Ihre Pakete unabhängig von ihrem TCP/IP-Protokollinhalt (Quell-IP, Ziel-IP, Quell-Port, Ziel-Port) über eine physische Verbindung an den Router gesendet werden.
Unabhängig von Ihrer Quell-IP oder der Ziel-IP Ihrer Pakete erreichen alle Ihre IP-Pakete den Router über eine kabelgebundene oder drahtlose Verbindung, und von dort aus entscheidet der Router oder ein beliebiges anderes Gerät, was mit ihnen zu tun ist: ob die Quell-IP und der Port Ihres Pakets überprüft werden, um allen Antwortverkehr, der mit der IP und dem Port Ihres PCs übereinstimmt, an ihn (den Router) zurückzuschicken, oder ob der gesamte Antwortverkehr an jedes mit dem Router verbundene Gerät gesendet wird, um nach einer Antwort zu suchen, wie bei einem Switch oder einem Hub. Der Unterschied besteht, wie in der ersten Antwort gesagt, darin, dass der Hub immer den gesamten Verkehr an alle mit ihm verbundenen Geräte sendet und nach einer Antwort sucht, während der Switch dies nur tut, bevor er eine Antwort erhält, und dieses Gerät dann dieser Verbindung zuordnet, sodass keine weitere Suche erforderlich ist.