Citrix ADC

Großes NAT64

Aufgrund der bevorstehenden Erschöpfung von IPv4-Adressen haben ISPs den Übergang zur IPv6-Infrastruktur begonnen. Während des Übergangs müssen ISPs jedoch weiterhin IPv4 zusammen mit IPv6 unterstützen, da der Großteil des öffentlichen Internets immer noch IPv4 verwendet. Der große NAT64 ist eine IPv6-Übergangslösung für ISPs mit IPv6-Infrastruktur, um ihre nur IPv6-Abonnenten mit dem IPv4-Internet zu verbinden. DNS64 ist eine Lösung, um die Erkennung von nur IPv4-Domänen durch nur IPv6-Clients zu ermöglichen. DNS64 wird mit großem NAT64 verwendet, um eine nahtlose Kommunikation zwischen nur IPv6-Clients und nur IPv4-Servern zu ermöglichen.

Eine Citrix ADC Appliance implementiert große NAT64 und DNS64 und ist kompatibel mit RFCs 6145, 6146, 6147, 6052, 3022, 2373, 2765 und 2464.

Architektur

Die NAT64-Architektur eines ISP, der eine Citrix ADC Appliance verwendet, besteht aus IPv6-Abonnenten, die über eine Citrix ADC-Appliance auf das IPv4-Internet zugreifen, die im Kernnetzwerk des ISP bereitgestellt wird. IPv6-Abonnenten sind über das reine IPv6-Zugriffsnetzwerk des ISP mit dem Kernnetzwerk des ISP verbunden.

lokalisiertes Bild

Die groß angelegte NAT64-Funktionalität einer Citrix ADC Appliance ermöglicht die Kommunikation zwischen IPv6-Clients und IPv4-Servern über IPv6-zu-IPv4-Paketübersetzung und umgekehrt, während die Sitzungsinformationen auf der Citrix ADC-Appliance.Citrix ADC DNS64-Funktionalität stellt nur IPv4-Domänen zu IPv6- Abonnenten, indem DNS-AAAA-Einträge für reine IPv4-Domänen synthetisiert und an die Abonnenten gesendet werden.

NAT64 im großen Maßstab hat zwei Hauptkomponenten: NAT64-Präfix und NAT IPv4-Pool. DNS64 hat eine Hauptkomponente, DNS64-Präfix, die denselben Wert wie das NAT64-Präfix hat.

Nach Erhalt einer AAAA-Anforderung von einem Nur-IPv6-Abonnenten für einen Domänennamen, der auf einem Nur-IPv4-Webserver im Internet gehostet wird, synthetisiert die Citrix ADC DNS64-Funktionalität einen AAAA-Eintrag für den Domänennamen und sendet ihn an den Abonnenten. Der AAAA-Eintrag wird synthetisiert, indem das DNS64-Präfix (das auf das NAT64-Präfix gesetzt ist) und die tatsächliche IPv4-Adresse des Domänennamens verkettet wird.

Der Abonnent verfügt nun über eine IPv6-Zieladresse, die dem gewünschten Domänennamen entspricht. Der Abonnent sendet die Anfrage an die synthetisierte IPv6-Adresse. Nach Erhalt der IPv6-Anforderung übersetzt die große Citrix ADC NAT64-Funktionalität das IPv6-Anforderungspaket in ein IPv4-Anforderungspaket. NAT64 im großen Maßstab setzt die Zieladresse der IPv4-Anforderung auf die IPv4-Adresse, die aus der Zieladresse der IPv6-Anforderung extrahiert wird, indem das NAT64-Präfix von der IPv6-Adresse entfernt wird. Der Zielport wird von der IPv6-Anforderung beibehalten. Large Scale NAT64 setzt auch die Quell-IP-Adresse:Quellport des IPv4-Pakets auf die NAT-IP-Adresse:NAT-Port, der aus dem konfigurierten NAT-Pool ausgewählt wurde.

Die Appliance verwaltet eine Aufzeichnung aller aktiven Sitzungen, die die große NAT64-Funktionalität verwenden. Diese Sitzungen werden als große NAT64-Sitzungen bezeichnet. Die Appliance verwaltet auch die Zuordnungen zwischen Teilnehmer-IPv6-Adresse und -Port sowie NAT-IPv4-Adresse und -Port für jede große NAT64-Sitzung. Diese Mappings werden als große NAT64-Mappings bezeichnet. Von großen NAT64-Sitzungseinträgen und großen NAT64-Zuordnungseinträgen erkennt die Citrix ADC Appliance ein Antwortpaket (aus dem Internet empfangen) als zu einer bestimmten NAT64-Sitzung gehört.

Wenn die Appliance ein IPv4-Antwortpaket empfängt, das zu einer bestimmten NAT64-Sitzung gehört, verwendet sie die in der NAT64-Sitzung gespeicherten Informationen, um das IPv4-Paket in ein IPv6-Paket zu übersetzen, und sendet dann das IPv6-Antwortpaket an den Abonnenten.

Beispiel: Verkehrsfluss der NAT64- und DNS64-Bereitstellung

