
Es tut mir leid, wenn das eine wirklich dumme Frage ist; meine Netzwerkkenntnisse sind ziemlich dürftig.
Ein Benutzer sendet also eine HTTP-Anfrage an eine bestimmte Adresse. Diese Anfrage kommt von einer Adresse in einem lokalen Subnetz, aber der Router weiß, dass er die Anfrage an sein Standard-Gateway senden muss, da die Ziel-IP mit nichts anderem in seiner Routing-Tabelle übereinstimmt. Die Anfrage geht durch das Internet und wird schließlich vom Zielcomputer (einem Webserver) empfangen. Das ergibt alles Sinn.
Aber wie schafft es der Webserver nun, die Anfrage an den lokalen Rechner zurückzuschicken? Stammt die Anfrage nicht von einer IP-Adresse aus einem lokalen Subnetz? Woher hat er die IP-Adresse des Routers des lokalen Rechners? Und selbst wenn er die IP-Adresse dieses Routers hat, wie wird das Paket an den lokalen Rechner weitergeleitet, wenn es den Router erreicht?
Antwort1
Das Paket hat, wie bereits erwähnt, eine Quelladresse, aber auch eine zugewiesene Portnummer. Dies ist insbesondere in einer NAT-Umgebung erforderlich (wo die internen IPs privat und die externe IP konstant ist – wie bei der gemeinsamen Nutzung der Internetverbindung). Der Router weist eine zufällige, unbenutzte Portnummer zu und führt eine Tabelle darüber, auf wen sich die Portnummer bezieht (den Computer des Benutzers). Wenn das Paket vom Router empfangen wird, prüft er die Portnummer, gleicht sie ab und sendet sie an den Computer/Benutzer.
Aktualisieren/korrigieren Sie dies gerne, wenn Sie einen Fehler finden, aber so funktioniert es nun einmal. Ich hoffe, das hilft.
Antwort2
Die Antwort des Webservers wird genauso behandelt wie die Anfrage des Clients. Es sind lediglich IP-Datagramme.
Der Webserver verfügt über ein Standard-Gateway, an das er seine Antwort sendet. Die Antwort „springt durch das Internet und wird schließlich empfangen“ von dem Client, der die Anfrage gestellt hat.
Der Webserver „weiß“ nichts über den Router des anfragenden Clients.
Bearbeiten:
Ihr Kommentar verrät eine Annahme, die ich getroffen habe.
Sie sprechen von einem Szenario, in dem der anfordernde Client-Computer eine private IP-Adresse hat und an ein Netzwerk mit einemNetzwerkadressübersetzung(NAT)-Router an der Grenze des Netzwerks des Clients (wo dieses Netzwerk mit dem Internet verbunden ist).
In diesem Fall wird die IP-Adresse des Client-Computers vom NAT-Router in eine öffentliche IP-Adresse übersetzt, die der „externen“ Schnittstelle des NAT-Routers zugewiesen ist. Der NAT-Router verfolgt die Anfrage, sodass die Antwort, wenn sie aus dem Internet empfangen wird, an den Client zurückgeleitet wird.
Antwort3
Die Antwort liegt inSPI - Stateful Packet Inspection. Auf diese Weise behält ein Router den Überblick darüber, wohin er eine Antwort in seinem Subnetz senden soll. Ich selbst kenne mich nicht mit allen Einzelheiten aus (ich musste sie nie kennen), aber wenn Sie dem Link folgen, werden Sie wahrscheinlich alles erfahren, was Sie wissen müssen. Wenn nicht, füllt eine Suche nach „Stateful Packet Inspection“ alle Lücken.