Zum Inhalt springen

Hilfe bei NAT(Network Adress Translation)


yasd

Empfohlene Beiträge

Hallo Gemeinde,

mich verwirrt immer wieder der Begriff NAT. Bis jetzt habe ich es so verstanden, dass die IP-Adressen der internen Rechner gegen eine noch nicht benutzte öffentlichen IP-Adresse ausgetauscht werden, sprich bei eingehende Pakete merkt sich NAT welcher Computer die Pakete angefordert hatte und leitet die Pakete so an den Zielrechner weiter...

Lege ich da falsch??? oder wie ist es am besten zu erklären???

Warum werden die Rechner gegen eine öffentliche IP-Adresse ausgetauscht?

z.B

192.168.0.2 <-> 205.0.0.2

192.168.0.3 <-> 205.0.0.3

192.168.0.4 <-> 205.0.0.4

Was hat es für eine Wirkung?

Ich hoffe ihr könnt mir bitte helfen, ich hab ganzezeit im Internet gesucht aber trotzdem keine gute erklärung bzw. nicht so verstanden was Sinn und Zweck von NAT ist.

Danke im Voraus

lg

Link zu diesem Kommentar
Auf anderen Seiten teilen

NAT macht nichts anderes als die Pakete adressorientiert zu routen, indem es zusätzliche Headerinformationen in diese schreibt, ausliest und auswertet.

Am Besten erklärt man das an einem Beispiel:


                ,---.

Rechner A -----	| R |

		| o |

Rechner B ----- | u | --------- Netz

		| t |

