Créer et mettre à jour des points de terminaison sortants

Cette page explique comment créer, mettre à jour et associer des points de terminaison sortants à des zones de transfert et à des règles de serveur DNS pour permettre le transfert direct des requêtes DNS à l'aide d'adresses IP privées depuis votre réseau VPC. Cette approche vous permet de contrôler plus précisément le trafic sortant. Pour en savoir plus sur les points de terminaison sortants, consultez Présentation des points de terminaison sortants.

Avant de commencer

  1. Dans la console Google Cloud , sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud .

    Rôles requis pour sélectionner ou créer un projet

    • Sélectionner un projet : la sélection d'un projet ne nécessite pas de rôle IAM spécifique. Vous pouvez sélectionner n'importe quel projet pour lequel un rôle vous a été attribué.
    • Créer un projet : pour créer un projet, vous devez disposer du rôle Créateur de projet (roles/resourcemanager.projectCreator), qui contient l'autorisation resourcemanager.projects.create. Découvrez comment attribuer des rôles.

    Accéder au sélecteur de projet

  2. Vérifiez que la facturation est activée pour votre projet Google Cloud .

  3. Activez les API Cloud DNS, Compute Engine et Network Services, si ce n'est pas déjà fait.

    Rôles requis pour activer les API

    Pour activer les API, vous devez disposer de l'autorisation serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation grâce au rôle Propriétaire (roles/owner). Sinon, vous pouvez obtenir cette autorisation grâce au rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.

    Activer les API

Assurez-vous de disposer d'un réseau VPC connecté à vos serveurs de noms DNS sur site ou externes. Dans chaque région où vous prévoyez de déployer un point de terminaison sortant, votre réseau VPC doit disposer d'un sous-réseau standard et d'un sous-réseau proxy réservé dans la région cible. Pour en savoir plus, consultez Créer et gérer des réseaux VPC.

Assurez-vous également que votre réseau sur site dispose d'une route de retour pour la plage d'adresses IP du sous-réseau proxy réservé régional, et configurez des règles de pare-feu sur site pour autoriser les requêtes DNS entrantes (ports UDP et TCP 53) provenant de la plage d'adresses IP du sous-réseau proxy réservé régional.

Créer un point de terminaison sortant

Pour créer un point de terminaison sortant, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Cloud DNS.

    Accéder à Cloud DNS

  2. Accédez à l'onglet Points de terminaison sortants, puis cliquez sur Créer un point de terminaison sortant.

  3. Dans le champ Nom, saisissez un nom unique pour le point de terminaison.

  4. (Facultatif) Dans le champ Description, saisissez une description du point de terminaison.

  5. Pour Région, sélectionnez la région cible.

  6. Dans la liste Réseau, sélectionnez votre réseau VPC.

  7. Pour Sous-réseau, sélectionnez le sous-réseau standard dans la région sélectionnée.

  8. Dans le champ Adresse IP du point de terminaison, saisissez une chaîne d'adresse IPv4 valide de la plage de sous-réseaux sélectionnée.

  9. Pour Sous-réseau proxy réservé, la console détecte automatiquement le sous-réseau proxy réservé régional dans le réseau VPC et la région sélectionnés pour la sortie des requêtes sortantes. Si aucun sous-réseau proxy réservé n'est détecté, cliquez sur Réserver un sous-réseau pour en créer un avant de continuer.

  10. Cliquez sur Créer.

gcloud

Exécutez la commande gcloud beta dns outbound-endpoints create :

gcloud beta dns outbound-endpoints create ENDPOINT_NAME \
    --project=PROJECT_ID \
    --network=VPC_NETWORK \
    --subnetwork=REGULAR_SUBNET \
    --location=REGION \
    --endpoint-ip=IP_ADDRESS \
    --description=DESCRIPTION

Remplacez les éléments suivants :

  • ENDPOINT_NAME : nom du point de terminaison sortant.
  • PROJECT_ID : ID de votre projet
  • VPC_NETWORK : réseau VPC associé au point de terminaison sortant, par exemple projects/PROJECT_ID/global/networks/NETWORK_NAME ou simplement NETWORK_NAME
  • REGULAR_SUBNET : sous-réseau standard à partir duquel l'adresse IP d'écoute interne du point de terminaison est allouée, par exemple projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME ou simplement SUBNET_NAME.
  • REGION : région dans laquelle le point de terminaison est déployé
  • IP_ADDRESS : adresse IPv4 interne disponible de la plage d'adresses IP principale du sous-réseau standard
  • DESCRIPTION : description facultative du point de terminaison.

API

Exécutez la méthode outboundEndpoints.create :

