ADC

RNAT

Dans Reverse Network Address Translation (RNAT), l’appliance Citrix ADC remplace les adresses IP source dans les paquets générés par les serveurs avec des adresses IP NAT publiques. Par défaut, l’appliance utilise une adresse SNIP comme adresse IP NAT. Vous pouvez également configurer l’appliance pour qu’elle utilise une adresse IP NAT unique pour chaque sous-réseau. Vous pouvez également configurer RNAT à l’aide des listes de contrôle d’accès (ACL). Les modes IP source (USIP), Use Subnet IP (USNIP) et LLB (Link Load Balancing) affectent le fonctionnement de RNAT. Vous pouvez afficher des statistiques pour surveiller RNAT.

Remarque : La plage de ports éphémères pour RNAT sur l’appliance Citrix ADC est 1024-65535.

Vous pouvez utiliser une adresse réseau ou une ACL étendue comme condition pour une entrée RNAT :

  • Utilisation d’une adresse réseau. Lorsque vous utilisez une adresse réseau, le traitement RNAT est effectué sur tous les paquets provenant du réseau spécifié.

  • Utilisation des listes ACL étendues. Lorsque vous utilisez des ACL, le traitement RNAT est effectué sur tous les paquets qui correspondent aux ACL. Pour configurer l’appliance Citrix ADC pour qu’elle utilise une adresse IP unique pour le trafic correspondant à une liste ACL, vous devez effectuer les trois tâches suivantes :

    1. Configurez l’ACL.
    2. Configurez RNAT pour modifier l’adresse IP source et le port de destination.
    3. Appliquez la liste ACL.

    Le diagramme suivant illustre RNAT configuré avec une liste ACL.

    Figure 1. RNAT avec une ACL

    rnat acl

Vous avez les choix de base suivants pour le type d’adresse IP NAT :

  • Utilisation d’un SNIP comme adresse IP NAT. Lorsque vous utilisez un SNIP comme adresse IP NAT, l’appliance Citrix ADC remplace les adresses IP source des paquets générés par le serveur par un SNIP. Par conséquent, l’adresse SNIP doit être une adresse IP publique. Si le mode Use Subnet IP (USNIP) est activé, Citrix ADC peut utiliser une adresse IP de sous-réseau (SNIP) comme adresse IP NAT.

  • Utilisation d’une adresse IP unique comme adresse IP NAT. Lorsque vous utilisez une adresse IP unique comme adresse IP NAT, l’appliance Citrix ADC remplace les adresses IP source des paquets générés par le serveur par l’adresse IP unique spécifiée. L’adresse IP unique doit être une adresse IP publique appartenant à Citrix ADC. Si plusieurs adresses IP NAT sont configurées pour un sous-réseau, la sélection d’adresses IP NAT utilise l’algorithme Round Robin.

    Cette configuration est illustrée dans le diagramme suivant.

    Figure 2. Utilisation d’une adresse IP unique comme adresse IP NAT

    rnat nat ip

Avant de commencer

Avant de configurer une règle RNAT, tenez compte des points suivants :

  • Lorsque RNAT et Use Source IP (USIP) sont tous deux configurés sur l’appliance Citrix ADC, RNAT a priorité. En d’autres termes, l’adresse IP source des paquets, qui correspond à une règle RNAT, est remplacée selon le paramètre de la règle RNAT.

  • Dans une topologie où l’appliance Citrix ADC effectue à la fois l’équilibrage de la charge de liaison (LLB) et le RNAT pour le trafic provenant du serveur, l’appliance sélectionne l’adresse IP source en fonction du routeur. La configuration LLB détermine la sélection du routeur. Pour plus d’informations sur LLB, reportez-vous à la section Équilibrage de charge des liaisons.

Configurer RNAT

Les instructions suivantes fournissent des procédures de ligne de commande distinctes pour créer des entrées RNAT qui utilisent différentes conditions et différents types d’adresses IP NAT. Dans l’interface graphique, toutes les variations peuvent être configurées dans la même boîte de dialogue, donc il n’y a qu’une seule procédure pour les utilisateurs de l’interface graphique.

Procédures CLI

Pour créer une règle RNAT à l’aide de l’interface de ligne de commande :

À l’invite de commandes, pour créer la règle et vérifier la configuration, tapez :

  • add rnat <name> (<network> | (<aclname> [-redirectPort <port>]))
  • bind rnat <name> <natIP>@ …
  • show rnat

