Auf welcher Ebene des OSI-Modells funktioniert NAT?

8

Einfache Frage und die Antwort ist natürlich Schicht 3, aber können wir sagen, dass PAT auf Schicht 4 arbeitet, auch weil es sich um Portnummern handelt, die eine Schicht 4-Funktion sind?

Oder ist es nur ein Layer 3-Protokoll?

aia87
quelle
"Netzwerk" ist das Schlüsselwort. Die Netzwerkschicht. Am faszinierendsten: Wie bekommt diese Frage 6 positive Stimmen? Hmmm .... (Ich sage nicht, dass es eine schreckliche Frage ist, aber es ist sicherlich nicht spektakulär)
Ronnie Royston

Antworten:

11

NAT funktioniert auf Schicht 3, da es den IP-Header ändert. Wenn Sie PAT verwenden, können Sie argumentieren, dass es auch auf Schicht 4 funktioniert, da es möglicherweise den Quellport des Pakets ändert, falls es nicht eindeutig ist.

Mehrere interne Adressen können mithilfe einer Funktion namens Port Address Translation (PAT), die auch als "Überlastung" bezeichnet wird, einer Teilmenge der NAT-Funktionalität, auf nur eine oder wenige externe Adressen NATed werden.

PAT verwendet eindeutige Quellportnummern für die Inside Global IP-Adresse, um zwischen Übersetzungen zu unterscheiden. Da die Portnummer in 16 Bit codiert ist, könnte die Gesamtzahl theoretisch bis zu 65.536 pro IP-Adresse betragen.

PAT versucht, den ursprünglichen Quellport beizubehalten. Wenn dieser Quellport bereits zugewiesen ist, versucht PAT, die erste verfügbare Portnummer ab dem Anfang der entsprechenden Portgruppe 0-5111, 512-1023 oder 1024-65535 zu finden.

Wenn in der entsprechenden Gruppe immer noch kein Port verfügbar ist und mehr als eine IP-Adresse konfiguriert ist, wechselt PAT zur nächsten IP-Adresse und versucht erneut, den ursprünglichen Quellport zuzuweisen. Dies wird fortgesetzt, bis keine verfügbaren Ports und IP-Adressen mehr verfügbar sind.

Der Port wird also nur geändert, wenn er nicht eindeutig ist.

Dieser Link zu Cisco bietet einen ziemlich guten Überblick über NAT.

Daniel Dib
quelle
Die Sache ist, dass ich diese Frage in einer schriftlichen Prüfung für ein Vorstellungsgespräch bekommen habe und ich muss wissen, ob ich diese einfache Frage einfach überdenke ... nat ist zweifellos ein Layer-3-Protokoll, aber PAT und statische Port-Zuordnung funktionieren nicht nur mit der IP ..Ich suchte nach einer Aussage darüber, dass nat ein Layer 4-Protokoll sein könnte, aber kein Glück, was denkst du? Würden Sie diese Antwort als richtige oder falsche Antwort nehmen? cisco.com/de/US/tech/tk175/tk15/…
aia87
5
In einem Interview würde ich suchen, wie ein Kandidat nicht nur binäres Richtig oder Falsch argumentiert. NAT ist Schicht 3, aber wenn Sie sich mit PAT und Schicht 4 befassen, würde ich das als gutes Wissen ansehen und mich nicht darum kümmern, eine binäre Antwort zu suchen.
Daniel Dib
3
Um dies zu erschweren, unterstützen Linux (etables) und einige SP-Kits (ALU ISAM) die MAC-Adresse NAT. So ziemlich alles könnte alles sein. Aber normalerweise meinen Leute, wenn sie NAT sagen, NAPT / PAT. Es ist jedoch besser, dem @ DanielDib-Kandidaten voll und ganz zuzustimmen, dass es besser ist, die Konzepte zu verstehen, als sich Antworten zu merken.
Ytti
3
Zusätzlich muss ein Teil von NAT auf Schicht 7 arbeiten, wenn in das zu übersetzende Protokoll Adressen eingebettet sind. FTP ist ein Beispiel.
Chrylis -on Streik-
Selbst "Basic NAT" erfordert Änderungen an Layer 4-Headern, um verwendet werden zu können.
Peter Green
4

Nat ist ein Cross-Layer-Prozess. Es handelt sich um mindestens die Schichten 3 (IP) und 4 (TCP, UDP usw.). In einigen Fällen kann es sich auch um Schicht 7 (Anwendung) handeln.

Ein Eins-zu-eins-NAT muss mindestens die IP-Adressen (Schicht 3), IP-Prüfsummen (Schicht 3) und TCP / UDP-Prüfsummen (Schicht 4) ändern.

Ein bis viele NAT müssen mindestens die IP-Adressen (Schicht 3), IP-Prüfsummen (Schicht 3), TCP / UDP-Ports (Schicht 4) und TCP / UDP-Prüfsummen (Schicht 4) ändern.

Solch ein minimales NAT wird viele Dinge kaputt machen (zum Beispiel FTP im aktiven Modus). Die meisten NATs gehen daher über die Grundlagen hinaus und führen auch die Übersetzung und Verfolgung von mindestens einigen IP-Adressen in Anwendungsdaten durch (Schicht 7).

Peter Green
quelle
0

Überlegen Sie, wie dies über Pakete von demselben Gerät hinweg konsistent sein muss ... zumindest innerhalb von Sitzungen. Sie könnten daher argumentieren, dass Sie dies auf Stufe 5 oder noch höher setzen sollten. Nur weil es nach unten reicht, um IP-Header zu ändern, sollte es nicht von der Berücksichtigung durch die höheren Schichten ausgeschlossen werden. Niedrigere Schichten wissen möglicherweise nichts über höhere Schichten, aber höhere Schichten können die niedrigeren Schichten kennen und manipulieren. In der Tat scheint Schicht 6 angemessen zu sein. Aus Wikipedia:

Entitäten auf Anwendungsebene verwenden möglicherweise unterschiedliche Syntax und Semantik, wenn der Präsentationsdienst eine große Zuordnung zwischen ihnen bereitstellt.

Die Zuordnung zwischen Adressen, selbst wenn sich die Adressen auf Ebene 3 statt auf Ebene 7 befinden, scheint eine sehr wichtige Aufgabe auf Präsentationsebene zu sein.

Joel Coehoorn
quelle
Es gibt kein Betriebssystem, das separate Schichten 5 bis 7 implementiert hat. Einfach ausgedrückt, die Schichten 5 bis 7 werden als einzelne Anwendungsschicht implementiert.
Ron Maupin