Citrix ADC

Définir les qualificatifs d’emplacement

La base de données utilisée pour implémenter la proximité statique contient l’emplacement des sites GSLB. Chaque emplacement possède une plage d’adresses IP et jusqu’à six qualificatifs pour cette plage. Les qualificatifs sont des chaînes littérales et sont comparés dans un ordre prescrit au moment de l’exécution. Chaque emplacement doit comporter au moins un qualificatif. Les étiquettes de qualificatifs définissent la signification des qualificatifs (contexte), qui sont définis par l’utilisateur. Citrix ADC dispose de deux contextes intégrés :

Contexte géographique, qui comporte les libellés de qualificateurs suivants :

  • Qualificateur 1 — « Continent »
  • Qualificateur 2 — « Pays »
  • Qualificateur 3 — « État »
  • Qualificateur 4 — « Ville »
  • Qualificateur 5 — « FAI »
  • Qualificateur 6 — « Organisation »

Entrées personnalisées, qui comportent les étiquettes de qualificateur suivantes :

  • Qualificateur 1 — « Qualifier 1 »
  • Qualificateur 2 — « Qualifier 2 »
  • Qualificateur 3 — « Qualifier 3 »
  • Qualificateur 4 — « Qualifier 4 »
  • Qualificateur 5 — « Qualifier 5 »
  • Qualificateur 6 — « Qualifier 6 »

Si le contexte géographique est défini sans qualificateur de continent, Continent est dérivé de Country. Même les libellés de qualificatifs intégrés sont basés sur le contexte, et les étiquettes peuvent être modifiées. Ces étiquettes de qualificatifs spécifient les emplacements mappés avec les adresses IP utilisées pour prendre des décisions de proximité statiques.

Pour prendre une décision statique basée sur la proximité, l’appliance Citrix ADC compare les attributs d’emplacement (qualificatifs) dérivés de l’adresse IP du résolveur de serveur DNS local avec les attributs d’emplacement des sites participants. Si un seul site correspond, l’applliance renvoie l’adresse IP de ce site. S’il y a plusieurs correspondances, le site sélectionné est le résultat d’un tournoi à la ronde sur les sites GSLB correspondants. S’il n’y a pas de correspondance, le site sélectionné est le résultat d’un tourniquet sur tous les sites configurés. Un site qui n’a pas de qualificatifs est considéré comme une correspondance.

Les règles GEO pour l’expression de stratégie basée sur l’emplacement vous permettent de vérifier les correspondances avec des caractères génériques. Cette fonctionnalité vérifie si les qualificatifs génériques correspondent à n’importe quel autre qualificatif, y compris non générique ou non. La correspondance générique est effectuée à l’aide de l’attribut matchWildcardtoany ajouté à la commande set locationParameter.

L’ matchWildcardtoany attribut peut être défini sur les valeurs suivantes :

  • Oui : les qualificatifs Wildcard correspondent à tous les autres qualificatifs.
  • Non : les qualificatifs génériques ne correspondent pas aux qualificatifs non génériques, mais à d’autres qualificatifs génériques. L’option par défaut est Non.
  • Expression : les qualificatifs génériques d’une expression correspondent à n’importe quel qualificatif d’un emplacement LDNS, mais les qualificatifs génériques de l’emplacement LDNS ne correspondent pas aux qualificatifs non génériques d’une expression.

Exemple :

add dns policy1 "CLIENT.IP.SRC.MATCHES_LOCATION("Continent.country \*.\*.\*.\* \“)” <action>
<!--NeedCopy-->

Pour définir les paramètres d’emplacement à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set locationparameter -context <context> -q1label <string> [-q2label <string>] [-q3label <string>] [-q4label <string>] [-q5label <string>] [-q6label <string>] -matchWildcardtoany [Yes | No | Expression]
<!--NeedCopy-->

Exemple :

set locationparameter -context custom -q1label asia -matchWildcardtoany Yes
<!--NeedCopy-->

Pour définir les paramètres de localisation à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > GSLB > Base de données et entrées.
  2. Sous Paramètres, cliquez sur Modifier les paramètres d’emplacement.
  3. Dans la page Configurer les paramètres d’emplacement, définissez les paramètres d’emplacement.

Exemple de configuration (en utilisant CLI)