Pour modifier ou supprimer une règle RNAT à l’aide de l’interface de ligne de commande :

  • Pour modifier une règle RNAT :

    set rnat <name> (<aclname> [-redirectPort <port>])

  • Pour supprimer une règle RNAT, tapez la commande.

    rm rnat <name>

Utilisez la commande suivante pour vérifier la configuration :

  • show rnat

Exemples :


A network address as the condition and a SNIP address as the NAT IP address:

> add rnat RNAT-1 192.168.1.0 255.255.255.0
Done

A network address as the condition and a unique IP address as the NAT IP address:

> add rnat RNAT-2 192.168.1.0 255.255.255.0
Done

> bind rnat RNAT-2 -natip 10.102.29.50
Done

If instead of a single NAT IP address you specify a range, RNAT entries are created with all the Citrix ADC-owned IP addresses, except the NSIP, that fall within the range specified:

> add rnat RNAT-3 192.168.1.0 255.255.255.0
Done

> bind rnat RNAT-3 -natip 10.102.29.[50-110]
Done


An ACL as the condition and a SNIP address as the NAT IP address:

> add rnat RNAT-4 acl1
Done

An ACL as a condition and a unique IP address as the NAT IP address:

> add rnat RNAT-4 acl1
Done

> bind rnat RNAT-4 -natip 10.102.29.50
Done

If instead of a single NAT IP address you specify a range, RNAT entries are created with all the Citrix ADC-owned IP addresses, except the NSIP, that fall within the range specified:

> add rnat RNAT-5 acl1
Done

> bind rnat RNAT-5 -natip 10.102.29.[50-70]
Done

<!--NeedCopy-->

Procédures GUI

Pour créer une entrée RNAT à l’aide de l’interface graphique :

Accédez à Système > Réseau > NAT, cliquez sur l’onglet RNAT et ajoutez une nouvelle règle RNAT ou modifiez une règle existante.

Moniteur RNAT

Vous pouvez afficher les statistiques RNAT pour résoudre les problèmes liés à la traduction d’adresses IP.

Le tableau suivant décrit les statistiques associées à RNAT et RNAT IP.

Statistique Description
Octets reçus Octets reçus pendant les sessions RNAT
Octets envoyés Octets envoyés pendant les sessions RNAT
Paquets reçus Paquets reçus pendant les sessions RNAT
Paquets envoyés Paquets envoyés pendant les sessions RNAT
Syn envoyé Demandes de connexions envoyées pendant les sessions RNAT
Sessions en cours Sessions RNAT actuellement actives

Pour afficher les statistiques RNAT à l’aide de l’interface de ligne de commande :

À l’invite de commandes, tapez :

  • stat rnat

Exemple :


> stat rnat

RNAT summary
                               Rate (/s)            Total
Bytes Received                   0                    0
Bytes Sent                       0                    0
Packets Received                 0                    0
Packets Sent                     0                    0
Syn Sent                         0                    0
Current RNAT sessions           --                    0
 Done
>
<!--NeedCopy-->

Pour surveiller RNAT à l’aide de l’interface graphique :

Accédez à Système > Réseau > NAT, cliquez sur l’onglet RNAT, puis cliquez sur Statistiques .

Configurer RNAT6

Les règles RNAT (Inverse Network Address Translation) pour les paquets IPv6 sont appelées RNAT6. Lorsqu’un paquet IPv6 généré par un serveur correspond aux conditions spécifiées dans la règle RNAT6, l’appliance remplace l’adresse IPv6 source du paquet IPv6 par une adresse NAT IPv6 configurée avant de le transférer à la destination. L’adresse IPv6 NAT est l’une des adresses SNIP6 ou VIP6 appartenant à Citrix ADC.

Lors de la configuration d’une règle RNAT6, vous pouvez spécifier un préfixe IPv6 ou un ACL6 comme condition :

  • Utilisation d’une adresse réseau IPv6. Lorsque vous utilisez un préfixe IPv6, l’appliance effectue un traitement RNAT sur les paquets IPv6 dont l’adresse IPv6 correspond au préfixe.
  • Utilisation d’ACL6. Lorsque vous utilisez un ACL6, l’appliance effectue un traitement RNAT sur les paquets IPv6 qui correspondent aux conditions spécifiées dans l’ACL6.