Betrachten Sie ein Beispiel für eine umfangreiche NAT64- und DNS64-Bereitstellung, bestehend aus Citrix ADC Appliance NS-1 und zwei lokalen DNS-Servern, DNS-1 und DNS-2, im Kernnetzwerk eines ISP und IPv6-Abonnenten SUB-1. SUB-1 ist über das IPv6-Zugangsnetzwerk des ISP mit NS-1 verbunden. NS-1 umfasst umfangreiche NAT64- und DNS64-Konfigurationen für die Kommunikation zwischen IPv6-Teilnehmern SUB-1 und IPv4-Hosts (intern und extern).

Große NAT64-Konfiguration umfasst ein NAT64-Präfix (2001:DB 8:300: :/96) und NAT IPv4-Pool für die Übersetzung von IPv6-Anforderungen in IPv4-Anforderungen und IPv4-Antworten auf IPv6-Antworten.

Die DNS64-Konfiguration umfasst einen virtuellen DNS-Lastausgleichsserver LBVS-DNS64-1 (2001:DB 8:9999: :99) und ein DNS64-Präfix (2001:DB 8:300: :/96). LBVS-DNS64-1 stellt lokalen DNS-Server DNS-1 und DNS-2 für die Abonnenten des ISP dar. Das DNS64-Präfix, das den gleichen Wert wie das NAT64-Präfix hat, wird für die Synthese von DNS-AAAA-Einträgen aus DNS-A-Einträgen verwendet, die von DNS-Servern DNS-1 und DNS-2 empfangen werden. NS-1 antwortet mit einem synthetisierten AAAA-Eintrag an SUB-1 für eine DNS-Anforderung zum Auflösen eines IPv4-Hosts.

lokalisiertes Bild

DNS64-Datenverkehr

Der Datenverkehr fließt zwischen dem IPv6-Abonnenten SUB-1 und der Sitewww.example.com, die sich auf einem nur IPv4-Webserver im Internet befindet, wie folgt:

  1. IPv6-Abonnent SUB-1 sendet eine DNS-AAAA-Anforderung fürwww.example.com an den angegebenen DNS-Server (2001:DB 8:9999: :99).
  2. DNS-Lastenausgleichsserver LBVS-DNS64-1 (2001:DB 8:9999: :99) auf der Citrix ADC Appliance NS1 empfängt die AAAA-Anforderung. Der Lastausgleichsalgorithmus von LBVS-DNS64-1 wählt DNS-Server DNS-1 aus und leitet die AAAA-Anforderung an ihn weiter.
  3. DNS-1 gibt einen leeren Datensatz oder eine Fehlermeldung zurück, da kein AAAA-Eintrag verfügbar istwww.example.com.
  4. Da die DNS64-Option auf LBVS-DNS64-1 aktiviert ist und die AAAA-Anforderung von CL1 der in DNS64-Policy-1 angegebenen Bedingung entspricht, sendet NS1 eine DNS-A-Anforderung für die IPv4-Adresse von an DNS-1www.example.com.
  5. DNS-1 reagiert mit dem A-Rekord von 192.0.2.60 fürwww.example.com.
  6. DNS64-Modul auf NS1 synthetisiert einen AAAA-Datensatz für,www.example.com indem das DNS64-Präfix (2001:DB 8:300: :/96), das mit LBVS-DNS64-1 verknüpft ist, und die IPv4-Adresse (192.0.2.60) fürwww.example.com = 2001:DB 8:300: :192.0.2.60
  7. NS1 sendet den synthetisierten AAAA-Datensatz an den IPv6-Client CL1. NS1 speichert auch den A-Datensatz in seinen Speicher. NS1 verwendet den zwischengespeicherten A-Datensatz, um AAAA-Datensätze für nachfolgende AAAA-Anforderungen zu synthetisieren.

