Large Scale NAT64

En raison de l’épuisement imminent des adresses IPv4, les FAI ont commencé à passer à l’infrastructure IPv6. Mais pendant la transition, les FAI doivent continuer à prendre en charge IPv4 avec IPv6, car la plupart de l’Internet public utilise encore IPv4. NAT64 à grande échelle est une solution de transition IPv6 permettant aux FAI disposant d’une infrastructure IPv6 de connecter leurs abonnés IPv6 uniquement à Internet IPv4. DNS64 est une solution permettant la découverte de domaines IPv4 uniquement par des clients IPv6 uniquement. Le DNS64 est utilisé avec NAT64 à grande échelle pour permettre une communication transparente entre les clients IPv6 uniquement et les serveurs IPv4 uniquement.

Une appliance Citrix ADC implémente NAT64 et DNS64 à grande échelle et est conforme aux RFC 6145, 6146, 6147, 6052, 3022, 2373, 2765 et 2464.

Architecture

L’architecture NAT64 d’un fournisseur de services Internet utilisant une appliance Citrix ADC consiste en des abonnés IPv6 accédant à Internet IPv4 via une appliance Citrix ADC déployée dans le réseau central du fournisseur de services Internet. Les abonnés IPv6 sont connectés au réseau central du FAI via le réseau d’accès IPv6 uniquement du FAI.

image localisée

La fonctionnalité NAT64 à grande échelle d’une appliance Citrix ADC permet la communication entre les clients IPv6 et les serveurs IPv4 via la traduction de paquets IPv6 vers IPv4, et vice versa, tout en conservant les informations de session sur l’appliance Citrix ADC. La fonctionnalité Citrix ADC DNS64 représente les domaines IPv4 uniquement à IPv6- en synthétisant les enregistrements DNS AAAA pour les domaines IPv4 uniquement et en les envoyant aux abonnés.

NAT64 à grande échelle a deux composants principaux : le préfixe NAT64 et NAT IPv4 pool. DNS64 a un composant principal, le préfixe DNS64, qui a la même valeur que le préfixe NAT64.

Lors de la réception d’une demande AAAA d’un abonné IPv6 uniquement pour un nom de domaine hébergé sur un serveur Web IPv4 uniquement sur Internet, la fonctionnalité Citrix ADC DNS64 synthétise un enregistrement AAAA pour le nom de domaine et l’envoie à l’abonné. L’enregistrement AAAA est synthétisé en concaténant le préfixe DNS64 (qui est défini sur le préfixe NAT64) et l’adresse IPv4 réelle du nom de domaine.

L’abonné dispose désormais d’une adresse de destination IPv6 correspondant au nom de domaine souhaité. L’abonné envoie la demande à l’adresse IPv6 synthétisée. Lors de la réception de la demande IPv6, la fonctionnalité Citrix ADC NAT64 à grande échelle traduit le paquet de requête IPv6 en paquet de requête IPv4. NAT64 à grande échelle définit l’adresse de destination de la demande IPv4 sur l’adresse IPv4, qui est extraite de l’adresse de destination de la demande IPv6 en dépouillant le préfixe NAT64 de l’adresse IPv6. Le port de destination est conservé à partir de la demande IPv6. NAT64 à grande échelle définit également l’adresse IP source:port source du paquet IPv4 sur l’adresse IP NAT : port NAT sélectionné dans le pool NAT configuré.

L’appliance conserve un enregistrement de toutes les sessions actives qui utilisent la fonctionnalité NAT64 à grande échelle. Ces sessions sont appelées sessions NAT64 à grande échelle. L’appliance gère également les mappages entre l’adresse et le port IPv6 de l’abonné, et l’adresse et le port NAT IPv4, pour chaque session NAT64 à grande échelle. Ces mappings sont appelés mappings NAT64 à grande échelle. À partir des entrées de session NAT64 à grande échelle et des entrées de mappage NAT64 à grande échelle, l’appliance Citrix ADC reconnaît un paquet de réponse (reçu d’Internet) comme appartenant à une session NAT64 particulière.

Lorsque l’appliance reçoit un paquet de réponse IPv4 appartenant à une session NAT64 particulière, elle utilise les informations stockées dans la session NAT64 pour traduire le paquet IPv4 en paquet IPv6, puis envoie le paquet de réponse IPv6 à l’abonné.

Exemple : Flux de trafic du déploiement NAT64 et DNS64

