Die statusmäßige NAT64-Funktion ermöglicht die Kommunikation zwischen IPv6-Clients und IPv4-Servern über die IPv6-zu-IPv4-Paketübersetzung und umgekehrt, wobei die Sitzungsinformationen auf der NetScaler-Appliance erhalten bleiben.
Eine statusmäßige NAT64-Konfiguration auf der NetScaler-Appliance besteht aus den folgenden Komponenten:
-
NAT64-Regel— Ein Eintrag, der aus einer ACL6-Regel und einem Netzprofil besteht, das aus einem Pool von NetScaler-eigenen SNIP-Adressen besteht.
-
NAT64-IPv6-Präfix— Ein globales IPv6-Präfix mit einer Länge von 96 Bit (128-32=96), das auf der Appliance konfiguriert ist. Hinweis: Derzeit unterstützt die NetScaler-Appliance nur ein Präfix, das gemeinsam mit allen NAT 64-Regeln verwendet wird.
Die NetScaler-Appliance betrachtet ein eingehendes IPv6-Paket für die NAT64-Übersetzung, wenn alle der folgenden Bedingungen erfüllt sind:
-
Das eingehende IPv6-Paket entspricht der ACL6-Regel, die an eine NAT64-Regel gebunden ist.
-
Die Ziel-IP-Adresse des IPv6-Pakets entspricht dem NAT64-IPv6-Präfix.
Wenn ein von der NetScaler-Appliance empfangenes IPv6-Anforderungspaket mit einer in einer NAT64-Regel definierten ACL6 übereinstimmt und die Ziel-IP des Pakets mit dem NAT64-IPv6-Präfix übereinstimmt, betrachtet die NetScaler-Appliance das IPv6-Paket zur Übersetzung.
Die Appliance übersetzt dieses IPv6-Paket in ein IPv4-Paket mit einer Quell-IP-Adresse, die einer der IP-Adressen entspricht, die an das in der NAT64-Regel definierte Netzprofil gebunden sind, und einer Ziel-IP-Adresse, die aus den letzten 32 Bit der Ziel-IPv6-Adresse des IPv6-Anforderungspakets besteht. Die NetScaler-Appliance erstellt eine NAT64-Sitzung für diesen bestimmten Flow und leitet das Paket an den IPv4-Server weiter. Nachfolgende Antworten vom IPv4-Server und Anfragen vom IPv6-Client werden von der Appliance auf der Grundlage der Informationen in der jeweiligen NAT64-Sitzung entsprechend übersetzt.
Stellen Sie sich ein Beispiel vor, in dem ein Unternehmen die Website www.example.com auf dem Server S1 hostet, der über eine IPv4-Adresse verfügt. Um die Kommunikation zwischen IPv6-Clients und IPv4-Server S1 zu ermöglichen, wird die NetScaler Appliance NS1 mit einer statusbehafteten NAT64-Konfiguration bereitgestellt, die eine NAT64-Regel und ein NAT64-Präfix enthält. Eine zugeordnete IPv6-Adresse des Servers S1 wird gebildet, indem das NAT64-IPv6-Präfix
und die IPv4-Quelladresse
verkettet werden. Diese zugeordnete IPv6-Adresse wird dann manuell auf den DNS-Servern konfiguriert. Die IPv6-Clients erhalten die zugeordnete IPv6-Adresse von den DNS-Servern, um mit dem IPv4-Server S1 zu kommunizieren.
Es folgt der Verkehrsfluss in diesem Beispiel:
-
Der IPv6-Client CL1 sendet ein Anforderungspaket an die Map-Sevr-IPv6-Adresse (2001:DB 8:300: :192.0.2.60).
-
Die NetScaler-Appliance empfängt das Anforderungspaket. Wenn das Anforderungspaket mit der in der NAT64-Regel definierten ACL6 übereinstimmt und die Ziel-IP-Adresse des Pakets mit dem NAT64-IPv6-Präfix übereinstimmt, betrachtet NetScaler das IPv6-Paket zur Übersetzung.
-
Die Appliance erstellt ein übersetztes IPv4-Anforderungspaket mit:
-
Ziel-IP-Adressfeld, das das NAT64-Präfix enthält, das aus der Zieladresse der IPv6-Anfrage entfernt wurde (sevr_IPv4 = 192.0.2.60)
-
Feld für die Quell-IP-Adresse, das eine der an Netprofile-1 gebundenen IPv4-Adressen enthält (in diesem Fall 192.0.2.100)
-
Die NetScaler-Appliance erstellt eine NAT64-Sitzung für diesen Flow und sendet die übersetzte IPv4-Anfrage an Server S1.
-
Der IPv64-Server S1 sendet daraufhin ein IPv4-Paket an die NetScaler-Appliance mit:
-
Ziel-IP-Adressfeld, das 192.0.2.100 enthält
-
Quell-IP-Adressfeld, das die Adresse von SEVR_IPv4 enthält (192.0.2.60)
-
Die Appliance empfängt das IPv4-Antwortpaket, durchsucht alle Sitzungseinträge und stellt fest, dass das IPv6-Antwortpaket mit dem in Schritt 4 erstellten NAT64-Sitzungseintrag übereinstimmt. Die Appliance betrachtet das IPv4-Paket für die Übersetzung.
-
Die Appliance erstellt ein übersetztes IPv6-Antwortpaket mit:
-
Die Appliance sendet die übersetzte IPv6-Antwort an den Client CL1.