Rechner C ----- | e |

		| r |

		`---'

Rechner A bis C und der Router sitzen alle im gleichen Netz (Bsp: 192.168.0.0/24), der Router hat nach aussen eine Adresse aus einem anderen Netz (192.168.2.254/32). Da die Rechner alle gleichzeitig ins Netz wollen müssen sie nach aussen adressierbar sein, leider wird die Netzadressierung von denen aber auch von anderen Netzwerken verwendet, die Eindeutigkeit wäre also hier nicht gegeben und die Pakete würden nicht vollständig sinnvoll geroutet werden.

Hier kommt NAT inst Spiel: NAT sitzt als Protokoll auf dem Router und nimmt sich alle Pakete vor die ein- und ausgehen. Für die Richtung nach aussen merkt NAT von wem sie gesendet worden sind und wohin sie sollen, überschreibt die Quelladresse mit der Adresse des Routers nach aussen (192.168.2.254) und schickt sie auf den Weg. Wenn die Pakete reinkommen guckt NAT nach, ob es die Antwort auf bereits verschickte Pakete ist und ordnet sie dementsprechend dem Empfänger zu, indem die Zieladresse mit der Adresse des Rechners im lokalen Netz überschrieben wird.

Rechner A will also mit Google kommunizieren, schickt sein Request. Der Router nimmt das Paket, merkt es sich, schreibt anstatt der Adresse vom Rechner A seine rein (192.168.0.A -> 192.168.2.254) und verschickt es weiter. Rechner C will dann mit Yahoo sprechen und schickt ebenfalls sein Paket auf den Weg. Der Router merkt sich auch dieses Paket, überschreibt auch hier die Quelladresse (192.168.0.C -> 192.168.2.254) und routet es weiter. Jetzt kommen die Antworten wieder rein und NAT guckt, welches Paket zu welchen Rechner soll und überschreibt die Zieladresse mit der Adresse des Rechner, der die Anfrage gesendet hat (yahoo: 192.168.2.254 -> 192.168.0.C, google: 192.168.2.254 -> 192.168.0.A).

NAT ermöglicht es also ein Netz auf eine Adresse zu bündeln und auf dem Rückweg der Kommunikation wieder aufzusplitten. NAT ist dabei aber kein Sicherheitsfeature und nur eine Krücke um IPv4 länger am Leben zu erhalten.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das was navy beschreibt ist aber kein NAT mehr, sondern ein NAPT ;)

nen NAT macht nichts anderes als die am router eingehende (IP Source auf A Seite des Routers) IP beim Versand gegen eine andere (IP Source auf B Seite des Routers) zu tauschen.

Das wäre dann ein 1:1 NAT. Sprich jede IP auf Seite A des Routers wird gegen eine deindeutige andere auf Seite B des Routers getauscht. Funktioniert also sowohl eingehend als auch ausgehend.

Hintergrund sowas einzusetzen wäre zum Beispiel, dass man intern ein private Class C Netz verwendet und auf der Internetseite des Routers ebenfalls ein Class C Netz hat. Jede private IP entspricht nun genau einer öffentlichen IP.

Wechselt nun aus irgendwelchen Gründen das öffentliche IP Netz (beispielsweise von 213.128.1.0/24 zu 194.160.250.0/24 [willkürlich gewählte IPs]) braucht man an seinen LAN Clients absolut nichts einstellen. Diese behalten Ihre privaten Adressen. Lediglich die NAT Tabelle muss korrigiert werden. Man hat also einen Single Point of Configuration und spart sich viel Zeit. Es geht einfach schneller eine NAT Tabelle zu schreiben als auf 254 Clients im LAN die IP zu ändern ;)

Ein anderes Konzept hast du, wenn du einige LAN IPs auf eine oder wenige WAN IPs umsetzen willst. Also das was man klassischerweise im SoHo Bereich als Router bezeichnet (und eigentlich nur nen NAPT Gateway ist).

Hierbei baut man ein sog. n:1 oder n:m NA(P)T.

Das Konzept hierzu hat navy ja beschrieben. Allerdings wird hierbei dann eben nicht nur die IP getauscht sondern zusätzlich der Port, so dass für jede Kommunikationsbeziehung 2 Netzwerksockets (Socket == IP:Port) entstehen. Einer zwischen Client im LAN und NAPT Gateway und ein weiterer zwischen NAPT Gateway (WAN Seite) und der zu erreichenden Gegenstelle.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo yasd

Das Ganze hat den Sinn: Die internen, privaten IP-Adressen sind private Adressen und werden nicht im Internet geroutet. Somit kannst du dir ein beliebig großes Heimnetzwerk aufbauen. Der NAT Router ermöglicht jetzt die Verbindung zum Internet, weil er die internen, privaten IP-Adressen beim Routen (Gateway) gegen eine öffentliche, geroutete IP-Adresse austauscht. Das ist die, die du bei der Einwahl vom Provider/ISP zugewiesen bekommst.

Der Router merkt sich in einer Tabelle, woher das Paket gekommen und wohin es gegangen ist. Ich bin mir nicht sicher, aber ich glaube das geschieht über die Port-Angabe (Quellport-Zielport). Der Zielport 80 steht z.B. für http. Der Quellport ist meistens eine Zahl zwischen 1025 und 65536. Beispiel:

interne IP des Client.......................externe IP des Routers

192.168.1.6:34567 ---> Router ---> 87.29.234.17:34567 ---> z.B Webseite:80

Jetzt kommt das Paket von der Webseite:80 zurück an die IP des Routers mit dem Port 34567, dann weiss der Router anhand der Tabelle: Port 34567 an 192.168.1.6:34567 weiter schicken.

Beispiel mehrere Clients:

interne IP des Client.......................externe IP des Routers

192.168.1.2:33567 ---> Router ---> 87.29.234.17:33567 ---> z.B Webseite:80

192.168.1.3:12345 ---> Router ---> 87.29.234.17:12345 ---> z.B FTP-Server:21

192.168.1.4:65550 ---> Router ---> 87.29.234.17:65550 ---> z.B EMail-Server:25

192.168.1.5:45678 ---> Router ---> 87.29.234.17:45678 ---> z.B Webseite:80

192.168.1.6:34567 ---> Router ---> 87.29.234.17:34567 ---> z.B Webseite:80

Auf der externen Ebene unterhalten sich im Prinzip nur die Webseite und der Router. Der Router schickt das Paket an den internen Rechner weiter, der die Verbindung initiiert hat.

Beim NAT Routing hast du eine natürliche Firewall. Die internen IP-Adressen sind von Außen nicht sichtbar.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Asche auf mein Haupt. ich habe tatsächlich NAPT beschrieben, wohlwissend der Unterschiede beider Funktionsweisen. rfc 3022 ist mir geläufig, habe aber leider in der Praxis viel zu wenig mit der Abstraktionsebene zu tun...

Beim NAT Routing hast du eine natürliche Firewall. Die internen IP-Adressen sind von Außen nicht sichtbar.

Das ist falsch. NAT und Firewall haben genau nichts gemein. NAT ermöglicht es ja direkt auf den Rechner durch die umgesetzte Adresse zuzugreifen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das ist falsch. NAT und Firewall haben genau nichts gemein. NAT ermöglicht es ja direkt auf den Rechner durch die umgesetzte Adresse zuzugreifen.

Die Funktionsweise die ich beschrieben habe ist eine Art Firewall. Die internen IP-Adressen sind NICHT von Außen sichtbar, bzw rout'bar. Es ist dir von Außen nicht möglich, eine 192.168.1.x IP anzusprechen. Zudem sollte der NAT-Router von Außen komplett dicht sein.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Asche auf mein Haupt. ich habe tatsächlich NAPT beschrieben, wohlwissend der Unterschiede beider Funktionsweisen. rfc 3022 ist mir geläufig, habe aber leider in der Praxis viel zu wenig mit der Abstraktionsebene zu tun...

Kein Problem. Ich hab da auch nur mit zu tun, weil ich das Vergnügen der Einführungsschulungen für neue Tekkis im Support hatte :-)

Im normalen Sprachgebrauch ist mit NAT ja ohnehin zu 99,9% NAPT gemeint. Zeigt dieser Thread hier ja auch wieder schön, dass man von NAT spricht, aber NAPT beschreibt ;)

BTW: ich kenne tatsächlich Kunden, die als Anforderung ein reines PAT haben.. Das dürfte sogar noch seltener sein, als reines NAT ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...