POST https://dns.googleapis.com/dns/v1beta2/projects/PROJECT_ID/locations/REGION/outboundEndpoints?outboundEndpointId=ENDPOINT_NAME
{
    "network": "projects/PROJECT_ID/global/networks/VPC_NETWORK",
    "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/REGULAR_SUBNET",
    "endpointIp": "IP_ADDRESS",
    "description": "DESCRIPTION"
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet
  • REGION : région où le point de terminaison est déployé
  • ENDPOINT_NAME : nom du point de terminaison sortant
  • VPC_NETWORK : réseau VPC associé au point de terminaison sortant
  • REGULAR_SUBNET : sous-réseau standard à partir duquel l'adresse IP d'écoute interne du point de terminaison est allouée.
  • IP_ADDRESS : adresse IPv4 interne disponible dans la plage d'adresses IP principale du sous-réseau standard
  • DESCRIPTION : description facultative du point de terminaison

Mettre à jour un point de terminaison sortant

Pour mettre à jour un point de terminaison sortant, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Cloud DNS.

    Accéder à Cloud DNS

  2. Accédez à l'onglet Points de terminaison sortants, puis cliquez sur le nom du point de terminaison sortant que vous souhaitez modifier.

  3. Cliquez sur Modifier, modifiez le champ Description, puis cliquez sur Enregistrer.

gcloud

Exécutez la commande gcloud beta dns outbound-endpoints update :

gcloud beta dns outbound-endpoints update ENDPOINT_NAME \
    --project=PROJECT_ID \
    --location=REGION \
    --description=UPDATED_DESCRIPTION

Remplacez les éléments suivants :

  • ENDPOINT_NAME : nom du point de terminaison sortant à mettre à jour.
  • PROJECT_ID : ID du projet.
  • REGION : région dans laquelle le point de terminaison est déployé
  • UPDATED_DESCRIPTION : description mise à jour facultative du point de terminaison.

API

Exécutez la méthode outboundEndpoints.patch :

PATCH https://dns.googleapis.com/dns/v1beta2/projects/PROJECT_ID/locations/REGION/outboundEndpoints/ENDPOINT_NAME?updateMask=description
{
    "description": "UPDATED_DESCRIPTION"
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet
  • REGION : région dans laquelle le point de terminaison est déployé
  • ENDPOINT_NAME : nom du point de terminaison sortant à mettre à jour
  • UPDATED_DESCRIPTION : description mise à jour du point de terminaison sortant

Associer des points de terminaison à une zone de transfert

Console

  1. Dans la console Google Cloud , accédez à la page Cloud DNS.

    Accéder à Cloud DNS

  2. Accédez à l'onglet Zones, puis cliquez sur Créer une zone. Vous pouvez également sélectionner une zone de transfert existante et cliquer sur Modifier.

  3. Configurez les paramètres de la zone :

    1. Dans le champ Type de zone, sélectionnez Privé.
    2. Dans le champ Nom de la zone, saisissez un identifiant unique pour la zone.
    3. Dans le champ Nom DNS, saisissez le suffixe de domaine que vous souhaitez transférer. Exemple : corp.example.com.
    4. (Facultatif) Dans le champ Description, saisissez une description.
    5. Sous Options, sélectionnez Transférer les requêtes vers un autre serveur.
    6. Pour Réseaux, sélectionnez les réseaux VPC autorisés à résoudre les requêtes sur cette zone.
  4. Sous Serveurs DNS de destination, saisissez les adresses IPv4 cibles ou les noms de domaine complets de vos serveurs de noms externes/sur site.

  5. Pour Chemin de transfert, sélectionnez Points de terminaison sortants.

  6. Sous Points de terminaison de sortie, sélectionnez un ou plusieurs points de terminaison pour gérer le transfert des requêtes :

    • Sélection minimale : sélectionnez au moins un point de terminaison de sortie (obligatoire lorsque les points de terminaison de sortie sont choisis comme chemin de transfert).
    • Contrainte de VPC unique : tous les points de terminaison sélectionnés doivent appartenir au même réseau VPC.
    • Bonne pratique pour la haute disponibilité : pour la reprise après sinistre interrégionale et le basculement automatique, configurez et sélectionnez au moins deux points de terminaison dans différentes régions de ce réseau VPC.
  7. Cliquez sur Créer (ou sur Enregistrer pour une zone existante).

gcloud

Associez des points de terminaison à une zone de transfert à l'aide de la commande gcloud beta dns managed-zones update :

gcloud beta dns managed-zones update ZONE_NAME \
    --project=PROJECT_ID \
    --outbound-endpoints=projects/PROJECT_ID/locations/REGION_1/outboundEndpoints/ENDPOINT_NAME_1,projects/PROJECT_ID/locations/REGION_2/outboundEndpoints/ENDPOINT_NAME_2

Remplacez les éléments suivants :

  • ZONE_NAME : nom de la zone de transfert à mettre à jour
  • PROJECT_ID : ID du projet.
  • REGION_1 et REGION_2 : régions où les points de terminaison sont déployés
  • ENDPOINT_NAME_1 : nom du premier point de terminaison à associer à la zone de transfert.
  • ENDPOINT_NAME_2 : nom du deuxième point de terminaison à associer à la zone de transfert

API

Exécutez la méthode managedZones.patch :

PATCH https://dns.googleapis.com/dns/v1beta2/projects/PROJECT_ID/managedZones/ZONE_NAME
{
    "name": "ZONE_NAME",
    "dnsName": "DNS_NAME",
    "description": "DESCRIPTION",
    "visibility": "private",
    "forwardingConfig": {
        "outboundEndpoints": [
              {
                 "name": "projects/PROJECT_ID/locations/REGION_1/outboundEndpoints/ENDPOINT_NAME_1"
              },
              {
                 "name": "projects/PROJECT_ID/locations/REGION_2/outboundEndpoints/ENDPOINT_NAME_2"
              }
        ]
    }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet.
  • ZONE_NAME : nom de la zone de transfert à mettre à jour
  • DNS_NAME : nom DNS de la zone de transfert
  • DESCRIPTION : (facultatif) description mise à jour de la zone de transfert
  • REGION_1 et REGION_2 : régions dans lesquelles les points de terminaison sont déployés (tous les points de terminaison sortants listés dans forwardingConfig doivent appartenir au même réseau VPC)
  • ENDPOINT_NAME_1 : nom du premier point de terminaison à associer à la zone de transfert.
  • ENDPOINT_NAME_2 : nom du deuxième point de terminaison à associer à la zone de transfert

Associer des points de terminaison à une règle de serveur DNS

Console

  1. Dans la console Google Cloud , accédez à la page Cloud DNS.

    Accéder à Cloud DNS

  2. Accédez à l'onglet Règles de serveur DNS, puis cliquez sur Créer une règle (ou sélectionnez une règle de serveur DNS existante, puis cliquez sur Modifier).

  3. Ensuite, procédez à la configuration des éléments suivants, comme indiqué :

    1. Dans le champ Nom de la règle, saisissez un nom unique pour la règle de serveur.
    2. (Facultatif) Dans le champ Description, saisissez une description.
    3. Pour Transfert de requêtes entrantes, indiquez si les clients externes interrogeront les charges de travail VPC à l'aide de points de terminaison entrants.
    4. Pour DNS64, activez ou désactivez la synthèse IPv6 selon vos besoins.
    5. Pour Journaux, activez ou désactivez la journalisation DNS selon vos besoins.
    6. Pour les réseaux VPC, sélectionnez ceux auxquels la règle de serveur s'applique.
  4. Sous Serveurs DNS alternatifs, saisissez les adresses IPv4 cibles de vos serveurs de noms externes ou sur site.

  5. Pour Chemin de transfert, sélectionnez Points de terminaison sortants.

  6. Sous Points de terminaison sortants, sélectionnez un ou plusieurs points de terminaison pour acheminer toutes les requêtes VPC non privées :

    • Sélection minimale : sélectionnez au moins un point de terminaison de sortie.
    • Contrainte de VPC unique : tous les points de terminaison sélectionnés doivent appartenir au même réseau VPC.
    • Bonne pratique pour la haute disponibilité : pour la reprise après sinistre interrégionale et le basculement automatique, configurez et sélectionnez au moins deux points de terminaison dans différentes régions de ce réseau VPC.
  7. Cliquez sur Créer (ou sur Enregistrer pour une règle existante).

gcloud

Associez des points de terminaison à une règle de serveur DNS à l'aide de la commande gcloud beta dns policies update :

gcloud beta dns policies update POLICY_NAME \
    --project=PROJECT_ID \
    --outbound-endpoints=projects/PROJECT_ID/locations/REGION_1/outboundEndpoints/ENDPOINT_NAME_1,projects/PROJECT_ID/locations/REGION_2/outboundEndpoints/ENDPOINT_NAME_2

Remplacez les éléments suivants :

  • POLICY_NAME : nom de la règle de serveur DNS à mettre à jour
  • PROJECT_ID : ID de votre projet
  • REGION_1 et REGION_2 : régions dans lesquelles les points de terminaison sont déployés
  • ENDPOINT_NAME_1 : nom du premier point de terminaison à associer à la règle de serveur DNS
  • ENDPOINT_NAME_2 : nom du deuxième point de terminaison à associer à la règle de serveur DNS

API

Exécutez la méthode policies.patch :

PATCH https://dns.googleapis.com/dns/v1beta2/projects/PROJECT_ID/policies/POLICY_NAME
{
    "alternativeNameServerConfig": {
        "outboundEndpoints": [
            {"name": "projects/PROJECT_ID/locations/REGION_1/outboundEndpoints/ENDPOINT_NAME_1"},
            {"name": "projects/PROJECT_ID/locations/REGION_2/outboundEndpoints/ENDPOINT_NAME_2"}
        ]
    }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet
  • POLICY_NAME : nom de la règle de serveur DNS à mettre à jour
  • REGION_1 et REGION_2 : régions dans lesquelles les points de terminaison sont déployés
  • ENDPOINT_NAME_1 : nom du premier point de terminaison à associer à la règle de serveur DNS
  • ENDPOINT_NAME_2 : nom du deuxième point de terminaison à associer à la règle de serveur DNS

Afficher les points de terminaison sortants

Pour lister ou décrire les points de terminaison sortants d'une région, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Cloud DNS.

    Accéder à Cloud DNS

  2. Accédez à l'onglet Points de terminaison sortants pour afficher tous les points de terminaison sortants de votre projet, leurs régions, leurs réseaux, leurs sous-réseaux, leurs adresses IP et leur état de santé.

gcloud

Pour lister tous les points de terminaison sortants d'une région, exécutez la commande gcloud beta dns outbound-endpoints list :

gcloud beta dns outbound-endpoints list \
    --project=PROJECT_ID \
    --location=REGION

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet
  • REGION : région où le point de terminaison est déployé

Pour afficher les détails d'un point de terminaison sortant spécifique, exécutez la commande gcloud beta dns outbound-endpoints describe :

gcloud beta dns outbound-endpoints describe ENDPOINT_NAME \
    --project=PROJECT_ID \
    --location=REGION

Remplacez les éléments suivants :

  • ENDPOINT_NAME : nom du point de terminaison sortant.
  • PROJECT_ID : ID du projet.
  • REGION : région dans laquelle le point de terminaison est déployé

API

Pour lister tous les points de terminaison sortants d'une région, envoyez une requête GET :

GET https://dns.googleapis.com/dns/v1beta2/projects/PROJECT_ID/locations/REGION/outboundEndpoints

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet
  • REGION : région dans laquelle le point de terminaison est déployé

Pour afficher les détails d'un point de terminaison sortant spécifique, envoyez une requête GET :

GET https://dns.googleapis.com/dns/v1beta2/projects/PROJECT_ID/locations/REGION/outboundEndpoints/ENDPOINT_NAME

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet
  • REGION : région où le point de terminaison est déployé
  • ENDPOINT_NAME : nom du point de terminaison sortant.

Supprimer un point de terminaison sortant

Avant de pouvoir supprimer un point de terminaison sortant, vous devez le dissocier de toutes les zones de transfert ou règles de serveur DNS qui y font référence. Pour en savoir plus, consultez Gérer les ressources réseau associées aux points de terminaison sortants.

Après avoir dissocié le point de terminaison sortant de toutes les zones de transfert et règles de serveur DNS, suivez ces étapes pour le supprimer :

Console

  1. Dans la console Google Cloud , accédez à la page Cloud DNS.

    Accéder à Cloud DNS

  2. Accédez à l'onglet Points de terminaison sortants.

  3. Sélectionnez le point de terminaison sortant que vous souhaitez supprimer, puis cliquez sur Supprimer.

gcloud

Exécutez la commande gcloud beta dns outbound-endpoints delete :

gcloud beta dns outbound-endpoints delete ENDPOINT_NAME \
    --project=PROJECT_ID \
    --location=REGION

Remplacez les éléments suivants :

  • ENDPOINT_NAME : nom du point de terminaison sortant à supprimer
  • PROJECT_ID : ID de votre projet
  • REGION : région dans laquelle le point de terminaison est déployé

API

Utilisez la méthode outboundEndpoints.delete.

DELETE https://dns.googleapis.com/dns/v1beta2/projects/PROJECT_ID/locations/REGION/outboundEndpoints/ENDPOINT_NAME

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet
  • REGION : région où le point de terminaison est déployé
  • ENDPOINT_NAME : nom du point de terminaison sortant à supprimer

Résoudre les problèmes

Pour connaître les méthodes de diagnostic et de résolution des erreurs liées aux points de terminaison sortants, consultez Dépannage.

Étapes suivantes