Prenons un exemple de déploiement à grande échelle NAT64 et DNS64 comprenant l’appliance Citrix ADC NS-1 et deux serveurs DNS locaux, DNS-1 et DNS-2, dans le réseau central d’un fournisseur de services Internet, et l’abonné IPv6 SUB-1. SUB-1 est connecté à NS-1 via le réseau d’accès IPv6 du FAI. NS-1 comprend des configurations NAT64 et DNS64 à grande échelle pour permettre la communication entre les hôtes SUB-1 de l’abonné IPv6 et IPv4 (internes et externes).

La configuration NAT64 à grande échelle comprend un préfixe NAT64 (2001:DB8:300::/96) et un pool NAT IPv4 pour la traduction des requêtes IPv6 en requêtes IPv4 et des réponses IPv4 aux réponses IPv6.

La configuration DNS64 inclut un serveur virtuel d’équilibrage de charge DNS LBVS-DNS64-1 (2001:DB8:9999::99) et un préfixe DNS64 (2001:DB8:300::/96). LBVS-DNS64-1 représente le serveur DNS local DNS-1 et DNS-2 aux abonnés du FAI. Le préfixe DNS64, qui a la même valeur que le préfixe NAT64, est utilisé pour synthétiser les enregistrements DNS AAAA à partir des enregistrements DNS A reçus des serveurs DNS DNS-1 et DNS-2. NS-1 répond avec un enregistrement AAAA synthétisé à SUB-1 pour une requête DNS pour résoudre un hôte IPv4.

image localisée

Flux de trafic DNS64

Le trafic entre l’abonné IPv6 SUB-1 et le sitewww.example.com, qui réside sur un serveur Web IPv4 uniquement sur Internet, comme suit :

  1. L’abonné IPv6 SUB-1 envoie une requête DNS AAAAwww.example.com à son serveur DNS désigné (2001:DB8:9999::99).
  2. Serveur virtuel d’équilibrage de charge DNS LBVS-DNS64-1 (2001:DB8:9999::99) sur l’appliance Citrix ADC NS1 reçoit la demande AAAA. L’algorithme d’équilibrage de charge de LBVS-DNS64-1 sélectionne le serveur DNS DNS-1 et lui transmet la requête AAAA.
  3. DNS-1 renvoie un enregistrement vide ou un message d’erreur, car il n’y a pas d’enregistrement AAAA disponible pourwww.example.com.
  4. Étant donné que l’option DNS64 est activée sur LBVS-DNS64-1 et que la requête AAAA de CL1 correspond à la condition spécifiée dans DNS64-Policy-1, NS1 envoie une demande DNS A à DNS-1 pour l’adresse IPv4 dewww.example.com.
  5. DNS-1 répond avec l’enregistrement A de 192.0.2.60 pourwww.example.com.
  6. Le module DNS64 sur NS1 synthétise un enregistrement AAAA pour www.example.com en concaténant le préfixe DNS64 (2001:DB8:300::/96) associé à LBVS-DNS64-1, et l’adresse IPv4 (192.0.2.60) pour www.example.com = 2001:DB8:300::192.0.2.60
  7. NS1 envoie l’enregistrement AAAA synthétisé au client IPv6 CL1. NS1 met également en cache l’enregistrement A dans sa mémoire. NS1 utilise l’enregistrement A mis en cache pour synthétiser les enregistrements AAAA pour les requêtes AAAA suivantes.

