Erläuterung zu NAT + Router

T

Thomas F.

Gast
Hallo!
Nach langem erfolglosem Suchen ( keine Ahnung nach welchen Begriffen ich für mein Problem suchen soll ) überredete ich mich einen neuen Thread aufzumachen. Ich habe nicht wirklich ein Problem sondern viel mehr möchte ich von euch Wissen wie folgendes Prinzip funktioniert.

Also ich habe einen Router ( Draytek Vigor 2900G ) und einen PC daran angeschlossen. Ich habe T-DSL. Nun habe ich auf dem Router keine Ports freigeschalten, d.h. es sind alle Ports geschlossen. Auch durch Scanns etc werden alle als closed erkannt. Nun aber folgende Frage: Es heißt ja z.b. immer, dass wenn man surfen will, den HTTP Port öffnen muss also Port 80. Habe diesen Port aber zu, kann trotzdem surfen? Wie funktioniert dies? Genau so kann ich ICQ starten und chatten und IRC starten und chatten obwohl alle Ports dicht sind. Wie geht dies? eMule funktioniert z.b. jetzt nicht wenn ich den Port 4662 nicht öffne. Mache ich diesen Port auf funktioniert eMule jedoch problemlos obwohl auf der offiziellen Seite steht, dass man noch den UDP Port 4672 öffnen muss damit emule funktioniert. Könnte mir jemand bitte mal erklären wie dieses Prinzip funktioniert?

MfG Thomas
 
Das ist das Prinzip von NAT (und TCP).

1.) TCP ist ein verbindungsorientiertes Protokol. Es gibt eingehende, für Server-Dienste, und ausgehende, für Anfragen an einen Server, Verbindungen.
2.) Wenn Du eine Webseite aufrufst, ist das eine ausgehende Verbindung.
3.) Der NAT-Router merkt sich ausgehende Verbindungen: von wem sie kommen (also z. B. einem Rechner im lokalen Netz) und zu wem sie gehen (z. B. der Webserver). Daten, die vom Ziel dieser Verbindung zurückgesandt werden, schleust der Router an die Quelle durch.

Deswegen muss der Port 80 nicht offen sein, wenn Du surfst.

Der Esel dagegen ist ein Serverprogramm auf Deinem Rechner, wartet also auf eingehende Verbindungen. Die kommen nur an dem Router vorbei, wenn Du den entsprechenden Port auf Deinem Router freischaltest und auf Deinen Rechner mappst.

Gruß
Morgoth
 
Also genau genommen machen ja NAT Router eigentlich gar kein NAT sondern PAT - und das auch noch mit Overloading. Wollt ich nur mal gesagt haben :D
 
NAT = Network Adress Translation
Per Defintion wird eine private IP Adresse exakt auf eine bestimmte öffentliche übersetzt (statisches NAT) oder mehrere private IP Adressen auf eine oder mehr öffentliche Adressen, wobei aber nur so viele private Adressen simultan verwendet werden können, wie öffentliche Adressen verfügbar sind (dynamisches NAT)

PAT = Port Adress Translation
Hier werden jetzt Ports zur Hilfe genommen. Host A versucht von TCP 1024 auf TCP 80 von der Adresse 192.168.1.1 auf die Adresse 205.249.93.84 zuzgreifen. Der Router merkt sich:
192.168.1.1:1024 => 205.249.93.84:80 - die private Adresse wird durch die WAN IP des Routers, sagen wir 67.112.4.37 ersetzt:
192.168.1.1:1024 durch 67.112.4.37:1024 ersetzt

Host B versucht von der IP 192.168.1.2 ebenfalls auf die 205.249.93.84 auf Port 80 von sagen wir ebenfalls Port 1024 zuzugreifen:
192.168.1.1:1024 wird durch 67.112.4.37:1025 ersetzt - alles kein Problem mit PAT, das zwar NAT recht ähnlich ist, aber genau genommen doch was anderes darstellt.


Der Begriff "Overloading" wird zusammen mit NAT verwendet und ermöglicht es einem Router, eben PAT auszuführen um mehreren Rechnern gleichzeitig über eine WAN IP Zugang zum Internet zu gewährleisten:

ip nat inside source list 1 interface dialer 1 overload (<- muss nicht jeder verstehen ;))
 
Zurück
Oben