NAT à grande échelle
Remarque
Cette fonctionnalité est disponible avec une licence NetScaler Advanced ou Premium.
La croissance phénoménale d’Internet a entraîné une pénurie d’adresses IPv4 publiques. Le NAT à grande échelle (LSN/CGNAT) apporte une solution à ce problème en maximisant l’utilisation des adresses IPv4 publiques disponibles en partageant quelques adresses IPv4 publiques entre un large groupe d’utilisateurs Internet.
Le LSN traduit les adresses IPv4 privées en adresses IPv4 publiques. Il inclut des méthodes de traduction des adresses réseau et des ports pour agréger de nombreuses adresses IP privées en un nombre réduit d’adresses IPv4 publiques. Le LSN est conçu pour gérer le NAT à grande échelle. La fonctionnalité NetScaler LSN est très utile pour les fournisseurs de services Internet (ISP) et les opérateurs fournissant des millions de traductions pour prendre en charge un grand nombre d’utilisateurs (abonnés) et à très haut débit.
Architecture LSN
L’architecture LSN d’un fournisseur de services Internet utilisant des produits NetScaler consiste en des abonnés (utilisateurs d’Internet) dans des espaces d’adressage privés accédant à Internet via une appliance NetScaler déployée sur le réseau central du fournisseur de services Internet. Les abonnés sont connectés au FAI via le réseau d’accès du FAI. Habituellement, les abonnés à des fins commerciales d’Internet sont directement connectés au réseau d’accès du fournisseur de services Internet. Pour répondre aux besoins de ces abonnés, il suffit d’un seul niveau de NAT (NAT44).
Toutefois, les abonnés non commerciaux utilisent généralement des équipements sur site client (CPE), tels que des routeurs et des modems, qui implémentent également la NAT. Ces deux niveaux de NAT créent le modèle NAT444. Le déploiement d’une appliance NetScaler sur le réseau central d’un fournisseur de services Internet pour les fonctionnalités LSN est transparent pour les abonnés et ne nécessite aucune modification de configuration des abonnés ou des CPE.
L’appliance NetScaler reçoit tous les paquets d’abonnés destinés à Internet. L’appliance est configurée avec un pool d’adresses IP NAT prédéfinies à utiliser pour le LSN. L’appliance NetScaler utilise sa fonctionnalité LSN pour traduire l’adresse IP source (privée) et le port du paquet vers l’adresse IP NAT (publique) et le port NAT, puis envoie le paquet vers sa destination sur Internet. L’appliance conserve un enregistrement de toutes les sessions actives qui utilisent la fonctionnalité LSN. Ces sessions sont appelées sessions LSN. L’appliance NetScaler gère également les mappages entre l’adresse IP et le port de l’abonné, et l’adresse IP NAT et le port, pour chaque session. Ces mappages sont appelés mappages LSN. À partir des sessions LSN et des mappages LSN, l’appliance NetScaler reconnaît un paquet de réponse (reçu depuis Internet) appartenant à une session particulière. L’appliance traduit l’adresse IP de destination et le port du paquet de réponse de l’adresse IP NAT address:port à l’adresse IP de l’abonné:port, puis envoie le paquet traduit à l’abonné.
Fonctionnalités LSN prises en charge sur l’appliance NetScaler
La section suivante décrit certaines des fonctionnalités LSN prises en charge sur l’appliance NetScaler :
Allocation de ressources NAT
L’appliance NetScaler alloue des adresses IP et des ports NAT, à partir de son pool de ressources NAT prédéfini, aux abonnés afin qu’ils traduisent leurs paquets en vue de leur transmission vers des hôtes externes (Internet). L’appliance NetScaler prend en charge les types suivants d’adresses IP NAT et d’allocation de ports pour les abonnés :
-
Déterministe. L’appliance NetScaler attribue une adresse IP NAT et un bloc de ports à chaque abonné. L’appliance alloue des ressources NAT de manière séquentielle à ces abonnés. Il attribue le premier bloc de ports de l’adresse IP NAT de début à l’adresse IP de l’abonné de début. La plage de ports suivante est attribuée à l’abonné suivant, et ainsi de suite, jusqu’à ce que l’adresse NAT ne dispose pas de suffisamment de ports pour l’abonné suivant. À ce stade, le premier bloc de port de l’adresse NAT suivante est attribué à l’abonné, et ainsi de suite.
L’appliance NetScaler enregistre l’adresse IP NAT allouée et le bloc de ports pour un abonné. Pour une connexion, un abonné peut être identifié uniquement par son adresse IP NAT mappée et son bloc de ports. Pour cette raison, l’appliance NetScaler n’enregistre aucune session LSN créée ou supprimée. Si l’intégralité du bloc de ports est utilisée, l’appliance NetScaler abandonne toute nouvelle connexion de l’abonné.
-
Dynamique. L’appliance NetScaler alloue une adresse IP NAT aléatoire et un port du pool NAT LSN pour la connexion d’un abonné. Lorsque l’allocation de blocs de ports est activée dans la configuration, l’appliance alloue une adresse IP NAT aléatoire et un bloc de ports à un abonné lorsqu’elle établit une connexion pour la première fois. L’appliance NetScaler attribue ensuite cette adresse IP NAT et l’un des ports du bloc alloué à chaque connexion ultérieure de cet abonné. Si l’intégralité du bloc de ports est utilisée, l’appliance alloue un nouveau bloc de ports aléatoire à l’abonné lorsqu’elle initie une nouvelle connexion. L’un des ports du nouveau bloc de ports est affecté à la nouvelle connexion.
Regroupement d’adresses IP
Les options d’allocation de ressources NAT suivantes sont disponibles pour les sessions suivantes d’un abonné auquel une adresse IP NAT aléatoire et un port ont été attribués pour une session existante.
- Couplé. L’appliance NetScaler alloue la même adresse IP NAT pour toutes les sessions associées au même abonné. Lorsqu’aucun port n’est disponible pour cette adresse, l’appliance abandonne toute nouvelle connexion de l’abonné. Cette option est nécessaire au bon fonctionnement de certaines applications qui nécessitent la création de plusieurs sessions sur la même adresse IP source (par exemple, dans les applications peer-to-peer qui utilisent le protocole RTP ou RTCP).
- Aléatoire. L’appliance NetScaler alloue des adresses IP NAT aléatoires, à partir du pool, pour différentes sessions associées au même abonné.
Réutilisation des mappages LSN
L’appliance NetScaler peut réutiliser une carte LSN existante pour les nouvelles connexions provenant de la même adresse IP et du même port d’abonné. La fonctionnalité NetScaler LSN prend en charge les types suivants de réutilisation du mappage LSN :
- Indépendant du point de terminaison. L’appliance NetScaler réutilise le mappage LSN pour les paquets suivants envoyés depuis la même adresse IP et le même port d’abonné (x:X) vers n’importe quelle adresse IP et port externes. Ce type de réutilisation des cartes LSN est utile au bon fonctionnement des applications VOIP et peer-to-peer.
- Dépendante de l’adresse. L’appliance NetScaler réutilise le mappage LSN pour les paquets suivants envoyés depuis la même adresse IP d’abonné et le même port (x:X) vers la même adresse IP externe (Y), quel que soit le port externe.
- Dépendante du port d’adresse. L’appliance NetScaler réutilise le mappage LSN pour les paquets suivants envoyés depuis la même adresse IP interne et le même port (x:X) vers la même adresse IP externe et le même port (Y:y) alors que le mappage est toujours actif.
Filtrage LSN
L’appliance NetScaler peut filtrer les paquets provenant d’hôtes externes en fonction des sessions LSN actives et des mappages LSN. Prenons un exemple de mappage LSN qui inclut le mappage IP:port (x:X) de l’abonné, IP:port NAT (N:n) et IP:port de l’hôte externe (Y:y). La fonctionnalité NetScaler LSN prend en charge les types de filtrage suivants :
- Indépendant du point de terminaison. L’appliance NetScaler filtre uniquement les paquets qui ne sont pas destinés à NAT IP:Port (N:N), qui représente l’IP:Port de l’abonné (x:X), quelles que soient l’adresse IP de l’hôte externe et la source du port (Z:z). L’appliance NetScaler transmet tous les paquets destinés à x:X. En d’autres termes, l’envoi de paquets depuis l’abonné vers n’importe quelle adresse IP externe est suffisant pour autoriser les paquets de n’importe quel hôte externe à destination de l’abonné. Ce type de filtrage est utile au bon fonctionnement des applications VOIP et peer-to-peer.
- Dépendante de l’adresse. L’appliance NetScaler filtre les paquets qui ne sont pas destinés à NAT IP:Port (N:n), qui représente l’IP:Port (x:X) de l’abonné. En outre, l’appliance filtre les paquets provenant de l’adresse IP de l’hôte externe et du port (Y:y) destinés à N:n si l’abonné n’a jamais envoyé de paquets à Y:anyPort (indépendant du port externe). En d’autres termes, pour recevoir des paquets d’un hôte externe spécifique, l’abonné doit d’abord envoyer des paquets à l’adresse IP de cet hôte externe spécifique.
- Dépendante du port d’adresse. L’appliance NetScaler filtre les paquets qui ne sont pas destinés à NAT IP:Port (N:n), qui représente l’IP:Port (x:X) de l’abonné. En outre, l’appliance filtre les paquets provenant de l’adresse IP de l’hôte externe et du port (Y:y) destinés à N:n si l’abonné n’a jamais envoyé de paquets à Y:y auparavant. En d’autres termes, pour recevoir des paquets d’un hôte externe spécifique, l’abonné doit d’abord envoyer des paquets à cette adresse IP externe et à ce port spécifiques.
Quotas
L’appliance NetScaler peut limiter le nombre de ports et de sessions NAT pour chaque abonné afin de garantir une répartition équitable des ressources entre les abonnés. L’appliance NetScaler peut également limiter le nombre de sessions pour un groupe d’abonnés afin de garantir une répartition équitable des ressources entre les différents groupes d’abonnés.
- Quota de port. L’appliance NetScaler peut limiter les ports NAT LSN pouvant être utilisés à la fois par chaque abonné pour un protocole spécifié. Par exemple, vous pouvez limiter chaque abonné à un maximum de 500 ports NAT TCP. Lorsque les mappages NAT LSN d’un abonné atteignent la limite, l’appliance NetScaler n’alloue pas de ports NAT supplémentaires du protocole spécifié à cet abonné.
- Limite de session d’abonné. Le nombre de sessions simultanées pour un abonné peut être supérieur à son quota de port. L’appliance NetScaler peut limiter les sessions LSN autorisées pour chaque abonné pour un protocole spécifié. Lorsque le nombre de sessions LSN atteint la limite pour un abonné, l’appliance NetScaler n’autorise pas l’abonné à ouvrir des sessions supplémentaires du protocole spécifié.
- Limite de session de groupe. L’appliance NetScaler peut limiter le nombre total de sessions LSN autorisées pour un groupe d’abonnés pour un protocole spécifié. Lorsque le nombre total de sessions LSN atteint la limite pour un groupe pour un protocole spécifié, l’appliance NetScaler n’autorise aucun abonné du groupe à ouvrir des sessions supplémentaires du protocole spécifié. Par exemple, vous limitez un groupe à un maximum de 10 000 sessions UDP. Lorsque le nombre total de sessions UDP pour ce groupe atteint 10 000, l’appliance NetScaler n’autorise aucun abonné du groupe à ouvrir des sessions UDP supplémentaires.
Passerelles de couche d’application
Pour certains protocoles de couche application, les adresses IP et les numéros de port du protocole sont également communiqués dans la charge utile du paquet. La passerelle de couche d’application d’un protocole analyse la charge utile du paquet et apporte les modifications nécessaires pour garantir que le protocole continue de fonctionner sur LSN.
L’appliance NetScaler prend en charge le protocole ALG pour les protocoles suivants :
- FTP
- ICMP
- TFTP
- PPTP
- SIP
- RTSP
Support en épingle à cheveux
L’appliance NetScaler prend en charge la communication entre les abonnés ou les hôtes internes à l’aide d’adresses IP NAT. Ce type de communication entre deux abonnés utilisant des adresses IP NAT est appelé « hairpin flow ». Le flux en épingle à cheveux est activé par défaut et vous ne pouvez pas le désactiver.