NAT64 Flux de trafic

  1. L’abonné IPv6 SUB-1 envoie une requête à 2001:DB8:5001:30 www.example.com. Le paquet IPv6 a :

    • Adresse IP source = 2001:DB8:5001:30
    • Port source = 2552
    • Adresse IP de destination = 2001:DB8:300::192.0.2.60
    • Port de destination = 80
  2. L’abonné IPv6 SUB-1 envoie une requête à 2001:DB8:5001:30 www.example.com. Le paquet IPv6 a :

    • Adresse IP source = 2001:DB8:5001:30
    • Port source = 2552
    • Adresse IP de destination = 2001:DB8:300::192.0.2.60
    • Port de destination = 80
  3. Lorsque NS-1 reçoit le paquet IPv6, le module NAT64 à grande échelle crée un paquet de requête IPv4 traduit avec :

    • Adresse IP source = Une des adresses IPv4 disponibles dans le pool NAT configuré (203.0.113.61)
    • Port source = Un des ports disponibles avec l’adresse NAT IPv4 allouée (3002)
    • Adresse IP de destination = adresse IPv4 extraite de l’adresse de destination de la requête IPv6 en dénuant le préfixe NAT64 (2001:DB8:300::/96) de l’adresse IPv6 (192.0.2.60)
    • Port de destination = port de destination de la requête IPv6 (80)
  4. Le module NAT64 à grande échelle crée également des entrées de mappage et de session pour ce flux NAT64 à grande échelle. Les entrées de session et de mappage contiennent les informations suivantes :

    • Adresse IP source du paquet IPv6 = 2001:DB 8:5001:30
    • Port source du paquet IPv6 = 2552
    • Adresse IP NAT = 203.0.113.61
    • Port NAT = 3002
    • NS-1 envoie le paquet IPv4 obtenu à sa destination sur Internet.
  5. À la réception du paquet de requête, le serveur pourwww.example.com traite le paquet et envoie un paquet de réponse à NS-1. Le paquet de réponse IPv4 a :

    • Adresse IP source = 192.0.2.60
    • Port source = 80
    • Adresse IP de destination = 203.0.113.61
    • Port de destination = 3002
  6. Lors de la réception du paquet de réponse IPv4, NS-1 examine le mappage et les entrées de session NAT64 à grande échelle et trouve que le paquet de réponse IPv4 appartient à une session NAT64 à grande échelle. Le module NAT64 à grande échelle crée un paquet de réponse IPv6 traduit :

    • Adresse IP source = 2001:DB8:300::192.0.2.60
    • Port source = 80
    • Adresse IP de destination = 2001:DB 8:5001:30
    • Port de destination = 2552
  7. NS-1 envoie la réponse IPv6 traduite au client SUB-1.

Fonctionnalités NAT64 à grande échelle prises en charge sur les appliances Citrix ADC

NAT64 à grande échelle sur une appliance Citrix ADC prend en charge le jeu de fonctionnalités LSN standard. Pour plus d’informations sur ces fonctionnalités LSN, reportez-vous à la section Architecture LSN.

Voici quelques-unes des fonctionnalités NAT64 à grande échelle prises en charge sur les appliances Citrix ADC :

  • ALG. Prise en charge de l’application Layer Gateway (ALG) pour les protocoles SIP, RTSP, FTP, ICMP et TFTP.
  • NAT déterministique/fixe. Prise en charge de la pré-allocation de blocs de ports aux abonnés pour minimiser la journalisation.
  • Cartographie. Prise en charge du mappage indépendant du point de terminaison (EIM), du mappage dépendant de l’adresse (ADM) et du mappage dépendant du port d’adresse (APDM).
  • Filtrage. Prise en charge du filtrage indépendant des points de terminaison (EIF), du filtrage dépendant des adresses (ADF) et du filtrage dépendant des ports d’adresses (APDF).
  • Quotas. Limites configurables du nombre de ports, de sessions par abonné et de sessions par groupe LSN.
  • Mappage statique. Prise en charge de la définition manuelle d’une cartographie NAT64 à grande échelle.
  • Épingle à cheveux Flow. Prise en charge de la communication entre les abonnés ou les hôtes internes à l’aide d’adresses IP NAT.
  • 464XLAT connexions. Prise en charge de la communication entre les applications IPv4 uniquement sur les hôtes d’abonnés IPv6 et les hôtes IPv4 sur Internet via le réseau IPv6.
  • Préfixes de longueur variable NAT64 et DNS64. L’appliance Citrix ADC prend en charge la définition de préfixes NAT64 et DNS64 de longueurs 32, 40, 48, 56, 64 et 96.
  • Plusieurs préfixe NAT64 et DNS64. L’appliance Citrix ADC prend en charge plusieurs préfixes NAT64 et DNS64.
  • Clients LSN. Prise en charge de la spécification ou de l’identification des abonnés pour NAT64 à grande échelle à l’aide de préfixes IPv6 et de règles ACL6 étendues.
  • Journalisation. Support pour l’enregistrement des sessions NAT64 pour l’application de la loi. En outre, les éléments suivants sont également pris en charge pour la journalisation.
    • SYSLOG fiable. Prise en charge de l’envoi de messages SYSLOG via TCP à des serveurs de journaux externes pour un mécanisme de transport plus fiable.
    • Équilibrage de charge des serveurs de journaux. Prise en charge de l’équilibrage de charge des serveurs de journaux externes pour empêcher le stockage des messages de journaux redondants.
    • Journalisation minimale. Les configurations LSN déterministes ou les configurations LSN dynamique avec bloc de port réduisent considérablement le volume de journal NAT64 à grande échelle.
    • Journalisation des informations MSISDN. Prise en charge de l’inclusion des informations MSISDN des abonnés dans les journaux NAT64 à grande échelle afin d’identifier et de suivre l’activité des abonnés sur Internet.