Vous disposez de l’une des options suivantes pour définir l’adresse IP NAT :

  • Spécifiez un ensemble d’adresses SNIP6 et VIP6 appartenant à Citrix ADC pour une règle RNAT6. L’appliance Citrix ADC utilise l’une des adresses IPv6 de cet ensemble comme adresse IP NAT pour chaque session. La sélection est basée sur l’algorithme de round robin et est effectuée pour chaque session.

  • Ne spécifiez aucune adresse SNIP6 ou VIP6 appartenant à Citrix ADC pour une règle RNAT6. L’appliance Citrix ADC utilise l’une des adresses SNIP6 ou VIP6 appartenant à Citrix ADC en tant qu’adresse IP NAT. La sélection est basée sur le réseau de saut suivant auquel un paquet IPv6 correspondant à la règle RNAT est destiné.

Procédures CLI

Pour créer une règle RNAT6 à l’aide de l’interface de ligne de commande :

À l’invite de commandes, pour créer la règle et vérifier la configuration, tapez :

  • ajouter rnat6 <name>(<network>| (<acl6name>[-RedirectPort  ]<port>))
  • bind rnat6 <name> <natIP6>@ …
  • show rnat6

Pour modifier ou supprimer une règle RNAT6 à l’aide de l’interface de ligne de commande :

  • Pour modifier une règle RNAT6 dont la condition est une ACL6, tapez la commande set rnat6 <name>, suivie d’une nouvelle valeur pour le paramètre RedirectPort .
  • Pour supprimer une règle RNAT6, tapez la commande clear rnat6 <name>.

Procédures GUI

Pour configurer une règle RNAT6 à l’aide de l’interface graphique :

Accédez à Système > Réseau > NAT, cliquez sur l’onglet RNAT6 et ajoutez une nouvelle règle RNAT6 ou modifiez une règle existante.

Moniteur RNAT6

Vous pouvez afficher des statistiques relatives à la fonctionnalité RNAT6 pour surveiller les performances ou pour résoudre les problèmes liés à la fonctionnalité RNAT6. Vous pouvez afficher un résumé des statistiques des règles RNAT6 ou d’une règle RNAT6 particulière. Les compteurs statistiques reflètent les événements survenus depuis le dernier redémarrage de l’appliance Citrix ADC. Tous ces compteurs sont réinitialisés à 0 lorsque l’appliance Citrix ADC est redémarrée.

La liste suivante répertorie certains des compteurs de statistiques associés à la fonctionnalité RNAT6 :

  • Octets reçus - Nombre total d’octets reçus pendant les sessions RNAT6.
  • Octets envoyés - Nombre total d’octets envoyés pendant les sessions RNAT6.
  • Paquets reçus - Nombre total de paquets reçus pendant les sessions RNAT6.
  • Paquets envoyés - Nombre total de paquets envoyés pendant les sessions RNAT6.
  • Syn envoyé - Nombre total de demandes de connexions envoyées pendant les sessions RNAT6
  • Sessions en cours - Sessions RNAT6 actuellement actives

Pour afficher une synthèse des statistiques de toutes les règles RNAT6 à l’aide de l’interface de ligne de commande :

À l’invite de commandes, tapez :

  • Stat Rnat6

Pour afficher les statistiques d’une règle RNAT6 spécifiée à l’aide de l’interface de ligne de commande :

À l’invite de commandes, tapez :

  • Commencez Rnat6   []<rnat6 rule name>

Pour afficher les statistiques RNAT6 à l’aide de l’interface graphique :

Accédez à Système > Réseau > NAT, cliquez sur l’onglet RNAT6, puis cliquez sur Statistiques .

> stat rnat6

RNAT6 summary

                           Rate (/s)                Total

Bytes Received              178                20644

Bytes Sent                  178                20644

Packets Received             5                  401

Packets Sent                 5                  401

Syn Sent                     0                    2

Current RNAT6 sessions      --                    1

Done

<!--NeedCopy-->

Heure de début du journal et raisons de fermeture de connexion dans les entrées du journal RNAT

Pour diagnostiquer ou résoudre les problèmes liés à RNAT, l’appliance Citrix ADC consigne les sessions RNAT chaque fois qu’elles sont fermées.

