Hallo Tim,
die Frage ist berechtigt. Wenn man jeden Tag damit zu tun hat, ist es eigentlich ganz klar und logisch. Aber wenn man es in Worte fassen soll, dann muss man wirklich nochmal überlegen... Wie war das nochmal?
Die Grundlage ist erstmal das IP-Protokoll. Dieses Protokoll ermöglicht es, dass jedes Gerät im Netz (egal ob ein Windows-Rechner oder eine VoiceOverIP-Box oder eben ein Router) gleichzeitig mehrere Verbindungen herstellen kann.
Man kann auch ganz leicht prüfen, welche Verbindungen der Windows-Rechner gerade offen hält. Dazu gib mal in der DOS-Eingabeaufforderung diesen Befehl ein:
Wenn du z.B. einen Mailclient und einen Browser gestartet hast, siehst du hier nun die Verbindungen zwischen deinem Client und den Servern. (Jedenfalls theoretisch. Zwischendrinn ist ja noch der Router, der fleissig zwischen private und public übersetzen muss.)Code:netstat -n
Hinter der IP-Adresse steht jeweils immer eine sogn. Port-Nummer.
Jedes IP-Paket wird mit dieser eindeutigen (unique) Port-Nummer versehen. Im Header jeden IP-Pakets steht dann die Source-Adresse:Port und Destination-Adresse:Port. Somit ist definiert, von wo kommt das Paket und wo soll es hin.
Genauso funktionert es eigentlich auch an einem Router.
Du hast aber schon richtig erkannt, dass die Kunst nun darin besteht, die IP-Pakete zwischen den verschiedenen Clients und Servern richtig ins Internet zu routen. (Und natürlich auch anders rum, können Pakete aus dem Internet zum Client geroutet werden.)
Der Router muss intern die Source-Adressen und Ports (aus dem private Network) in die öffentliche IP-Adresse umwandeln.
Damit der Router die IP-Pakete handeln kann, wird jede "Translation" ein eindeutiger Port zugeordnet.
Das Geheimnis steckt in einer Mapping-Tabelle.
Ein Beispiel könnte so aussehen:
-------------------------------------------------------
Source IP :Port Translated-Port Dest IP :Port
-------------------------------------------------------
192.168.0.5 2209 33381 205.11.248.89 25
192.168.0.2 2197 34595 195.7.192.164 443
192.168.0.5 2214 33378 205.11.248.89 80
192.168.0.2 1216 33174 205.11.248.89 25
In der Tabelle speichert der Router die Verbindungen zwischen Client-IP-Adresse, der eindeutigen Translated-Portadresse und der Destination.
Und auch nur wenn so ein Eintrag existiert, geht der Weg auch anders rum und der Router kann ein IP-Paket aus dem Internet an einen Client zustellen.
Eigentlich ganz einfach.
Die Router unterscheiden sich nun in der Geschwindigkeit, in der sie so eine Übersetzung vornehmen können und auch wieviele Einträge in die Tabelle gehen.
gruss, Karsten

LinkBack URL
About LinkBacks
Zitieren

