Zustandsbehaftetes NAT64
Konfigurieren von Stateful NAT64
Um Stateful NAT64 zu konfigurieren, müssen Sie auf Hierarchieebene eine Regel konfigurieren, um [edit services nat] die Quelladresse dynamisch und die Zieladresse statisch zu übersetzen.
Wenn Sie den Dienstsatz konfigurieren, der Ihre NAT-Regel enthält, schließen Sie die set stateful-nat64 clear-dont-fragment-bit auf Hierarchieebene [edit services service-set service-set-name] ein. Dadurch wird das DF-Bit (Don't Fragment) gelöscht, um die unnötige Erstellung eines IPv6-Fragmentierungs-Headers bei der Übersetzung von IPv4-Paketen mit weniger als 1280 Byte zu verhindern. RFC 6145, IP/ICMP Translation Algorithm, bietet eine vollständige Diskussion der Verwendung des DF-Flags zur Steuerung der Generierung von Fragmentierung-Headern. Weitere Informationen zu Service-Sets für NAT finden Sie unter Service-Sets für Network Address Translation konfigurieren.
So konfigurieren Sie Stateful NAT64:
Im folgenden Beispiel wird die Übersetzung dynamischer Quelladressen (IPv6 zu IPv4) und statischer Zieladressen (IPv6 zu IPv4) konfiguriert.
[edit services]
user@host# show
nat {
pool src-pool-nat64 {
address 203.0.113.0/24;
port {
automatic;
}
}
rule stateful-nat64 {
match-direction input;
term t1 {
from {
source-address {
2001:db8::0/96;
}
destination-address {
64:ff9b::/96;
}
}
then {
translated {
source-pool src-pool-nat64;
destination-prefix 64:ff9b::/96;
translation-type {
stateful-nat64;
}
}
}
}
}
}
service-set sset-nat64 {
nat-options {
stateful-nat64 {
clear-dont-fragment-bit;
}
}
service-set-options;
nat-rules stateful-nat64;
interface-service {
service-interface ms-0/1/0;
}
}
Wenn Sie zwei NAT64-Regeln konfigurieren und sie zusammen mit Stateful-Firewall-Regeln demselben Servicesatz zuordnen und den Servicesatz auf zwei VLAN-getaggten Schnittstellen anwenden, wird der Datenverkehr, der für die zweite NAT-Regel bestimmt ist, für Datenverkehr verworfen, der mit beiden NAT-Regeln übereinstimmt. In einem solchen Szenario werden Datenverkehrsströme nicht auf der Routing-Engine verworfen. Dieses Verhalten des Datenverkehrsverlusts durch die zweite NAT-Regel ist zu erwarten. Wenn Junos OS Extension-Provider-Pakete auf einem Gerät installiert sind, weil die Endgerät-unabhängige Zuordnung (EIM) nicht unterstützt wird, EIM pro VLAN oder pro NAT-Regelbegriff. Die zweite Sitzung, die durch die zweite NAT-Regel im hier beschriebenen Konfigurationsszenario gelöscht wird, wird aufgrund der folgenden Ereignisabfolge nicht erstellt:
Das erste Paket, das mit einer der beiden Regeln übereinstimmt, erstellt ein EIM und eine Sitzung.
Das zweite Paket stimmt mit dem EIM-Eintrag überein, da das zweite Paket mit derselben Quell-IP-Adresse und demselben Port wie das erste Paket gesendet wird (jedoch mit einer anderen Zieladresse).
Diese Bedingung bewirkt die Zuweisung (Wiederverwendung) derselben öffentlichen IP-Adresse und desselben Ports für das zweite Paket wie für das erste Paket. Der Reverse-Flow für diese Sitzung hat die gleichen 5-Tupel-Daten wie der Reverse-Flow der ersten Sitzung. Dieses Verhalten führt zu einem Fehler beim Hinzufügen von Flows, da ein doppelter Flow im selben Service-Set nicht zulässig ist.
Um dieses Problem zu umgehen, deaktivieren Sie EIM in beiden NAT-Regeln, wodurch beide Sitzungen ordnungsgemäß eingerichtet und verarbeitet werden. Um dieses Problem zu vermeiden, können Sie alternativ die NAT-Regeln für verschiedene Service-Sets angeben, die auf verschiedenen Einheiten der Medienschnittstelle mit aktiviertem EIM konfiguriert sind, um beide Sitzungen erfolgreich einzurichten.
Tabellarischer Änderungsverlauf
Die Unterstützung der Funktion hängt von der Plattform und der Version ab, die Sie benutzen. Verwenden Sie den Feature-Explorer , um festzustellen, ob eine Funktion auf Ihrer Plattform unterstützt wird.
sequential Sie die sequenzielle Zuweisung von Ports konfigurieren können.