Un message de journal pour une session RNAT comprend les informations suivantes :

  • Adresse IP appartenant à Citrix ADC (adresse NSIP ou adresse SNIP) à partir de laquelle le message de journal est source
  • Horodatage de la création du journal
  • Protocole de la session RNAT
  • Adresse IP source
  • Adresse IP RNAT
  • Adresse IP de destination
  • Heure de début de la session RNAT
  • Heure de clôture de la session RNAT
  • Nombre total d’octets envoyés par l’appliance Citrix ADC pour cette session RNAT
  • Nombre total d’octets reçus par l’appliance Citrix ADC pour cette session RNAT
  • Raison de la clôture de la session RNAT. L’appliance Citrix ADC consigne le motif de fermeture des sessions RNAT TCP qui n’utilisent pas le proxy TCP (proxy TCP désactivé) de l’appliance. Voici le type de raisons de fermeture enregistrées pour les sessions RNAT TCP :
    • FINTCP. La session RNAT a été fermée en raison d’un FIN TCP envoyé par le périphérique source ou de destination.
    • TCP RST. La session RNAT a été fermée en raison d’une réinitialisation TCP envoyée par le périphérique source ou de destination.
    • Délai d’expiration. La session RNAT a expiré.

Le tableau suivant présente quelques exemples d’entrées de journal pour les sessions RNAT.

Type d’entrée Exemple d’entrée de journal
Exemple d’entrée de journal pour la session RNAT UDP Dec 1 15:28:12 10.102.53.114 12/01/2015:15:28:12 GMT 0-PPE-0 : default UDP NAT\_OTHERCONN\_DELINK 154 0 : Source 1.2.2.5:23431 - Destination 192.168.123.122:22 - NatIP 192.168.123.1:4045 - Destination 192.168.123.122:22 - Start Time 12/01/2015:15:26:58 GMT - Delink Time 12/01/2015:15:28:12 GMT - Total\_bytes\_send 2511 - Total\_bytes\_recv 3725
Exemple d’entrée de journal pour la session RNAT TCP. L’entrée du journal indique que la session s’est fermée en raison de la réinitialisation TCP Dec 1 15:29:59 10.102.53.114 12/01/2015:15:27:59 GMT 0-PPE-0 : default TCP NAT\_OTHERCONN\_DELINK 152 0 : Source 1.2.2.5:33826 - Destination 192.168.123.122:22 - NatIP 192.168.123.1:2384 - Destination 192.168.123.122:22 - Start Time 12/01/2015:15:27:40 GMT - Delink Time 12/01/2015:15:27:59 GMT - Total\_bytes\_send 2147 - Total\_bytes\_recv 3257 - Closure Reason TCP RST
Exemple d’entrée de journal pour la session RNAT TCP. L’entrée du journal indique que la session a expiré Dec 1 15:30:12 10.102.53.114 12/01/2015:15:30:12 GMT 0-PPE-0 : default TCP NAT\_OTHERCONN\_DELINK 155 0 : Source 1.2.2.5:64976 - Destination 192.168.123.115:22 - NatIP 192.168.123.1:19636 - Destination 192.168.123.115:22 - Start Time 12/01/2015:15:27:25 GMT - Delink Time 12/01/2015:15:30:12 GMT - Total\_bytes\_send 0 - Total\_bytes\_recv 0 - Closure Reason TIMEOUT

Basculement de connexion avec état pour RNAT

Le basculement de connexion permet d’éviter la perturbation de l’accès aux applications déployées dans un environnement distribué. L’appliance Citrix ADC prend désormais en charge le basculement de connexion avec état pour les connexions liées aux règles RNAT dans une configuration Citrix ADC High Availability (HA). Dans une configuration HA, le basculement de connexion (ou mise en miroir de connexion) fait référence au processus de maintien d’une connexion TCP ou UDP établie active lorsqu’un basculement se produit.

L’appliance principale envoie des messages à l’appliance secondaire afin de synchroniser les informations actuelles sur les connexions RNAT. L’appliance secondaire utilise ces informations de connexion uniquement en cas de basculement. Lorsqu’un basculement se produit, la nouvelle appliance Citrix ADC principale dispose d’informations sur les connexions établies avant le basculement et continue donc à desservir ces connexions même après le basculement. Du point de vue du client, ce basculement est transparent. Pendant la période de transition, le client et le serveur peuvent rencontrer une brève interruption et des retransmissions.

Le basculement de connexion peut être activé par règle RNAT. Pour activer le basculement de connexion sur une règle RNAT, vous activez le paramètre ConnFailover (ConnFailover de connexion) de cette règle RNAT spécifique à l’aide de la CLI ou de l’interface graphique.

