Verständnisfrage Port Forwarding und Zyxel Prestige 335
Geizhals » Forum » Netzwerk » Verständnisfrage Port Forwarding und Zyxel Prestige 335 (67 Beiträge, 379 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
.
Re: Verständnisfrage Port Forwarding und Zyxel Prestige 335
Fly
10.09.2005, 18:27:16
Ein kleines "TCP 101", dann wird's hoffentlich klar.

Für eine funktionierende TCP Verbindung brauchst Du, neben der IP Adresse der beiden beteiligten Rechner, noch den Port. Ja, von beiden Rechnern.

Nun, wenn du 'ne Verbindung mit einem Server aufmachst, gibst Du ja dessen Port an (im Fall von HTTP mal im Zweifelsfall wennst sonst nix angibst 80). Aber wo kommt "Dein" Port her?

Der wird automatisch gewählt. Im Prinzip ist es nach dem Standard meines Wissens "der erste freie, nich in Verwendung befindliche Port > 1024). Ergo guckt eine Verbindungsaufnahme zwischen zwei Rechnern im Prinzip so aus:

Rechner A (mit IP-Adresse 1, damit's leicht wird), schickt an Rechner B (mit IP 2) eine Anfrage. Da er von Rechner B weiß, daß dieser auf Port 80 lauscht, ruft er ihn auf diesem Port an.

Nun will Rechner B natürlich drauf antworten können, braucht dazu aber den Empfangsport von Rechner A. Kein Problem, Rechner A setzt ihn bei der Verbindungsaufnahme darüber in Kenntnis auf welchem Port er 'nen Empfang erwartet.

Sprich, es reden Rechner A mit Port 1026 und Rechner B mit Port 80 miteinander (genauer gesagt verlegt auch Rechner B den tatsächlichen Port transparent woanders hin, das sei für uns jetzt mal Nebensache).

Da wird's jetzt auch verständlich, warum ein zweiter Rechner, C, ebenfalls mit Rechner B plaudern kann, obwohl A und C hinter dem gleichen Router sitzen: Er verwendet 'nen anderen Port.


Genauer gesagt... jetzt kommt's Masquerading ins Spiel.


Der Router bekommt von Rechner A die Anfrage, nur kann natürlich im Internet mit 'ner Adresse der Markte "192.168.x.x" niemand was anfangen. Der Router geht daher her, und verpackt das Paket neu. Er setzt seine "externe" IP Adresse an die Stelle des aufrufenden Rechners und gibt dem Paket ggf. auch 'nen neuen Port. Aus 192.168.0.10:1026 wird z.B. 123.456.789.12:34423.

Intern merkt sich der Router allerdings, daß eine Antwort auf dieses Paket an 192.168.0.10:1026 weiterzuschicken ist.

Sollten jetzt tatsächlich beide Rechner zufällig vom gleichen Port aus 'ne Anfrage schicken ist das unerheblich. Aus 192.168.0.12:1026 wird "extern" 123.456.789.12:34423, aus 192.168.0.13:1026 womöglich 123.456.789.12:45231. Intern merkt sich der Router sehr wohl, wohin die entsprechenden Antworten gehen sollen, er unterscheidet anhand des Ports, an den die Antwort geht.


Ausgehende, also von Dir angeforderte, Verbindungen haben demzufolge selten bis nie Probleme und bedürfen idR auch keines Port Forwardings.

PF wird dann interessant, wenn Du ankommende Verbindungen hast. Der Router weiß ja nicht, was er mit einem Paket anstellen soll, daß ihm da an port 4662 auf die Schnauze fliegt. Er guckt in seinen Masquerading table und stellt fest, des hod kana beschtö'd.

Beim PF passiert nun relativ simpel folgendes, nämlich daß der Router einfach und simpel alles, was an bestimmten Ports ankommt "ung'schaut" an einen Rechner dahinter weitergibt. Dabei kann ein halbwegs intelligenter Router auch Port changes durchführen. Also alles, was an Port 4711 ankommt an Rechner A mit Port 0815 weiterschicken.

________________________________________________________________________
Some people are like compilers. They take simple statements, add stuff from their memory, assume what you don't tell them explicitely and make some big production out of it.
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung