Ordre de résolution des noms

Cloud DNS utilise la procédure suivante pour répondre aux requêtes provenant d'instances de machines virtuelles (VM) Compute Engine et de nœuds Google Kubernetes Engine (GKE).

Pour les VM Compute Engine autres que les nœuds GKE, Cloud DNS suit l'ordre de résolution des réseaux VPC pour traiter les requêtes reçues. Chaque VM doit être configurée pour utiliser l'adresse IP du serveur de métadonnées (169.254.169.254) comme serveur de noms.

Pour les nœuds GKE:

  1. Cloud DNS tente d'abord de mettre en correspondance une requête à l'aide de stratégies de réponse à l'échelle du cluster et de zones privées.

  2. Cloud DNS continue en suivant l'ordre de résolution du réseau VPC.

Stratégies de réponse à l'échelle du cluster et zones privées

  1. Mise en correspondance à l'aide de règles dans les stratégies de réponse à l'échelle d'un cluster GKE. Cloud DNS analyse toutes les stratégies de réponse à l'échelle du cluster GKE applicables pour trouver une règle dans laquelle l'attribut de nom DNS correspond à autant de requêtes que possible. Cloud DNS utilise la correspondance du suffixe le plus long pour analyser les stratégies de réponse à l'échelle d'un cluster:

    1. Si Cloud DNS trouve une règle de stratégie de réponse correspondante et que cette règle diffuse des données locales, Cloud DNS renvoie les données locales en tant que réponse, terminant ainsi le processus de résolution de noms.

    2. Si Cloud DNS trouve une règle de stratégie de réponse correspondante et que le comportement de cette règle contourne la stratégie de réponse, il passe à l'étape suivante.

    3. Si Cloud DNS ne parvient pas à trouver de stratégie de réponse correspondante ou s'il n'existe pas de stratégie de réponse à l'échelle d'un cluster pour le nœud, Cloud DNS passe à l'étape suivante.

  2. Faites correspondre les enregistrements des zones privées à l'échelle du cluster. Cloud DNS analyse toutes les zones gérées privées à l'échelle du cluster à la recherche d'un enregistrement correspondant à autant de requêtes que possible. Cloud DNS utilise la correspondance du suffixe le plus long pour rechercher les enregistrements dans les zones privées à l'échelle d'un cluster:

    1. Si la correspondance la plus spécifique pour la requête est le nom d'une zone privée à l'échelle d'un cluster, Cloud DNS utilise les données d'enregistrement de cette zone pour résoudre la requête:

      • Si la zone contient un enregistrement qui correspond exactement à la requête, Cloud DNS renvoie les données de cet enregistrement.
      • Si la zone ne contient pas d'enregistrement correspondant, Cloud DNS renvoie NXDOMAIN.
    2. Si la correspondance la plus spécifique pour la requête est le nom d'une zone de transfert à l'échelle d'un cluster, Cloud DNS transfère la requête à l'une des cibles de transfert de la zone de transfert pour terminer le processus de résolution de noms. Cloud DNS renvoie l'une des réponses suivantes:

      • Réponse reçue de la cible de transfert.
      • Une réponse SERVFAIL, si la cible de transfert ne répond pas à Cloud DNS.
    3. Si la requête ne correspond à aucune zone privée à l'échelle du cluster, Cloud DNS passe à l'ordre de résolution du réseau VPC.

Ordre de résolution des réseaux VPC

  1. Serveur de noms alternatif du réseau VPC: si le réseau VPC dispose d'une règle de serveur sortant, Google Cloud transfère la requête à l'un des serveurs de noms alternatifs définis dans cette règle pour terminer le processus de résolution de noms.

    Si plusieurs serveurs de noms alternatifs existent dans la règle de serveur sortant, Cloud DNS les classe à l'aide d'un algorithme interne. En commençant par des niveaux égaux, les serveurs de noms alternatifs augmentent de rang en fonction du taux de réponses positives plus élevé (y compris les réponses NXDOMAIN) et en fonction du délai aller-retour le plus court (la latence de réponse la plus faible).

    Cloud DNS envoie des requêtes à des serveurs de noms alternatifs et renvoie des réponses à l'aide du processus suivant:

    • Si plusieurs serveurs de noms alternatifs existent dans la règle de serveur sortant, Cloud DNS envoie d'abord la requête au serveur de noms alternatif le mieux classé, puis au serveur de noms alternatif classé suivant si Cloud DNS ne reçoitaucuneréponse du serveur de noms alternatif dans le classement. Si Cloud DNS ne reçoit aucune réponse du serveur de noms alternatif classé suivant, il continue d'interroger les serveurs de noms alternatifs par ordre décroissant de classement jusqu'à ce qu'il épuise la liste des serveurs de noms alternatifs.

    • Si Cloud DNS reçoit une réponse d'un autre serveur de noms, il la renvoie. Les réponses incluent NXDOMAIN.

    • Si Cloud DNS ne reçoit pas de réponse de tous les serveurs de noms alternatifs dans la règle de serveur sortant, il synthétise une réponse SERVFAIL. Pour résoudre les problèmes de connectivité du serveur de noms alternatif, consultez la section Configuration réseau requise pour le serveur de noms alternatif.

    Si le réseau VPC ne possède pas de règle de serveur sortant, Cloud DNS passe à l'étape suivante.

  2. Mise en correspondance à l'aide de règles dans les stratégies de réponse à l'échelle du réseau VPC Cloud DNS analyse toutes les stratégies de réponse du réseau VPC applicables à la recherche d'une règle dans laquelle l'attribut de nom DNS correspond à autant de requêtes que possible. Cloud DNS utilise la correspondance du suffixe le plus long pour analyser les stratégies de réponse à l'échelle du réseau VPC:

    1. Si Cloud DNS trouve une règle de stratégie de réponse correspondante et que cette règle diffuse des données locales, Cloud DNS renvoie les données locales en tant que réponse, ce qui termine le processus de résolution de noms.

    2. Si Cloud DNS trouve une règle de stratégie de réponse correspondante et que le comportement de cette règle contourne la stratégie de réponse, il passe à l'étape suivante.

    3. Si Cloud DNS ne parvient pas à trouver de stratégie de réponse correspondante ou s'il n'existe pas de règle de réponse à l'échelle du réseau VPC applicable à la VM ou au nœud, Cloud DNS passe à l'étape suivante.

  3. Faites correspondre les enregistrements des zones gérées privées à l'échelle du réseau VPC et des zones .internal Compute Engine. Cloud DNS analyse toutes les zones DNS internes de Compute Engine et toutes les zones privées gérées autorisées pour le réseau VPC à la recherche d'un enregistrement correspondant à autant de requêtes que possible. Cloud DNS utilise la correspondance du suffixe le plus long pour rechercher les enregistrements:

    1. Si la correspondance la plus spécifique pour la requête est un nom DNS interne Compute Engine, Cloud DNS renvoie l'adresse IPv4 interne de l'interface réseau de la VM en tant que réponse, terminant ainsi le processus de résolution de noms. Un enregistrement d'une zone privée gérée est uniquement prioritaire sur un nom DNS interne Compute Engine créé automatiquement lorsque l'enregistrement dans la zone privée est une correspondance plus spécifique.

    2. Si la correspondance la plus spécifique pour la requête est le nom d'une zone privée à l'échelle du réseau VPC, Cloud DNS utilise les données d'enregistrement de cette zone pour résoudre la requête:

      • Si la zone contient un enregistrement qui correspond exactement à la requête, Cloud DNS renvoie les données de l'enregistrement.
      • Si la zone ne contient pas d'enregistrement correspondant, Cloud DNS renvoie NXDOMAIN.
    3. Si la correspondance la plus spécifique pour la requête est le nom d'une zone de transfert à l'échelle du réseau VPC, Cloud DNS transfère la requête à l'une des cibles de transfert de la zone de transfert pour terminer le processus de résolution de noms. Cloud DNS renvoie l'une des réponses suivantes:

      • Réponse reçue de la cible de transfert.
      • Une réponse SERVFAIL, si la cible de transfert ne répond pas à Cloud DNS.
    4. Si la correspondance la plus spécifique pour la requête est le nom d'une zone d'appairage à l'échelle du réseau VPC, Cloud DNS arrête le processus actuel de résolution de noms et lance un nouveau processus de résolution de noms du point de vue du réseau VPC cible de la zone d'appairage.

    Si la requête ne correspond à aucun nom DNS interne de Compute Engine, ou si elle ne correspond pas à une zone privée, à une zone de transfert ou à une zone d'appairage, Cloud DNS passe à l'étape suivante.

  4. Mise en correspondance de l'enregistrement à l'aide d'une requête DNS publique: Google Cloud suit l'enregistrement SOA (Start of Authority) pour interroger les zones accessibles au public, y compris les zones publiques Cloud DNS. Cloud DNS renvoie l'une des réponses suivantes:

    • Réponse reçue d'un serveur de noms faisant autorité.
    • Une réponse NXDOMAIN si l'enregistrement n'existe pas.

Exemple

Supposons que vous disposez de deux réseaux VPC, vpc-a et vpc-b, et d'un cluster GKE, cluster-a, ainsi que les ressources à portée limitée suivantes :

  1. vpc-a est autorisé à interroger les zones privées suivantes. Notez le point final dans chaque entrée:

    • static.example.com.
    • 10.internal.
  2. peer.com. est une zone d'appairage qui peut interroger l'ordre de résolution des noms VPC de vpc-b.

  3. vpc-a n'est associé à aucun serveur sortant ni à aucune stratégie de réponse.

  4. cluster-a est autorisé à interroger une zone privée appelée example.com. cluster-a n'est également associé à aucun serveur sortant ni à aucune stratégie de réponse.

  5. Une VM dans cluster-a peut interroger:

    • example.com et enfants (y compris static.example.com), répondu par la zone privée appelée example.com autorisée à cluster-a.
    • 10.internal sur vpc-a.
    • peer.com à l'aide de la zone d'appairage.
  6. Une VM qui n'est pas dans cluster-a peut interroger:

    • static.example.com et enfants, répondu par la zone privée appelée static.example.com autorisée à vpc-a. Les requêtes pour example.com renvoient des réponses Internet.
    • 10.internal sur vpc-a.
    • peer.com à l'aide de la zone d'appairage.

Étapes suivantes