NAT64-Datenverkehr

  1. IPv6-Abonnent SUB-1 sendet eine Anfrage an 2001:DB 8:5001:30www.example.com. Das IPv6-Paket hat:

    • Quell-IP-Adresse = 2001:DB 8:5001:30
    • Quellport = 2552
    • Ziel-IP-Adresse = 2001:DB 8:300::192.0.2.60
    • Zielport = 80
  2. IPv6-Abonnent SUB-1 sendet eine Anfrage an 2001:DB 8:5001:30www.example.com. Das IPv6-Paket hat:

    • Quell-IP-Adresse = 2001:DB 8:5001:30
    • Quellport = 2552
    • Ziel-IP-Adresse = 2001:DB 8:300::192.0.2.60
    • Zielport = 80
  3. Wenn NS-1 das IPv6-Paket empfängt, erstellt das große NAT64-Modul ein übersetztes IPv4-Anforderungspaket mit:

    • Quell-IP-Adresse = Eine der IPv4-Adressen, die im konfigurierten NAT-Pool verfügbar sind (203.0.113.61)
    • Quellport = Einer der Ports, die mit der zugewiesenen NAT IPv4-Adresse verfügbar sind (3002)
    • Ziel-IP-Adresse = IPv4-Adresse, die aus der Zieladresse der IPv6-Anforderung extrahiert wurde, indem das NAT64-Präfix (2001:DB 8:300: :/96) aus der IPv6-Adresse (192.0.2.60) entfernt wurde.
    • Zielport = Zielport der IPv6-Anforderung (80)
  4. Das große NAT64-Modul erstellt auch Zuordnungs- und Sitzungseinträge für diesen großen NAT64-Fluss. Die Sitzungs- und Zuordnungseinträge enthalten die folgenden Informationen:

    • Quell-IP-Adresse des IPv6-Pakets = 2001:DB 8:5001:30
    • Quellport des IPv6-Pakets = 2552
    • NAT IP-Adresse = 203.0.113.61
    • NAT-Anschluss = 3002
    • NS-1 sendet das resultierende IPv4-Paket an sein Ziel im Internet.
  5. Nach Erhalt des Anforderungspaketswww.example.com verarbeitet der Server für das Paket und sendet ein Antwortpaket an NS-1. Das IPv4-Antwortpaket hat:

    • Quell-IP-Adresse = 192.0.2.60
    • Quellport = 80
    • Ziel-IP-Adresse = 203.0.113.61
    • Zielport = 3002
  6. Nach Erhalt des IPv4-Antwortpakets untersucht NS-1 die großen NAT64-Zuordnungs- und Sitzungseinträge und stellt fest, dass das IPv4-Antwortpaket zu einer großen NAT64-Sitzung gehört. Das große NAT64-Modul erstellt ein übersetztes IPv6-Antwortpaket:

    • Quell-IP-Adresse = 2001:DB 8:300: :192.0.2.60
    • Quellport = 80
    • Ziel-IP-Adresse = 2001:DB 8:5001:30
    • Zielport = 2552
  7. NS-1 sendet die übersetzte IPv6-Antwort an den Client SUB-1.

Große NAT64-Funktionen, die auf Citrix ADC Appliances unterstützt werden

Der große NAT64 auf einer Citrix ADC Appliance unterstützt den standardmäßigen LSN-Funktionsumfang. Weitere Informationen zu diesen LSN-Funktionen finden Sie unterLSN-Architektur.

Im Folgenden finden Sie einige der großen NAT64-Funktionen, die von Citrix ADC Appliances unterstützt werden:

  • ALGs. Unterstützung von Application Layer Gateway (ALG) für SIP-, RTSP-, FTP-, ICMP- und TFTP-Protokolle.
  • Deterministisch/Fixed NAT. Unterstützung für die Vorzuweisung von Port-Blöcken an Abonnenten, um die Protokollierung zu minimieren.
  • Zuordnung. Unterstützung von Endpoint-Independent Mapping (EIM), Address-dependent Mapping (ADM) und Address-Port Dependent Mapping (APDM).
  • Filterung. Unterstützung von Endpoint-Independent Filtern (EIF), Address-Dependent Filtern (ADF) und Address-Port-Dependent Filtern (APDF).
  • Quoten. Konfigurierbare Beschränkungen für die Anzahl der Ports, Sitzungen pro Teilnehmer und Sitzungen pro LSN-Gruppe.
  • Statische Zuordnung. Unterstützung für die manuelle Definition eines großen NAT64-Mappings.
  • Hairpin Flow Unterstützung für die Kommunikation zwischen Teilnehmern oder internen Hosts unter Verwendung von NAT-IP-Adressen.
  • 464XLAT-Verbindungen. Unterstützung für die Kommunikation zwischen nur IPv4-Anwendungen auf IPv6-Teilnehmerhosts und IPv4-Hosts im Internet über IPv6-Netzwerk.
  • Variable Länge NAT64 und DNS64 Präfixe. Die Citrix ADC Appliance unterstützt die Definition von NAT64- und DNS64-Präfixen mit Längen 32, 40, 48, 56, 64 und 96.
  • Mehrere NAT64- und DNS64-Präfix. Die Citrix ADC Appliance unterstützt mehrere NAT64- und DNS64-Präfixe.
  • LSN-Clients. Unterstützung für die Angabe oder Identifizierung von Abonnenten für große NAT64 mithilfe von IPv6-Präfixen und erweiterten ACL6-Regeln.
  • Protokollierung. Unterstützung für die Protokollierung von NAT64-Sitzungen für die Strafverfolgung. Darüber hinaus werden die folgenden für die Protokollierung unterstützt.
    • Zuverlässige SYSLOG. Unterstützung für das Senden von SYSLOG-Nachrichten über TCP an externe Protokollserver für einen zuverlässigeren Transportmechanismus.
    • Lastenausgleich von Protokollservern. Unterstützung für den Lastenausgleich externer Protokollserver zur Verhinderung der Speicherung redundanter Protokollmeldungen.
    • Minimale Protokollierung. Deterministische LSN-Konfigurationen oder dynamische LSN-Konfigurationen mit Portblock reduzieren das große NAT64-Protokollvolumen erheblich.
    • Protokollieren von MSISDN-Informationen. Unterstützung für die Einbeziehung der MSISDN-Informationen von Abonnenten in große NAT64-Protokolle, um Abonnentenaktivitäten über das Internet zu identifizieren und zu verfolgen.

Großes NAT64