Considérez la configuration réseau suivante :

  • Nom du serveur virtuel GSLB : gv1
  • Adresse IP du serveur virtuel GSLB : 1.1.1.2
  • Service GSLB : gsvc1 lié à gv1
  • Nom du fichier de la base de données d’emplacement sample.csv
  • Qualificatifs de géolocalisation : les qualificatifs 1 et 2 sont configurés. Le repos est défini pour correspondre au caractère générique.
    • Qualifier 1 — Asie
    • Qualifier 2 — IR
    • Qualifications 3-*
    • Qualifications 4-*
    • Qualifications 5-*
    • Qualifications 6-*
  • Stratégie DNS - La stratégie, pol1, est définie pour supprimer les paquets s’il y a correspondance.

Définissez le paramètre d’emplacement et configurez la stratégie DNS comme suit :

set locationParameter -q2label Country_Code -q3label Subdivision_1_Name -q4label Subdivision_2_Name -q5label City

add locationFile "/var/netscaler/inbuilt_db/sample.csv"

add gslb vserver gv1 HTTP -backupLBMethod ROUNDROBIN -tolerance 0

add dns policy pol1 "CLIENT.IP.SRC.MATCHES_LOCATION("Asia.IR.\*.\*.\*.\*")||CLIENT.IP.SRC.MATCHES_LOCATION("Asia.SY.\*.\*.\*.\*")||CLIENT.IP.SRC.MATCHES_LOCATION("Asia.SD.\*.\*.\*.\*")||CLIENT.IP.SRC.MATCHES_LOCATION("Asia.KP.\*.\*.\*.\*")||CLIENT.IP.SRC.MATCHES_LOCATION("North America.CU.\*.\*.\*.\*")||CLIENT.IP.SRC.MATCHES_LOCATION("Europe.UA.Crimea.\*.\*.\*.\*")" dns_default_act_Drop

bind dns global pol1 1 -gotoPriorityExpression 65535 -type REQ_DEFAULT

add gslb service gsvc1 1.1.1.2 HTTP 80 -publicIP 1.1.1.2 -publicPort 80 -maxClient 0 -healthMonitor NO -siteName s1 -cltTimeout 180 -svrTimeout 360 -downStateFlush ENABLED

bind gslb vserver gv1 -serviceName gsvc1

bind gslb vserver gv1 -domainName www.gslbnew.com -TTL 5
<!--NeedCopy-->

Ajoutez les entrées client suivantes dans le fichier de base de données d’emplacement. Dans cet exemple, le nom du fichier de base de données d’emplacement est sample.csv :

10.106.24.170,10.106.24.190,,,,,,,8.0000,47.0000

10.102.82.170,10.102.82.190,Asia,,,,,,-73.9924,40.7553

10.106.24.140,10.106.24.150,,IR,,,,,51.4231,35.6961
<!--NeedCopy-->

Selon la configuration précédente, les clients compris entre 10.106.24.170 et 10.106.24.190 n’ont aucun qualificatif générique défini. Les clients entre 10.106.24.140 et 10.106.24.150 ont le qualificatif 2 comme IR.

Définissez le qualificatif générique de correspondance sur NON :

set locationparameter -matchWildcardtoany no
<!--NeedCopy-->

Lorsque le qualificatif générique de correspondance est défini sur NON, les qualificatifs génériques correspondent uniquement aux qualificatifs génériques définis. Il ne correspond à aucun autre qualificatif non générique.

  • Les requêtes DNS provenant de 10.106.24.147 correspondent au qualificatif générique défini (qualificatif 2 = IR). Par conséquent, la stratégie DNS entre en vigueur et supprime les requêtes.

    Lorsque vous exécutez la commande dig @10.102.82.13 www.gslbnew.com sur le client 10.106.24.147, la sortie indique que les serveurs n’étaient pas accessibles.

     root@ns#  dig @10.102.82.13 www.gslbnew.com
    
     ; <<>> DiG 9.11.23 <<>> @10.102.82.13 www.gslbnew.com
     ; (1 server found)
     ;; global options: +cmd
     ;; connection timed out; no servers could be reached
     <!--NeedCopy-->
    
  • Les requêtes DNS provenant de 10.106.24.180 ne correspondent pas aux qualificatifs définis. La politique DNS n’entre pas en vigueur et les requêtes sont traitées.

    Exécutez la commande dig @10.102.82.13 www.gslbnew.com sur le client 10.106.24.180. La sortie indique l’adresse IP du serveur virtuel GSLB.

     root@ns# dig @10.102.82.13 www.gslbnew.com
    
     ; <<>> DiG 9.11.23 <<>> @10.102.82.13 www.gslbnew.com
     ; (1 server found)
     ;; global options: +cmd
     ;; Got answer:
     ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64265
     ;; flags: qr aa rd ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
     ;; WARNING: recursion requested but not available
    
     ;; OPT PSEUDOSECTION:
     ; EDNS: version: 0, flags:; udp: 1280
     ;; QUESTION SECTION:
     ;www.gslbnew.com. IN    A
    
     ;; ANSWER SECTION:
     www.gslbnew.com.    5   IN  A   1.1.1.2
    
     ;; Query time: 12 msec
     ;; SERVER: 10.102.82.13#53(10.102.82.13)
     ;; WHEN: Tue Mar 29 22:46:40 UTC 2022
     ;; MSG SIZE  rcvd: 60
     <!--NeedCopy-->
    