Pour activer le basculement de connexion pour une règle RNAT à l’aide de l’interface de ligne de commande :

À l’invite de commandes, tapez :

  • set rnat <name> -connfailover (ENABLED | DISABLED)
  • show rnat

Pour activer le basculement de connexion pour une règle RNAT à l’aide de l’interface graphique :

  1. Accédez à Système > Réseau > NAT, puis cliquez sur l’onglet RNAT .
  2. Sélectionnez Basculement de connexion lors de l’ajout d’une nouvelle règle RNAT ou lors de la modification d’une règle existante.

Réservation du port source pour les connexions RNAT aux serveurs

Pour une demande atteignant une configuration RNAT dont une ou plusieurs adresses IP RNAT et le paramètre Utiliser le port proxy est désactivé, l’appliance Citrix ADC utilise l’une des adresses IP RNAT et le port source de la demande RNAT pour se connecter aux serveurs. Avant la version 13.0 47.x, la connexion RNAT (à l’aide du port source du client RNAT) au serveur échoue si le même port source est déjà utilisé dans d’autres connexions.

  • Port source inférieur à 1024. Par défaut, l’appliance Citrix ADC réserve les 1024 premiers ports de toute adresse IP appartenant à Citrix ADC (y compris les adresses IP RNAT). Avant la version 13.0 47.x, la connexion RNAT (à l’aide du port source du client RNAT) au serveur échoue si le port source de la requête RNAT est inférieur ou égal à 1024. Avec la version 13.0 47.x, la connexion RNAT (à l’aide du port source du client RNAT) au serveur réussit même si le port source de la requête RNAT est inférieur ou égal à 1024.

  • Port source supérieur à 1024. Avant la version 13.0 47.x, la connexion RNAT (à l’aide du port source du client RNAT) au serveur échoue si le même port source est déjà utilisé dans d’autres connexions. Avec la version 13.0 47.x, vous pouvez spécifier une plage de ports source client RNAT dans le paramètre Retain Source Port range (retainsourceportrange) dans le cadre d’une configuration RNAT. L’appliance Citrix ADC réserve ces ports source client RNAT sur l’adresse IP RNAT pour être utilisés uniquement pour la connexion RNAT aux serveurs.

Suppression de sessions RNAT

Vous pouvez supprimer toutes les sessions RNAT indésirables ou inefficaces de l’appliance Citrix ADC. L’appliance libère immédiatement les ressources (telles que le port de l’adresse IP NAT et la mémoire) allouées à ces sessions, ce qui rend les ressources disponibles pour les nouvelles sessions. L’appliance supprime également tous les paquets suivants liés à ces sessions supprimées. Vous pouvez supprimer toutes les sessions RNAT ou sélectionnées de l’appliance Citrix ADC.

Pour effacer toutes les sessions RNAT à l’aide de l’interface de ligne de commande :

À l’invite de commandes, tapez :

  • flush rnatsession

Pour effacer les sessions RNAT sélectives à l’aide de l’interface de ligne de commande :

À l’invite de commandes, tapez :

  • flush rnatsession ((-network <ip_addr> -netmask <netmask>) | -natIP <ip_addr> | -aclname <string>)

Pour effacer toutes les sessions RNAT ou sélectives à l’aide de l’interface graphique :

  1. Accédez à Système > Réseau > NAT, puis cliquez sur l’onglet RNAT.
  2. Dans le menu Actions, cliquez sur Vider les sessions RNAT pour supprimer toutes les sessions RNAT ou sélectives (par exemple, supprimer les sessions RNAT avec une IP RNAT spécifique ou appartenant à une règle RNAT basée sur le réseau ou ACL spécifique).

Exemples de configurations :

    Clear all RNAT sessions existing on a Citrix ADC appliance

    > flush rnatsession

    Done

    Clear all RNAT sessions belonging to network based RNAT rules that has 203.0.113.0/24 network as the matching condition.

    > flush rnatsession -network 203.0.113.0 -netmask 255.255.255.0

    Done

    Clear all RNAT sessions with RNAT IP 192.0.2.90.

    > flush rnatsession -natIP 192.0.2.90

    Done

    Clear all RNAT sessions belonging to ACL based RNAT rules that has ACL-RNAT-1 as the matching condition.

    > flush rnatsession -aclname ACL-RNAT-1

    Done
<!--NeedCopy-->