Délai d’inactivité STUN

STUN (Session Traversal Utilities for NAT) permet à un hôte final opérant derrière un périphérique NAT de découvrir son adresse IP NAT et son port NAT alloués par le périphérique NAT. Les applications de communication interactive (voix, vidéo et messagerie en temps réel, par exemple) exécutées sur ces hôtes utilisent le protocole STUN pour découvrir les adresses IP NAT et les informations de port. Ces informations sont utilisées par ces applications pour se connecter à leurs applications homologues sur Internet. Le protocole STUN inclut les serveurs, connus sous le nom de serveurs STUN, résidant sur Internet. À l’aide du protocole STUN, une application d’un hôte final envoie une requête à un serveur STUN connu qui, à son tour, intègre l’adresse IP NAT et le port dans la charge utile de son paquet de réponse.

Dans un déploiement LSN d’une appliance Citrix ADC pour un fournisseur de services Internet, les applications de communication interactive (par exemple voix, vidéo et messagerie en temps réel) exécutées sur un abonné peuvent utiliser le protocole STUN pour découvrir s’il se trouve derrière un périphérique NAT (Citrix ADC appliance) ou non. Ces applications envoient une demande à un serveur STUN connu. À la réception de la demande, Citrix ADC alloue une adresse IP NAT et un port pour cette requête, crée une session LSN et une entrée de mappage LSN, traduit le paquet avec l’adresse IP NAT allouée et le port, puis transfère le paquet au serveur STUN. Le serveur STUN intègre l’adresse IP NAT allouée et le port dans la charge utile de son paquet de réponse. Lorsque l’abonné reçoit finalement le paquet, à partir de la charge utile du paquet, il apprend qu’il se trouve derrière un périphérique NAT, ainsi que l’adresse IP NAT et le port alloués à la session.

L’application notifie ensuite aux applications homologues qu’elle est accessible à l’adresse IP NAT et au port de l’entrée de mappage LSN créée pour la session STUN. Il notifie en incorporant l’adresse IP NAT et le port dans la charge utile des paquets envoyés aux applications homologues. Pour rendre l’application accessible à la même entrée de mappage LSN pour n’importe quelle application externe, le NAT complet du cône (mappage indépendant du point de terminaison et filtrage indépendant du point de terminaison) est activé pour la configuration LSN sur l’appliance Citrix ADC.

Citrix ADC détecte une session LSN de type STUN si les paquets de requête sont destinés au port TCP ou UDP 3478, puis marque l’entrée de mappage créée de type STUN. Citrix ADC applique un délai d’attente appelé STUN timeout à l’entrée de mappage STUN LSN créée. Un délai d’expiration STUN est la durée maximale pendant laquelle Citrix ADC conserve une entrée de mappage STUN LSN inactif depuis qu’elle a été utilisée pour la dernière fois par une session LSN. Si la session de mappage STUN LSN n’est pas utilisée pendant une durée supérieure au délai d’expiration STUN, Citrix ADC supprime l’entrée de mappage.

Pour une application sur un abonné qui utilise l’entrée de mappage STUN LSN pour rester disponible pour d’autres applications homologues sur Internet, l’application envoie périodiquement des messages Keep-alive à l’appliance Citrix ADC afin que l’entrée de mappage STUN LSN ne temporise pas. Une fréquence plus élevée de messages Keep-alive peut avoir un impact sur les performances d’un abonné, en particulier si l’abonné est un appareil mobile. Une valeur plus élevée du délai STUN réduit la fréquence des messages Keep-alive d’un abonné.

Les ALG sur l’appliance Citrix ADC ne s’appliquent pas à une session LSN qui utilise une entrée de mappage STUN LSN car l’adresse IP NAT et le port NAT sont communiqués dans la charge utile des paquets liés à la session.

Pour les applications des abonnés qui utilisent le protocole STUN, la configuration LSN doit avoir les paramètres suivants :

  • Délai d’expiration du STUN. Dans une configuration LSN, le groupe LSN inclut le paramètre de délai d’expiration STUN.
  • Mappage indépendant du point de terminaison et filtrage indépendant du point de terminaison pour les ports de protocole STUN.

Pour obtenir des instructions sur la création d’une configuration LSN, reportez-vous à la section Étapes de configuration pour LSN.

Exemple :

L’exemple de configuration LSN suivant s’applique aux applications qui utilisent le protocole STUN sur TCP ou UDP. Le délai d’expiration STUN est défini sur 10 minutes. Le mappage indépendant du point de terminaison et le filtrage indépendant du point de terminaison sont définis pour le port STUN TCP (3748) et le port STUN UDP (3748).

add lsn client LSN-CLIENT-1

Done

bind lsn client LSN-CLIENT-1 -network 192.0.2.0 -netmask 255.255.255.0

Done

add lsn pool LSN-POOL-1

Done

bind lsn pool LSN-POOL-1 203.0.113.3

Done

add lsn group LSN-GROUP-1 -clientname LSN-CLIENT-1  -stuntimeout 10

Done

bind lsn group LSN-GROUP-1 -poolname pool1 LSN-POOL-1

Done

add lsn appsprofile LSNAPPSPROFILE-TCP-STUN-1 TCP -mapping ENDPOINT-INDEPENDENT –filtering  ENDPOINT-INDEPENDENT

Done

bind lsn appsprofile LSNAPPSPROFILE-TCP-STUN-1 3748

Done

bind lsn group LSN-GROUP-1 -applicationprofilename LSNAPPSPROFILE-TCP-STUN-1

Done

add lsn appsprofile LSNAPPSPROFILE-UDP-STUN-1 UDP -mapping ENDPOINT-INDEPENDENT –filtering  ENDPOINT-INDEPENDENT

Done

bind lsn appsprofile LSNAPPSPROFILE-UDP-STUN-1 3748

Done

bind lsn group LSN-GROUP-1 -applicationprofilename LSNAPPSPROFILE-UDP-STUN-1

Done