Définissez le qualificatif générique de correspondance sur Oui :

set locationparameter -matchWildcardtoany yes
<!--NeedCopy-->

Lorsque le qualificatif générique de correspondance est défini sur yes, les qualificatifs génériques correspondent à n’importe quel qualificatif générique (qualificatif défini et non générique).

  • Les requêtes DNS provenant de 10.106.24.147 correspondent au qualificatif défini (qualificatif 2 = IR). Par conséquent, la stratégie DNS entre en vigueur et supprime les requêtes.

    Exécutez la commande dig @10.102.82.13 www.gslbnew.com sur le client 10.106.24.147. La sortie indique que les serveurs n’étaient pas accessibles.

     root@ns#  dig @10.102.82.13 www.gslbnew.com
    
     ; <<>> DiG 9.11.23 <<>> @10.102.82.13 www.gslbnew.com
     ; (1 server found)
     ;; global options: +cmd
     ;; connection timed out; no servers could be reached
     <!--NeedCopy-->
    
  • Les requêtes provenant de 10.106.24.180 correspondent aux qualificatifs non génériques. Par conséquent, la stratégie DNS entre en vigueur et supprime les requêtes.

    Exécutez la commande dig @10.102.82.13 www.gslbnew.com sur le client 10.106.24.180. La sortie indique que les serveurs n’étaient pas accessibles.

     root@ns# dig @10.102.82.13 www.gslbnew.com
    
     ; <<>> DiG 9.11.23 <<>> @10.102.82.13 www.gslbnew.com
     ; (1 server found)
     ;; global options: +cmd
     ;; connection timed out; no servers could be reached
     <!--NeedCopy-->
    

Définissez le qualificatif générique de correspondance sur Expression :

set locationparameter -matchWildcardtoany expression
<!--NeedCopy-->

Lorsque le qualificatif générique de correspondance est défini sur expression, les qualificatifs génériques correspondent soit au qualificateur disponible dans la stratégie DNS, soit aux qualificateurs disponibles dans le fichier de base de données d’emplacement.

  • Les requêtes DNS provenant de 10.106.24.147 correspondent aux qualificatifs génériques définis dans la stratégie DNS. Par conséquent, la stratégie DNS entre en vigueur et supprime les requêtes.

    Exécutez la commande dig @10.102.82.13 www.gslbnew.com sur le client 10.106.24.147. La sortie indique que les serveurs n’étaient pas accessibles.

     root@ns#  dig @10.102.82.13 www.gslbnew.com
    
     ; <<>> DiG 9.11.23 <<>> @10.102.82.13 www.gslbnew.com
     ; (1 server found)
     ;; global options: +cmd
     ;; connection timed out; no servers could be reached
     <!--NeedCopy-->
    
  • Les requêtes provenant de 10.106.24.180 ne correspondent pas aux qualificatifs de la stratégie DNS. Par conséquent, la stratégie DNS n’entre pas en vigueur et les requêtes sont traitées.

    Exécutez la commande dig @10.102.82.13 www.gslbnew.com sur le client 10.106.24.180. La sortie indique l’adresse IP du serveur virtuel GSLB.

     root@ns# dig @10.102.82.13 www.gslbnew.com
    
     ; <<>> DiG 9.11.23 <<>> @10.102.82.13 www.gslbnew.com
     ; (1 server found)
     ;; global options: +cmd
     ;; Got answer:
     ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64265
     ;; flags: qr aa rd ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
     ;; WARNING: recursion requested but not available
    
     ;; OPT PSEUDOSECTION:
     ; EDNS: version: 0, flags:; udp: 1280
     ;; QUESTION SECTION:
     ;www.gslbnew.com.  IN   A
    
     ;; ANSWER SECTION:
     www.gslbnew.com.    5   IN  A   1.1.1.2
    
     ;; Query time: 12 msec
     ;; SERVER: 10.102.82.13#53(10.102.82.13)
     ;; WHEN: Tue Mar 29 22:46:40 UTC 2022
     ;; MSG SIZE  rcvd: 60
     <!--NeedCopy-->
    
Définir les qualificatifs d’emplacement