ADC

Cas d’utilisation 5 : configurer le mode DSR lors de l’utilisation de TOS

Les services différenciés (DS), également appelés TOS (Type de service), sont un champ qui fait partie de l’en-tête du paquet IPv4. Le champ équivalent dans l’en-tête IPv6 est Traffic Class. Le TOS est utilisé par les protocoles de couche supérieure pour optimiser le chemin d’un paquet. Les informations TOS codent l’adresse IP virtuelle (VIP) de l’appliance Citrix ADC, et les serveurs d’équilibrage de charge en extraient le VIP.

Dans le scénario suivant, l’appliance ajoute le VIP au champ TOS du paquet, puis transmet le paquet au serveur d’équilibrage de charge. Le serveur d’équilibrage de charge répond ensuite directement au client, en contournant l’appliance, comme illustré dans le schéma suivant.

Figure 1. L’appliance Citrix ADC en mode DSR avec TOS

Mode DSR avec TOS

La fonctionnalité TOS est personnalisée pour un environnement contrôlé comme suit :

  • L’environnement ne doit comporter aucun périphérique dynamique, tel qu’un pare-feu dynamique et des passerelles TCP, sur le chemin entre l’appliance et les serveurs d’équilibrage de charge.
  • Les routeurs situés à tous les points d’entrée du réseau doivent supprimer le champ TOS de tous les paquets entrants pour s’assurer que le serveur d’équilibrage de charge ne confond pas un autre champ TOS avec celui ajouté par l’appliance.
  • Chaque serveur ne peut avoir que 63 VIP.
  • Le routeur intermédiaire ne doit pas envoyer de messages d’erreur ICMP concernant la fragmentation. Le client ne comprend pas le message, car l’adresse IP source est l’adresse IP du serveur d’équilibrage de charge et non celle du Citrix ADC VIP.
  • Le TOS est valide uniquement pour les services basés sur IP. Vous ne pouvez pas utiliser de services basés sur des noms de domaine avec TOS.

Dans l’exemple, Service-Any-1 est créé et lié au serveur virtuel vServer-LB-1. Le serveur virtuel équilibre la charge de la demande du client adressée au service, et le service répond directement aux clients, en contournant l’appliance. Le tableau suivant répertorie les noms et les valeurs des entités configurées sur l’appliance en mode DSR.

Type d’entité Nom Adresse IP Protocole
Serveur virtuel Vserver-LB-1 10.102.33.91 ANY
Services Service-ANY-1 10.102.100.44 ANY
Moniteurs PING Aucun Aucun

DSR avec TOS nécessite que l’équilibrage de charge soit configuré sur la couche 3. Pour configurer une configuration d’équilibrage de charge de base pour la couche 3, reportez-vous à la section Configuration de l’équilibrage de charge de base. Nommez les entités et définissez les paramètres à l’aide des valeurs décrites dans le tableau précédent.

Après avoir configuré la configuration d’équilibrage de charge, vous devez personnaliser la configuration d’équilibrage de charge pour le mode DSR en configurant le mode de redirection pour permettre au serveur de désencapsuler le paquet de données, puis de répondre directement au client et de contourner l’appliance.

Après avoir spécifié le mode de redirection, vous pouvez éventuellement activer l’appliance pour qu’elle surveille le serveur de manière transparente. Cela permet à l’appliance de surveiller de manière transparente les serveurs à charge équilibrée.

Pour configurer le mode de redirection pour le serveur virtuel à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set lb vserver <vServerName> -m <Value> -tosId <Value>
<!--NeedCopy-->

Exemple :

set lb vserver Vserver-LB-1 -m TOS -tosId 3
<!--NeedCopy-->

Pour configurer le mode de redirection pour le serveur virtuel à l’aide de l’utilitaire de configuration

  1. Accédez à Gestion du trafic > Équilibrage de charge > Serveurs virtuels.
  2. Ouvrez un serveur virtuel et, en mode redirection, sélectionnez TOS ID.

Pour configurer le moniteur transparent pour TOS à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

add monitor <MonitorName> <Type> -destip <DestinationIP> -tos <Value> -tosId <Value>
<!--NeedCopy-->

Exemple :

add monitor mon1 PING -destip 10.102.33.91 -tos Yes  -tosId 3
<!--NeedCopy-->

Pour créer le moniteur transparent pour TOS à l’aide de l’utilitaire de configuration

  1. Accédez à Gestion du trafic > Équilibrage de charge > Moniteurs.
  2. Créez un moniteur, sélectionnez TOS et tapez l’ID TOS que vous avez spécifié pour le serveur virtuel.

Moniteurs Wildcard TOS

