Routes basées sur des stratégies (PBR) pour le trafic IPv4
La configuration des PBR implique les tâches suivantes :
- Créez un PBR.
- Appliquer les PBR.
- (Facultatif) Désactivez ou activez un PBR.
- (Facultatif) Renuméroter la priorité du PBR.
Création ou modification d’un PBR
Vous ne pouvez pas créer deux PBR avec les mêmes paramètres. Si vous tentez de créer un doublon, un message d’erreur s’affiche.
Vous pouvez configurer la priorité d’un PBR. La priorité (une valeur entière) définit l’ordre dans lequel l’appliance Citrix ADC évalue les PBR. Lorsque vous créez un PBR sans spécifier de priorité, Citrix ADC attribue automatiquement une priorité qui est un multiple de 10.
Si un paquet correspond à la condition définie par le PBR, Citrix ADC effectue une action. Si le paquet ne correspond pas à la condition définie par le PBR, Citrix ADC compare le paquet au PBR avec la priorité la plus élevée suivante.
Au lieu d’envoyer les paquets sélectionnés à un routeur de saut suivant, vous pouvez configurer le PBR pour les envoyer à un serveur virtuel d’équilibrage de charge de liaison auquel vous avez lié plusieurs sauts suivants. Cette configuration peut fournir une sauvegarde si un lien de saut suivant échoue.
Prenons l’exemple suivant. Deux PBR, p1 et p2, sont configurés sur Citrix ADC et assignés automatiquement les priorités 20 et 30. Vous devez ajouter un troisième PBR, p3, à évaluer immédiatement après le premier PBR, p1. Le nouveau PBR, p3, doit avoir une priorité entre 20 et 30. Dans ce cas, vous pouvez spécifier la priorité 25.
Procédures CLI
Pour créer un PBR à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez :
- add ns pbr <name> <action> [-srcIP [<operator>] <srcIPVal>] [-srcPort [<operator>] <srcPortVal>] [-destIP [<operator>] <destIPVal>] [-destPort [<operator>] <destPortVal>] [-nextHop <nextHopVal>] [-srcMac <mac_addr>] [-protocol <protocol> |-protocolNumber <positive_integer>] [-vlan <positive_integer>] [-interface <interface_name>] [-priority <positive_integer>] [-msr ( ENABLED | DISABLED ) [-monitor <string>]] [-state ( ENABLED | DISABLED )]
- show ns pbr
Exemple :
> add ns pbr pbr1 allow -srcip 10.102.37.252 -destip 10.10.10.2 -nexthop 10.102.29.77
Done
<!--NeedCopy-->
Pour modifier la priorité d’un PBR à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez les commandes suivantes pour modifier la priorité et vérifier la configuration :
- set ns pbr <name> [-action ( ALLOW | DENY )] [-srcIP [<operator>] <srcIPVal>] [-srcPort [<operator>] <srcPortVal>] [-destIP [<operator>] <destIPVal>] [-destPort [<operator>] <destPortVal>] [-nextHop <nextHopVal>] [-srcMac <mac_addr>] [-protocol <protocol> | -protocolNumber <positive_integer>] [-vlan <positive_integer>] [-interface <interface_name>] [-priority <positive_integer>] [-msr ( ENABLED | DISABLED ) [-monitor <string>]] [-state ( ENABLED | DISABLED )]
- show ns pbr [<name>]
Exemple :
> set ns pbr pbr1 -priority 23
Done
<!--NeedCopy-->
Pour supprimer un ou tous les PBR à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez l’une des commandes suivantes :
- rm ns pbr <name>
- clear ns pbrs
Exemple :
> rm ns pbr pbr1
Done
> clear ns PBRs
Done
<!--NeedCopy-->
Procédures GUI
Pour créer un PBR à l’aide de l’interface graphique :
Accédez à Système > Réseau > PBR, sous l’onglet PBR, ajoutez un nouveau PBR ou modifiez un PBR existant.
Pour supprimer un ou tous les PBR à l’aide de l’interface graphique :
Accédez à Système > Réseau > PBR, sous l’onglet PBR, supprimez le PBR.
Application d’un PBR
Vous devez appliquer un PBR pour l’activer. La procédure suivante réapplique tous les PBR que vous n’avez pas désactivés. Les PBR constituent une arborescence de mémoire (table de recherche). Par exemple, si vous créez 10 PBR (p1 - p10), puis que vous créez un autre PBR (p11) et l’appliquez, toutes les PBR (p1 - p11) sont fraîchement appliquées et une nouvelle table de recherche est créée. Si une session est associée à un DENY PBR, la session est détruite.
Vous devez appliquer cette procédure après chaque modification apportée à un RBP. Par exemple, vous devez suivre cette procédure après avoir désactivé un PBR.
Remarque : les PBR créés sur l’appliance Citrix ADC ne fonctionnent pas tant qu’ils ne sont pas appliqués.
Pour appliquer un PBR à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez :
apply ns PBRs
Pour appliquer un PBR à l’aide de l’interface graphique :
- Accédez à Système > Réseau > PBR.
- Sous l’onglet PBR, sélectionnez le PBR, dans la liste Action, sélectionnez Appliquer.
Activation ou désactivation des PBR
Par défaut, les PBR sont activés. Cela signifie que lorsque des PBR sont appliqués, l’appliance Citrix ADC compare automatiquement les paquets entrants aux PBR configurés. Si un PBR n’est pas requis dans la table de recherche, mais qu’il doit être conservé dans la configuration, il doit être désactivé avant l’application des PBR. Une fois les PBR appliqués, Citrix ADC ne compare pas les paquets entrants avec les PBR désactivés.
Pour activer ou désactiver un PBR à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez l’une des commandes suivantes :
- enable ns pbr <name>
- disable ns pbr <name>
Exemple :
> enable ns PBR pbr1
Done
> show ns PBR pbr1
1) Name: pbr1
Action: ALLOW Hits: 0
srcIP = 10.102.37.252
destIP = 10.10.10.2
srcMac: Protocol:
Vlan: Interface:
Active Status: ENABLED Applied Status: APPLIED
Priority: 10
NextHop: 10.102.29.77
Done
> disable ns PBR pbr1
Warning: PBR modified, use 'apply pbrs' to commit this operation
> apply pbrs
Done
> show ns PBR pbr1
1) Name: pbr1
Action: ALLOW Hits: 0
srcIP = 10.102.37.252
destIP = 10.10.10.2
srcMac: Protocol:
Vlan: Interface:
Active Status: DISABLED Applied Status: NOTAPPLIED
Priority: 10
NextHop: 10.102.29.77
Done
<!--NeedCopy-->
Pour activer ou désactiver un PBR à l’aide de l’interface graphique :
- Accédez à Système > Réseau > PBR.
- Sous l’onglet PBR, sélectionnez le PBR, dans la liste Action, sélectionnez Activer ou Désactiver.
Renuméroter les PBR
Vous pouvez automatiquement renuméroter les PBR pour définir leurs priorités à des multiples de 10.
Pour renuméroter les PBR à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez :
- renumber ns pbrs
Pour renuméroter les PBR à l’aide de l’interface graphique :
Accédez à Système > Réseau > PBR, sous l’onglet PBR, dans la liste Action, sélectionnez Renuméroter les priorités.
Cas d’utilisation - PBR avec plusieurs houblons
Considérons un scénario dans lequel deux PBR, PBR1 et PBR2, sont configurés sur l’appliance Citrix ADC NS1. PBR1 achemine tous les paquets sortants, avec l’adresse IP source 10.102.29.30, vers le routeur de saut suivant R1. PBR2 achemine tous les paquets sortants, avec l’adresse IP source 10.102.29.90, vers le routeur de saut suivant R2. R3 est un autre routeur de saut suivant connecté à NS1.
Si le routeur R1 échoue, tous les paquets sortants correspondant à PBR1 sont supprimés. Pour éviter cette situation, vous pouvez spécifier un serveur virtuel LLB (Link Load Balancing) dans le champ de saut suivant lors de la création ou de la modification d’un PBR. Plusieurs sauts suivants sont liés au serveur virtuel LLB en tant que services (par exemple R1, R2 et R3). Maintenant, si R1 échoue, tous les paquets correspondant à PBR1 sont routés vers R2 ou R3 comme déterminé par la méthode LB configurée sur le serveur virtuel LLB.
L’appliance Citrix ADC génère une erreur si vous tentez de créer un PBR avec un serveur virtuel LLB comme saut suivant dans les cas suivants :
- Ajout d’un autre PBR avec le même serveur virtuel LLB.
- Spécification d’un serveur virtuel LLB inexistant.
- Spécification d’un serveur virtuel LLB pour lequel les services liés ne sont pas des sauts suivants.
- Spécification d’un serveur virtuel LLB pour lequel la méthode LB n’est pas définie sur l’une des options suivantes :
- ROUNDROBIN
- DESTINATIONIPHASH
- SOURCEIPHASH
- SRCIPDESTIPHASH
- LEASTPACKETS
- LEASTBANDWIDTH
- LTRM
- CALLIDHASH
- CUSTOM LOAD
- Spécification d’un serveur virtuel LLB pour lequel le type de persistance LB n’est pas défini sur l’une des options suivantes :
- DESTIP
- SOURCEIP
- SRCDSTIP
Le tableau suivant répertorie les noms et les valeurs des entités configurées sur l’appliance Citrix ADC :
Type d’entité | Nom | Adresse IP |
---|---|---|
Serveur virtuel d’équilibrage de charge de liaison | LLB1 | SO |
Services (prochains sauts) | Router1 | 1.1.1.254 |
Router2 | 2.2.2.254 | |
Router3 | 3.3.3.254 | |
PBR | PBR1 | SO |
PBR2 | SO |
Tableau 1. Exemples de valeurs pour la création d’entités
Pour implémenter la configuration décrite ci-dessus, vous devez :
- Créez des services Router1, Router2 et Router3 qui représentent les routeurs de saut suivants R1, R2 et R3.
- Créez le serveur virtuel LLB1 d’équilibrage de charge de liaison et liez les services Router1, Router2 et Router3 à celui-ci.
- Créer PBRS PBR1 et PBR2, avec les champs de saut suivant définis comme LLB1 et 2.2.2.254 (adresse IP du routeur R2), respectivement.
Pour créer un service à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez :
- add service <name> <IP> <serviceType> <port>
- show service <name>
Exemple :
> add service Router1 1.1.1.254 ANY *
Done
> add service Router2 2.2.2.254 ANY *
Done
> add service Router3 3.3.3.254 ANY *
Done
<!--NeedCopy-->
Pour créer un service à l’aide de l’interface graphique :
Accédez à Gestion du trafic > Équilibrage de charge > Serviceset créez un service.
Pour créer un serveur virtuel d’équilibrage de charge de liaison et lier un service à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez :
- add lb vserver <name> <serviceType>
- bind lb vserver < name> <serviceName>
- show lb vserver < name>
Exemple :
> add lb vserver LLB1 ANY
Done
> bind lb vserver LLB1 Router1 Router2 Router3
Done
<!--NeedCopy-->
Pour créer un serveur virtuel d’équilibrage de charge de liaison et lier un service à l’aide de l’interface graphique :
- Accédez à Gestion du trafic > Équilibrage de charge > Serveurs virtuelset créez un serveur virtuel pour l’équilibrage de charge des liens. Spécifiez ANY dans le champ Protocole. Remarque : Assurez-vous que Directement adressable n’est pas cochée.
- Sous l’onglet Services, dans la colonne Actif, activez la case à cocher du service que vous souhaitez lier au serveur virtuel.
Pour créer un PBR à l’aide de l’interface de ligne de commande :
À l’invite de commandes, tapez :
- add ns pbr <name> <action> [-srcIP [<operator>] <srcIPVal>] [-nextHop <nextHopVal>]
- show ns pbr
Exemple :
> add pbr PBR1 ALLOW -srcIP 10.102.29.30 -nextHop LLB1
Done
> add pbr PBR2 ALLOW -srcIP 10.102.29.90 -nextHop 2.2.2.254
Done
<!--NeedCopy-->
Pour créer un PBR à l’aide de l’interface graphique :
Accédez à Système > Réseau > PBR, sous l’onglet PBR, ajoutez un nouveau PBR.