Wir müssen von den Grundlagen ausgehen, also überarbeiten wir die NAT-Terminologie. NAT übersetzt IP-Adressen in IP-Pakete, richtig? Was bedeutet das? Dass es im Grunde Trugbilder erzeugt - ja, optische Täuschungen, wissen Sie. In einer typischen NAT-Konfiguration, in der privat adressierte LAN-Hosts über die öffentliche IP-Adresse der externen Router-Schnittstelle auf das Internet zugreifen, werden diese Hosts für Internet-Server mit dieser öffentlichen IP (oder IPs aus einem Pool öffentlicher IPs) angezeigt. NAT erstellt natürlich keine neuen physischen Hosts - aber es erstellt eine Art neue virtuelle Entitäten - in diesem Beispiel sehen sich die LAN-Hosts als beispielsweise 192.168.1.x, aber Internet-Server sehen sie als 203.0.113.x - Ein Satz physischer Hosts, aber zwei Sätze IP-Adressen. Zwei verschiedene Sätze von (logischen) Hosts. Optische Täuschung. Und die Terminologie lautet:
- inside local - "echte" IP-Adressen der internen Hosts, wie sie ihren Schnittstellen zugewiesen sind und wie sie sich sehen
- inside global - "Mirage" -IP-Adressen aus Sicht der Außenwelt
- außerhalb global - "echte" IP-Adressen der externen Hosts, wie sie von sich selbst und vom (fast) gesamten Internet gesehen werden
- außerhalb lokal - "Mirage" IP-Adressen, wie wir externe Hosts sehen (wenn wir NAT gebeten haben, entsprechend zu übersetzen)
Und wie Sie sehen, sind wir verpflichtet, zwischen unserem Netzwerk und dem Internet oder einem anderen externen Netzwerk zu unterscheiden. Wir tun dies, indem wir die IP-Schnittstellen unseres Routers entweder als IP-Adresse innerhalb oder als IP-Adresse außerhalb markieren .
Erinnern wir uns nun daran, wie NAT normalerweise implementiert wird: Es verwaltet spezielle Tabellen, die Einträge zu Übersetzungen enthalten. Und der wichtige Punkt ist, dass diese Einträge entweder statisch oder dynamisch erstellt werden können . Bei dynamisch erstellten Einträgen ist die Verkehrsrichtung wichtig - wird der Verkehr von innen nach außen oder umgekehrt initiiert? Bei statischen Einträgen ist dies nicht der Fall - sie sind symmetrisch . NAT - Konfiguration Anweisungen, die das enthalten statische Schlüsselwort statische Einträge erstellen unmittelbar nach dem sie in den laufenden Config setzen; Diejenigen mit dem dynamischen Schlüsselwort achten auf den interessanten Datenverkehr und erstellen dynamisch Übersetzungseinträge, die dann eine Zeitüberschreitung verursachen.
Über Ihre letzte Frage können wir bereits spekulieren: Warum gibt es keine Option für ein externes Ziel ? ip nat inside source static erstellt einen statischen NAT-Eintrag, der genau wie von Ihnen beschrieben übersetzt wird. Dies umfasst jedoch nicht nur den von einer bestimmten Seite initiierten Datenverkehr - statische NAT-Einträge sind symmetrisch. Also, ip nat outside Ziel statisch wäre für die Übersetzung einen statischen Eintrag erstellen Ziel - IP - Adressen von Datenverkehr in Ihr Netzwerk aus der Eingabe außerhalb UND Quelle IP - Adressen für den Verkehr aus gehen innen - aber das ist genau das, was nat inside Quelle statische IPBefehl tut! Es ist also einfach überflüssig, diesen Befehl zu haben. Der einzige Unterschied besteht darin, dass Sie die Quelle mit der Ziel-IP austauschen würden, wenn Sie die eine oder andere Form des im Grunde gleichen Befehls verwenden.
In Bezug auf Ihre erste Aussage "Es gibt drei mögliche Kombinationen von Innen / Außen / Quelle / Ziel, die konfiguriert werden können" - dies ist nicht ganz so. Der Punkt ist, dass NAT-Konfigurationsanweisungen im Allgemeinen keine "mathematischen Formeln" sind und vollständig betrachtet werden sollten und nicht so, wie sie logisch aus unabhängigen Schlüsselwörtern aufgebaut sind. Jede "Kombination" stellt also eine Lösung für eine bestimmte Aufgabe dar. Beispielsweise wird ip nat in der Zielliste zum Konfigurieren des Server-TCP-Lastausgleichs verwendet, der einen bestimmten Algorithmus verwendet und nicht mit UDP funktioniert. Außerdem gibt es (in modernen IOS) keine IP-Adresse im statischen Zielbefehl - haben Sie es tatsächlich mit der statischen Option versucht ?
In diesem Cisco-Dokument finden Sie einige spezielle Szenarien für die Verwendung von NAT, einschließlich Konfigurationsbeispielen: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_nat/configuration/12-2sx /nat-12-2sx-book/iadnat-addr-consv.html
Abschließend möchte ich erwähnen, dass NAT manchmal nicht das ist, was Sie wollen. Schauen Sie sich zum Beispiel meine Antwort auf diese "kanonische Frage" an: /server/55611/loopback-to-forwarded-public- IP-Adresse-vom-lokalen-Netzwerk-Haarnadel-nat / 733532 # 733532
PS Soll ich näher darauf eingehen?