Dans une configuration d’équilibrage de charge en mode DSR utilisant le champ TOS, la surveillance de ses services nécessite la création d’un moniteur TOS et lié à ces services. Un moniteur TOS distinct est requis pour chaque configuration d’équilibrage de charge en mode DSR à l’aide du champ TOS, car un moniteur TOS nécessite l’adresse VIP et l’ID TOS pour créer une valeur codée de l’adresse VIP. Le moniteur crée des paquets de sonde dans lesquels le champ TOS est défini sur la valeur codée de l’adresse VIP. Il envoie ensuite les paquets de sonde aux serveurs représentés par les services d’une configuration d’équilibrage de charge.

Avec de nombreuses configurations d’équilibrage de charge, la création d’un moniteur TOS personnalisé distinct pour chaque configuration est une tâche importante et fastidieuse. La gestion de ces moniteurs TOS est également une tâche importante. Vous pouvez désormais créer des moniteurs TOS génériques. Créez un seul moniteur TOS générique pour toutes les configurations d’équilibrage de charge qui utilisent le même protocole (par exemple, TCP ou UDP).

Un moniteur TOS générique possède les paramètres obligatoires suivants :

  • Type = <protocol>
  • TOS = Oui

Les paramètres suivants peuvent être définis sur une valeur ou peuvent être laissés vides :

  • IP destination
  • Port de destination
  • IDENTIFIANT TOS

Un moniteur TOS générique (avec IP de destination, port de destination et ID TOS non définis) lié à un service DSR apprend automatiquement l’ID TOS et l’adresse VIP du serveur virtuel d’équilibrage de charge. Le moniteur crée des paquets de sonde avec le champ TOS défini sur l’adresse VIP codée, puis envoie les paquets de sonde au serveur représenté par le service DSR.

Pour créer un moniteur de TOS générique à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

add lb monitor <monitorName> <Type> -tos YES

show lb monitor <monitorName>
<!--NeedCopy-->

Pour lier un moniteur TOS générique à un service à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

bind lb monitor <monitorName> <serviceName>

show lb monitor <monitorName>
<!--NeedCopy-->

Pour créer un moniteur TOS générique à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > Équilibrage de charge > Moniteurs.
  2. Ajoutez un moniteur avec les paramètres suivants :
    • Type = <protocol>
    • TOS = OUI

Pour lier un moniteur TOS générique à un service à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > Équilibrage de charge > Services.
  2. Ouvrez un service et liez-y un moniteur TOS générique.

Dans l’exemple de configuration suivant, V1, V2 et V3 sont des serveurs virtuels d’équilibrage de charge de type ANY dont l’ID TOS est défini respectivement sur 1, 2 et 3. S1, S2, S3, S4 et S5 sont des services de type ANY. S1 et S2 sont liés à la fois à V1 et à V2. S3, S4 et S5 et lié à la fois à V1 et à V3. Le WLCD-TOS-MON est un moniteur TOS générique de type TCP lié à S1, S2, S3, S4 et S5.

WLCD-TOS-MON apprend automatiquement l’ID TOD et l’adresse VIP des serveurs virtuels liés à S1, S2, S3, S4 et S5.

Étant donné que S1 est lié à V1 et V2, WLCD-TOS-MON crée deux types de paquets de sonde pour S1, l’un avec le champ TOS défini sur l’adresse VIP codée (203.0.113.1) de V1 et l’autre avec l’adresse VIP (203.0.113.2) de V2. Citrix ADC envoie ensuite ces paquets de sonde au serveur représenté par S1. De même, WLCD-TOS-MON crée des paquets de sonde pour S2, S3, S4 et S5.

add lb monitor WLCD-TOS-MON  TCP -tos YES

Done

add lb vserver V1 ANY 203.0.113.1 * -m TOS –tosID 1

Done

add lb vserver V2 ANY 203.0.113.2 * -m TOS –tosID 2

Done

add lb vserver V3 ANY 203.0.113.3 * -m TOS –tosID 3

Done

add service S1 198.51.100.1 ANY *

Done

add service S2 198.51.100.2 ANY *

Done

add service S3 198.51.100.3 ANY *

Done

add service S4 198.51.100.4 ANY *

Done

add service S5 198.51.100.5 ANY *

Done

bind lb monitor WLCD-TOS-MON S1

Done

bind lb monitor WLCD-TOS-MON S2

Done

bind lb monitor WLCD-TOS-MON S3

Done

bind lb monitor WLCD-TOS-MON S4

Done

bind lb monitor WLCD-TOS-MON S5

Done

bind lb vserver V1 S1, S2, S3, S4, S5

Done

bind lb vserver V2, S1, S2

Done

bind lb vserver V3 S3, S4, S5

Done
<!--NeedCopy-->