Router, IP Addresse ersetzt?



  • Hallo Leute,

    was macht ein Router beim weiterschicken eines Paketes? Bzw genauer gefragt: Ersetzt der Router die IP Adressen?
    Ich würde nein sagen, weil es nicht nötig ist. Er verpackt das IP Paket in das Protokoll des lokalen Netzes und schickt es über seine Routingtabelle zum nächsten Router.

    Aber wenn ja, wo werden dann die "richtigen" Ziel und Quell IP's gespeichert?

    Google habe ich schon bemüht, aber keine konkreten Informationen gefunden.



  • Internet-Router leiten die Pakete einfach anhand ihrer Routing-Tabellen über bestimmte Routen weiter (= routing), meistens dynamisch (Auslastung etc.).

    Home-Router die man so hat, haben meistens NAT integriert (weil sie sonst zwecklos wären).
    NAT = Network Adress Translation = Netzwerk-Adressen Umwandlung / -setzung
    Da werden dann private Netz-Adressen (die NICHT ins Internet geroutet werden) zu der öffentlichen IP umgebaut und vice versa.



  • Hallo Sgt. Nukem,
    die IP wird also nur bei NAT Routern ersetzt. Die "richtigen" Internet Router ersetzen keine IP Adressen. Sie leiten das Paket einfach nur ins nächste Netz weiter.



  • UPS, Verlesen.



  • abcd schrieb:

    Hallo Sgt. Nukem,
    die IP wird also nur bei NAT Routern ersetzt. Die "richtigen" Internet Router ersetzen keine IP Adressen. Sie leiten das Paket einfach nur ins nächste Netz weiter.

    Yo. Wie sollen die Clients sonst auch wissen, wohin sie antworten müssen?!
    Ins nächste Netz? Was Du suchst ist ggf. eher eine "Bridge" (oder ein Gateway)...



  • Ok. Hab vielen Dank 🙂



  • Ergänzend wäre noch zusagen, daß es eine Erweiterung zu NAT gibt.
    Das Problem von Basic NAT (man benutzt den Zusatz "Basic" um den Unterschied zu NAPT hervorzuheben) war, daß es nicht mehrere Rechner ins Internet leiten konnte. Wenn man nur die IP-Adresse übersetzt, ist es zwar kein Problem, daß mehrere Rechner über den Router ins Internet senden. Sobald aber ein Rechner aus dem Inet antworten will, schickt es ein Paket an den Router, da dieser die Source-Adresse in den Paketen übersetzt hat. Der Router jedoch kann die Antwortpakete ohne zusätzliche Informationen nicht zuordnen, da die Zieladresse des Antwortpaketes seine eigene Adresse ist.
    Deshalb bedient man sich in diesem Falle als zusätzliche Information der IP-Ports. Der Router übersetzt nicht nur die IP-Adressen sondern auch die Ports.
    Diese Methode nennt sich NAPT (Network Adress Port Translation).

    Die Zuordnungen, wohin welches Paket geroutet wird, steht in den Routingtabellen und ist auf den jeweiligen Routern abgespeichert.



  • Hm, aber der NAt Router hat doch schon die Tabelle Tabelle, wo er nachschaut wer mit wem Kontakt aufgenommen hat. Wenn der Rechner aus dem Inet nun antwortet schaut er dort nach und leitet das Paket entsprechend seiner Tabelle weiter. Oder meinst Du das überall wo NAT dransteht eigentlich NAPT dranstehen müßte. (Bei Routern jetzt.)



  • Sgt. Nukem schrieb:

    Yo. Wie sollen die Clients sonst auch wissen, wohin sie antworten müssen?!
    Ins nächste Netz? Was Du suchst ist ggf. eher eine "Bridge" (oder ein Gateway)...

    ein router ist implizit ein Gateway.



  • abcd schrieb:

    Hm, aber der NAt Router hat doch schon die Tabelle Tabelle, wo er nachschaut wer mit wem Kontakt aufgenommen hat. Wenn der Rechner aus dem Inet nun antwortet schaut er dort nach und leitet das Paket entsprechend seiner Tabelle weiter. Oder meinst Du das überall wo NAT dransteht eigentlich NAPT dranstehen müßte. (Bei Routern jetzt.)

    NAPT ist eine Erweiterung bzw. Unterart von NAT. Somit hatt es schon seine Richtigkeit, wenn man auch NAPT als NAT bezeichnet. Reines NAT ohne NAPT wird, wie gesagt, als Basic NAT bezeichnet. Hierbei ist keine Routing-Tabelle von Nöten, da sowieso alle Pakete an den einzigen Rechner im "LAN" geschickt werden.
    Bei Basic NAT ändert/übersetzt der Router stupide die Source Address aller Pakete aus dem "LAN" ins Inet und die Destination Address aller Pakete aus dem Inet ins "LAN" (LAN in "", da nur ein einziger Rechner). Alle Rechner aus dem Inet adressieren ihre Pakete an den Router, vom Rechner hinter dem Router haben diese keine Ahnung.
    Bei NAPT wird zusätzlich zu der Source Address auch noch der Source Port geändert.

    Bsp.:
    1. Rechner A (192.168.1.2) sendet über Port 2048 ein Paket Ax an www.c-plusplus.net:80.
    2. Rechner B (192.168.1.3) sendet über Port 4096 ein Paket Bx an www.heise.de:80.
    3. Router übersetzt die source address des Paketes Ax in seine öffentliche IP-Adresse (1.2.3.4) und den source port in 1. Vermerkt dies in seiner Routing-Tabelle.
    4. Router übersetzt die source address des Paketes Bx in seine öffentliche IP-Adresse (1.2.3.4) und den source port in 2. Vermerkt dies in seiner Routing-Tabelle.
    5. www.c-plusplus.net schickt ein Antwortpaket Ay auf Paket Ax an 1.2.3.4:1.
    6. www.heise.de schickt ein Antwortpaket By auf Paket Bx an 1.2.3.4:2.
    7. Router erhält Antwortpaket Ay. Zieladresse ist er selber, Zielport ist 1. Laut Routingtabelle, hat der Router den source port des Paketes Ax in 1 umgeschrieben, ergo ist Paket Ay eine Antwort auf Paket Ax.
    Paket Ay wird an Rechner A weitergeleitet.
    8. Router erhält Antwortpaket By. Zieladresse ist er selber, Zielport ist 2. Laut Routingtabelle, hat der Router den source port des Paketes Bx in 2 umgeschrieben, ergo ist Paket By eine Antwort auf Paket Bx.
    Paket By wird an Rechner B weitergeleitet.

    Grafisch wäre das Bsp. wohl verständlicher, aber auch viel aufwendiger zu schreiben, da ASCII-Art :p



  • Hallo c++=d,

    so ausführlich hättest Du es nicht machen brauchen 🙂
    Hab schon Textstellen gesehen wo sowas stand...

    Trotzdem vielen Dank 🙂



  • 1ntrud0r schrieb:

    Sgt. Nukem schrieb:

    Yo. Wie sollen die Clients sonst auch wissen, wohin sie antworten müssen?!
    Ins nächste Netz? Was Du suchst ist ggf. eher eine "Bridge" (oder ein Gateway)...

    ein router ist implizit ein Gateway.

    Eine Bridge ist auch im Prinzip ein Router.

    Trotzdem gibt es ja da die "feinen Unterschiede"...


Anmelden zum Antworten