Configurer un équilibreur de charge réseau passthrough interne avec des backends internes IPv6 uniquement

Ce document vous explique comment configurer et tester un équilibreur de charge réseau passthrough interne compatible avec le trafic interne IPv6 uniquement. Dans cet exemple de configuration, vous installez un serveur Web Apache sur les instances de machines virtuelles (VM) de backend internes IPv6 uniquement pour diffuser du contenu en réponse au trafic reçu via l'adresse IP virtuelle (VIP) de l'équilibreur de charge.

Comme le montre le schéma d'architecture suivant, les VM de backend de l'équilibreur de charge sont configurées avec des adresses IPv6 internes uniquement. Pour cet exemple de configuration, ces VM de backend doivent télécharger Apache pour installer un serveur Web, ce qui nécessite un accès à l'Internet public. Toutefois, comme ces VM de backend ne disposent pas d'adresses IP externes, elles ne peuvent pas accéder directement à Internet.

Pour activer l'accès à Internet, cet exemple utilise une instance de VM distincte, configurée avec une adresse IPv6 externe, qui sert de passerelle NAT. Cette VM effectue la translation d'adresse au niveau du noyau Linux. Plus précisément, la chaîne POSTROUTING du tableau NAT est utilisée pour masquer l'adresse source des paquets sortants, en remplaçant l'adresse IPv6 interne de chaque VM de backend par l'adresse IPv6 externe de la VM de passerelle NAT sur l'interface réseau spécifiée.

Exemple de configuration d'un équilibreur de charge réseau passthrough interne avec des backends internes IPv6 uniquement.
Exemple de configuration d'un équilibreur de charge réseau passthrough interne avec des backends internes IPv6 uniquement (cliquez pour agrandir).

Les informations suivantes vous guident dans la configuration des différents composants utilisés pour configurer un équilibreur de charge réseau passthrough interne avec des backends internes IPv6 uniquement.

Autorisations

Pour suivre ce guide, vous devez créer des instances et modifier un réseau dans un projet. Vous devez être propriétaire ou éditeur du projet, ou disposer de tous les rôles IAM Compute Engine suivants :

Tâche Rôle requis
Créer des réseaux, des sous-réseaux et des composants de l'équilibreur de charge Administrateur de réseaux Compute
(roles/compute.networkAdmin)
Ajouter et supprimer des règles de pare-feu Administrateur de sécurité de Compute
(roles/compute.securityAdmin)
Créer des instances Administrateur d'instances Compute
(roles/compute.instanceAdmin)

Pour en savoir plus, consultez les guides suivants :

Configurer un réseau et un sous-réseau IPv6 uniquement avec des adresses IPv6 internes

L'exemple d'équilibreur de charge réseau passthrough interne décrit sur cette page est créé dans un réseau VPC en mode personnalisé nommé lb-network-ipv6-only.

Pour configurer des sous-réseaux avec des plages IPv6 internes, activez une plage IPv6 interne ULA du réseau VPC. Les plages de sous-réseaux IPv6 internes sont allouées à partir de cette plage.

Console

  1. Dans la console Trusted Cloud , accédez à la page Réseaux VPC.

    Accéder aux réseaux VPC

  2. Cliquez sur Créer un réseau VPC.

  3. Dans le champ Nom, saisissez lb-network-ipv6-only.

  4. Si vous souhaitez configurer des plages d'adresses IPv6 internes sur les sous-réseaux de ce réseau, procédez comme suit :

    1. Dans Paramètres d'adresses IPv6 privée, sélectionnez Configurer une plage d'adresses IPv6 interne ULA pour ce réseau VPC.
    2. Dans le champ Allouer une plage IPv6 interne, sélectionnez Automatiquement ou Manuellement. Si vous sélectionnez Manuellement, saisissez une plage /48 comprise dans la plage fd20::/20. Si la plage est déjà utilisée, vous êtes invité à en fournir une autre.
  5. Dans le champ Mode de création de sous-réseau, sélectionnez Personnalisé.

  6. Dans la section Nouveau sous-réseau, spécifiez les paramètres de configuration de sous-réseau suivants :

    • Nom : lb-subnet-ipv6-only
    • Région : us-west1
    • Type de pile IP : IPv6 (pile unique)
    • Type d'accès IPv6 : Interne.
  7. Cliquez sur OK.

  8. Cliquez sur Créer.

gcloud

  1. Pour créer un réseau VPC en mode personnalisé, exécutez la commande gcloud compute networks create.

    Pour configurer des plages IPv6 internes sur n'importe quel sous-réseau de ce réseau, utilisez l'option --enable-ula-internal-ipv6.

    gcloud compute networks create lb-network-ipv6-only \
        --subnet-mode=custom \
        --enable-ula-internal-ipv6 \
        --bgp-routing-mode=regional
    
  2. Configurez un sous-réseau avec le paramètre ipv6-access-type défini sur INTERNAL. Cela indique que les VM de ce sous-réseau ne peuvent avoir que des adresses IPv6 internes. Dans cet exemple, le sous-réseau est nommé lb-subnet-ipv6-only-internal.

    Pour créer le sous-réseau, exécutez la commande gcloud compute networks subnets create.

    gcloud compute networks subnets create lb-subnet-ipv6-only-internal \
        --network=lb-network-ipv6-only \
        --region=us-west1 \
        --stack-type=IPV6_ONLY \
        --ipv6-access-type=INTERNAL
    

Configurer un sous-réseau IPv6 uniquement avec des adresses IPv6 externes

Un sous-réseau IPv6 uniquement avec des adresses IPv6 externes est utilisé pour créer une instance de VM qui sert de passerelle NAT.

Console

  1. Dans la console Trusted Cloud , accédez à la page Réseaux VPC.

    Accéder aux réseaux VPC

  2. Pour afficher la page Détails du réseau VPC, cliquez sur le nom du réseau VPC que vous avez créé.

  3. Dans l'onglet Sous-réseaux, cliquez sur Ajouter un sous-réseau. Dans le panneau qui s'affiche, spécifiez les paramètres de configuration de sous-réseau suivants :

    • Nom : lb-subnet-ipv6-only-external
    • Région : us-west1
    • Type de pile IP : IPv6 (pile unique)
    • Type d'accès IPv6: Externe
  4. Cliquez sur Ajouter.

gcloud

Configurez un sous-réseau avec le paramètre ipv6-access-type défini sur EXTERNAL. Cela indique que les VM de ce sous-réseau peuvent avoir des adresses IPv6 externes. Dans cet exemple, le sous-réseau est nommé lb-subnet-ipv6-only-external.

Pour créer le sous-réseau, exécutez la commande gcloud compute networks subnets create.

gcloud compute networks subnets create  lb-subnet-ipv6-only-external \
    --network=lb-network-ipv6-only \
    --region=us-west1 \
    --stack-type=IPV6_ONLY \
    --ipv6-access-type=EXTERNAL

Configurer des règles de pare-feu dans le réseau VPC

Cet exemple utilise les règles de pare-feu suivantes :

  • fw-allow-lb-access-ipv6-only : règle d'entrée, applicable à toutes les cibles du réseau VPC, autorisant le trafic provenant de toutes les sources IPv6.

  • fw-allow-ssh : règle d'entrée qui autorise la connectivité SSH entrante sur le port TCP 22 à partir de n'importe quelle adresse. Vous pouvez choisir une plage d'adresses IP sources plus restrictive pour cette règle. Par exemple, vous pouvez spécifier uniquement les plages d'adresses IP du système à partir duquel vous souhaitez lancer des sessions SSH. Cet exemple utilise le tag cible allow-ssh pour identifier les VM auxquelles la règle doit s'appliquer.

  • fw-allow-health-check-ipv6-only : règle d'entrée, applicable aux instances faisant l'objet d'un équilibrage de charge, qui autorise le trafic issu des systèmes de vérification d'état Trusted Cloud (2600:2d00:1:b029::/64). Cet exemple utilise le tag cible allow-health-check-ipv6 pour identifier les instances auxquelles la règle doit s'appliquer.

Sans ces règles de pare-feu, la règle d'entrée interdite par défaut bloque le trafic entrant vers les instances backend.

Console

  1. Dans la console Trusted Cloud , accédez à la page Règles de pare-feu.

    Accéder aux stratégies de pare-feu

  2. Pour autoriser le trafic de sous-réseau IPv6, cliquez à nouveau sur Créer une règle de pare-feu, puis saisissez les informations suivantes :

    • Nom : fw-allow-lb-access-ipv6-only
    • Réseau : lb-network-ipv6-only
    • Priorité : 1000
    • Sens du trafic : entrée
    • Action en cas de correspondance : autoriser
    • Cibles : All instances in the network
    • Filtre source : Plages IPv6
    • Plages IPv6 sources : ::/0
    • Protocoles et ports : tout autoriser
  3. Cliquez sur Créer.

  4. Pour autoriser les connexions SSH entrantes, cliquez à nouveau sur Créer une règle de pare-feu et saisissez les informations suivantes :

    • Nom : fw-allow-ssh
    • Réseau : lb-network-ipv6-only
    • Priorité : 1000
    • Sens du trafic : entrée
    • Action en cas de correspondance : autoriser
    • Cibles : Tags cibles spécifiés
    • Tags cibles : allow-ssh
    • Filtre source : Plages IPv6
    • Plages IPv6 sources : ::/0
    • Protocoles et ports : sélectionnez Protocoles et ports spécifiés, cochez la case TCP, puis saisissez 22 dans Ports.
  5. Cliquez sur Créer.

  6. Pour autoriser les vérifications d'état IPv6 Trusted Cloud , cliquez à nouveau sur Créer une règle de pare-feu, puis saisissez les informations suivantes :

    • Nom : fw-allow-health-check-ipv6-only
    • Réseau : lb-network-ipv6-only
    • Priorité : 1000
    • Sens du trafic : entrée
    • Action en cas de correspondance : autoriser
    • Cibles : Tags cibles spécifiés
    • Tags cibles : allow-health-check-ipv6
    • Filtre source : Plages IPv6
    • Plages IPv6 sources : 2600:2d00:1:b029::/64
    • Protocoles et ports : tout autoriser
  7. Cliquez sur Créer.

gcloud

  1. Créez la règle de pare-feu fw-allow-lb-access-ipv6-only pour autoriser tout le trafic IPv6 entrant vers toutes les instances de VM du réseau VPC :

    gcloud compute firewall-rules create fw-allow-lb-access-ipv6-only \
        --network=lb-network-ipv6-only \
        --action=allow \
        --direction=ingress \
        --source-ranges=::/0 \
        --rules=all
    
  2. Créez la règle de pare-feu fw-allow-ssh pour autoriser la connectivité SSH aux VM avec le tag réseau allow-ssh. Lorsque vous omettez source-ranges,Trusted Cloud interprète la règle comme désignant n'importe quelle source.

    gcloud compute firewall-rules create fw-allow-ssh \
        --network=lb-network-ipv6-only \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-ssh \
        --source-ranges=::/0 \
        --rules=tcp:22
    
  3. Créez la règle fw-allow-health-check-ipv6 pour autoriser les vérifications d'étatTrusted Cloud IPv6.

    gcloud compute firewall-rules create fw-allow-health-check-ipv6-only \
        --network=lb-network-ipv6-only \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-health-check-ipv6 \
        --source-ranges=2600:2d00:1:b029::/64 \
        --rules=tcp,udp
    

Créer une instance de VM qui sert de passerelle NAT

Dans cet exemple, un script Bash est utilisé pour créer une passerelle NAT qui permet de modifier les paquets IPv6 au niveau du noyau Linux.

Le script Bash modifie l'adresse source de tous les paquets IPv6 sortants de la chaîne POSTROUTING, en la remplaçant par l'adresse IPv6 externe de l'interface de la VM.

Le script Bash modifie la chaîne POSTROUTING dans iptables pour masquer l'adresse IPv6 source de tous les paquets sortants, en la remplaçant par l'adresse IPv6 externe de l'interface réseau de la VM.

Vous devez également activer le transfert IP pour cette instance.

Pour créer une instance de VM qui servira de passerelle NAT, procédez comme suit :

Console

  1. Dans la console Trusted Cloud , accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Cliquez sur Créer une instance.

  3. Dans le champ Nom, saisissez nat-gateway-instance.

  4. Pour Région, sélectionnez us-west1, et pour Zone, sélectionnez us-west1-a.

  5. Dans la section Disque de démarrage, assurez-vous que Debian GNU/Linux 12 (bookworm) est sélectionné pour les options du disque de démarrage. Si nécessaire, cliquez sur Modifier pour modifier l'image.

  6. Cliquez sur Mise en réseau et configurez les champs suivants :

    1. Pour Tags réseau, saisissez allow-ssh.
    2. Pour Transfert IP, cochez la case Activer.
    3. Pour Interfaces réseau, sélectionnez l'option suivante :
      • Réseau : lb-network-ipv6-only
      • Sous-réseau : lb-subnet-ipv6-only-external
      • Type de pile IP : IPv6 (pile unique)
      • Adresse IPv6 externe : Allocation automatique
  7. Cliquez sur Avancé, puis dans le champ Script de démarrage, saisissez le script suivant :

    #!/bin/bash
    
    set -e
    
    echo "Starting GCE startup script..."
    
    # --- IPv6 NAT table configuration ---
    echo "Modifying the source IPv6 address using the NAT table"
    
    # Enable IPv6 forwarding
    sysctl -w net.ipv6.conf.all.forwarding=1
    
    # Determine the primary network interface (assuming it's the last one listed)
    IFACE=$(ip -brief link | tail -1 | awk '{print $1}')
    
    echo "Using interface: $IFACE for IPv6 NAT"
    
    # Flush existing IPv6 NAT rules
    ip6tables -F -t nat
    ip6tables -X -t nat
    
    # Masquerade all outgoing IPv6 traffic on the determined interface
    ip6tables -t nat -A POSTROUTING -o "$IFACE" -j MASQUERADE
    
    echo "IPv6 masquerading configured successfully."
    
    echo "GCE startup script finished."
    

  8. Cliquez sur Créer.

gcloud

  1. Créez un script de démarrage.

    nano startup.sh
    
  2. Ajoutez le script suivant et enregistrez le fichier.

    #!/bin/bash
    
    set -e
    
    echo "Starting GCE startup script..."
    
    # --- IPv6 NAT table configuration ---
    echo "Modifying the source IPv6 address using the NAT table"
    
    # Enable IPv6 forwarding
    sysctl -w net.ipv6.conf.all.forwarding=1
    
    # Determine the primary network interface (assuming it's the last one listed)
    IFACE=$(ip -brief link | tail -1 | awk '{print $1}')
    
    echo "Using interface: $IFACE for IPv6 NAT"
    
    # Flush existing IPv6 NAT rules
    ip6tables -F -t nat
    ip6tables -X -t nat
    
    # Masquerade all outgoing IPv6 traffic on the determined interface
    ip6tables -t nat -A POSTROUTING -o "$IFACE" -j MASQUERADE
    
    echo "IPv6 masquerading configured successfully."
    
    echo "GCE startup script finished."
    
  3. Créez une instance de VM et ajoutez-y le fichier de métadonnées. Pour utiliser cette VM comme saut suivant d'une route, utilisez l'indicateur --can-ip-forward pour activer le transfert IP pour cette instance.

    gcloud compute instances create nat-gateway-instance \
        --zone=us-west1-a \
        --tags=allow-ssh \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --subnet=lb-subnet-ipv6-only-external \
        --stack-type=IPV6_ONLY \
        --can-ip-forward \
        --metadata-from-file=startup-script=startup.sh
    

Créer une route statique dans le réseau VPC

Dans cet exemple, une route personnalisée est créée pour rediriger tout le trafic IPv6 destiné à Internet (::/0) des VM taguées nat-gw-tag vers l'instance de VM nat-gateway-instance, qui sert de passerelle NAT.

Pour créer un itinéraire, procédez comme suit :

Console

  1. Dans la console Trusted Cloud , accédez à la page Routes.

    Accéder à la page Routes

  2. Cliquez sur l'onglet Gestion des routes.

  3. Cliquez sur Créer une route.

  4. Spécifiez un nom et une description pour la route.

  5. Dans la liste Réseau, sélectionnez le réseau VPC lb-network-ipv6-only.

  6. Dans la liste Version IP, sélectionnez IPv6.

  7. Spécifiez une plage d'adresses IPv6 de destination. La destination la plus large possible est ::/0 pour IPv6.

  8. Pour rendre la route applicable uniquement à la sélection d'instances associées aux tags réseau correspondants, spécifiez ces tags dans le champ Tags des instances. Laissez le champ vide pour rendre la route applicable à toutes les instances du réseau. Pour cet exemple, saisissez nat-gw-tag.

  9. Pour le saut suivant, sélectionnez Spécifier une instance.

  10. Sélectionnez le nom de l'instance que vous avez créée pour servir de passerelle NAT. Pour cet exemple, sélectionnez nat-gateway-instance.

  11. Cliquez sur Créer.

gcloud

Utilisez la commande gcloud compute routes create pour créer un itinéraire. Le paquet est transféré à l'instance de VM nat-gateway-instance, comme spécifié par --next-hop-instance de la route.

gcloud compute routes create route-1 \
    --network=lb-network-ipv6-only \
    --priority=1000 \
    --tags=nat-gw-tag \
    --destination-range=::/0 \
    --next-hop-instance=nat-gateway-instance \
    --next-hop-instance-zone=us-west1-a

Créer des VM de backend et des groupes d'instances

Cet exemple utilise deux groupes d'instances non gérés, chacun comportant deux VM de backend. Pour démontrer la nature régionale des équilibreurs de charge réseau passthrough internes, les deux groupes d'instances sont placés dans des zones distinctes, us-west1-a et us-west1-c.

  • Le groupe d'instances ig-a contient les deux VM suivantes :
    • vm-a1
    • vm-a2
  • Le groupe d'instances ig-c contient les deux VM suivantes :
    • vm-c1
    • vm-c2

Le trafic vers les quatre VM de backend est équilibré.

Dans cet exemple, la route statique créée à une étape précédente est limitée à des instances de VM spécifiques à l'aide du tag réseau nat-gw-tag.

Console

Créer des VM de backend

  1. Dans la console Trusted Cloud , accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Répétez ces étapes pour chaque VM en utilisant les combinaisons de noms et de zones suivantes.

    • Nom : vm-a1, zone : us-west1-a
    • Nom : vm-a2, zone : us-west1-a
    • Nom : vm-c1, zone : us-west1-c
    • Nom : vm-c2, zone : us-west1-c
  3. Cliquez sur Créer une instance.

  4. Définissez le Nom comme indiqué à l'étape 2.

  5. Dans le champ Région, sélectionnez us-west1, puis choisissez une zone comme indiqué à l'étape 2.

  6. Dans la section Disque de démarrage, assurez-vous que Debian GNU/Linux 12 (bookworm) est sélectionné pour les options du disque de démarrage. Si nécessaire, cliquez sur Modifier pour modifier l'image.

  7. Cliquez sur Options avancées.

  8. Cliquez sur Mise en réseau et configurez les champs suivants :

    1. Pour Tags réseau, saisissez allow-ssh, allow-health-check-ipv6 et nat-gw-tag.
    2. Pour Interfaces réseau, sélectionnez l'option suivante :
      • Réseau : lb-network-ipv6-only
      • Sous-réseau : lb-subnet-ipv6-only-internal
      • Type de pile IP : IPv6 (pile unique)
      • Adresse IPv6 interne principale : Éphémère (automatique)
  9. Cliquez sur Avancé, puis dans le champ Script de démarrage, saisissez le script suivant. Le contenu du script est identique pour les quatre VM.

    #! /bin/bash
    apt-get update
    apt-get install apache2 -y
    a2ensite default-ssl
    a2enmod ssl
    vm_hostname="$(curl -H "Metadata-Flavor:Google" \
    http://metadata.google.internal/computeMetadata/v1/instance/name)"
    echo "Page served from: $vm_hostname" | \
    tee /var/www/html/index.html
    systemctl restart apache2
    
  10. Cliquez sur Créer.

Créer des groupes d'instances

  1. Dans la console Trusted Cloud , accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

  2. Répétez les étapes ci-dessous pour créer deux groupes d'instances non gérés, comportant chacun deux VM, à l'aide des combinaisons suivantes :

    • Nom du groupe d'instances : ig-a, zone : us-west1-a, VM : vm-a1 et vm-a2
    • Nom du groupe d'instances : ig-c, zone : us-west1-c, VM : vm-c1 et vm-c2
  3. Cliquez sur Créer un groupe d'instances.

  4. Cliquez sur Nouveau groupe d'instances non géré.

  5. Définissez le Nom comme indiqué à l'étape 2.

  6. Dans la section Emplacement, sélectionnez us-west1 pour la région, puis choisissez une zone comme indiqué à l'étape 2.

  7. Pour Réseau, sélectionnez lb-network-ipv6-only.

  8. Pour Sous-réseau, sélectionnez lb-subnet-ipv6-only-internal.

  9. Dans la section Instances de VM, ajoutez les VM comme indiqué à l'étape 2.

  10. Cliquez sur Créer.

gcloud

  1. Pour créer les quatre VM, exécutez la commande gcloud compute instances create quatre fois, en utilisant les quatre combinaisons suivantes pour [VM-NAME] et [ZONE].

    • VM-NAME: vm-a1, ZONE: us-west1-a
    • VM-NAME: vm-a2, ZONE: us-west1-a
    • VM-NAME: vm-c1, ZONE: us-west1-c
    • VM-NAME: vm-c2, ZONE: us-west1-c
    gcloud compute instances create VM-NAME \
        --zone=ZONE \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --tags=allow-ssh,allow-health-check-ipv6,nat-gw-tag \
        --subnet=lb-subnet-ipv6-only-internal \
        --stack-type=IPV6_ONLY \
        --metadata=startup-script='#! /bin/bash
          apt-get update
          apt-get install apache2 -y
          a2ensite default-ssl
          a2enmod ssl
          vm_hostname="$(curl -H "Metadata-Flavor:Google" \
          http://metadata.google.internal/computeMetadata/v1/instance/name)"
          echo "Page served from: $vm_hostname" | \
          tee /var/www/html/index.html
          systemctl restart apache2'
    
  2. Créez les deux groupes d'instances non gérés dans chaque zone :

    gcloud compute instance-groups unmanaged create ig-a \
        --zone=us-west1-a
    gcloud compute instance-groups unmanaged create ig-c \
        --zone=us-west1-c
    
  3. Ajoutez les VM aux groupes d'instances appropriés :

    gcloud compute instance-groups unmanaged add-instances ig-a \
        --zone=us-west1-a \
        --instances=vm-a1,vm-a2
    gcloud compute instance-groups unmanaged add-instances ig-c \
        --zone=us-west1-c \
        --instances=vm-c1,vm-c2
    

Configurer les composants de l'équilibreur de charge

Les étapes suivantes permettent de configurer les différents composants d'un équilibreur de charge réseau passthrough interne, en commençant par la vérification de l'état d'état et le service de backend, puis en passant à l'interface.

Console

Démarrer la configuration

  1. Dans la console Trusted Cloud , accédez à la page Équilibrage de charge.

    Accéder à la page "Équilibrage de charge"

  2. Cliquez sur Créer un équilibreur de charge.
  3. Sous Type d'équilibreur de charge, sélectionnez Équilibreur de charge réseau (TCP/UDP/SSL), puis cliquez sur Suivant.
  4. Pour Proxy ou passthrough, sélectionnez Équilibreur de charge passthrough, puis cliquez sur Suivant.
  5. Cliquez sur Configurer.

Configuration de base

Sur la page Créer un équilibreur de charge réseau passthrough interne, saisissez les informations suivantes :

  • Nom de l'équilibreur de charge : ilb-ipv6-only
  • Région : us-west1
  • Réseau : lb-network-ipv6-only

Configuration du backend

  1. Cliquez sur Configuration du backend.
  2. Dans la section Nouveau backend de Backends, sélectionnez IPv6 (pile unique) sous type de pile IP.
  3. Dans Groupe d'instances, sélectionnez le groupe d'instances ig-a, puis cliquez sur OK.
  4. Cliquez sur Ajouter un backend et répétez cette étape pour ajouter ig-c.
  5. Dans la liste Vérification d'état, sélectionnez Créer une vérification d'état, saisissez les informations suivantes, puis cliquez sur Enregistrer :
    • Nom : hc-http-80.
    • Champ d'application : Régional.
    • Protocole : HTTP
    • Port : 80.
    • Proxy protocol : NONE.
    • Chemin de requête : /.
  6. Vérifiez qu'une coche bleue apparaît à côté de Configuration du backend.

Configuration de l'interface

  1. Cliquez sur Configuration de l'interface. Dans la section Nouveaux IP et port frontend, procédez comme suit :
    1. Dans le champ Nom, saisissez fr-ilb-ipv6-only.
    2. Pour gérer le trafic IPv6, procédez comme suit :
      1. Pour Version IP, sélectionnez IPv6. Le serveur TCP IPv6 que vous allez créer dans la section suivante est associé à l'adresse IP virtuelle de la règle de transfert.
      2. Pour Sous-réseau, sélectionnez lb-subnet-ipv6-only-internal. La plage d'adresses IPv6 de la règle de transfert est toujours éphémère.
      3. Pour Ports, sélectionnez Plusieurs, puis dans le champ Numéro de port, saisissez 80.
      4. Cliquez sur OK.
    3. Vérifiez qu'une coche bleue apparaît à côté de Configuration du frontend avant de continuer.

Vérifier la configuration

  1. Cliquez sur Vérifier et finaliser. Vérifiez tous vos paramètres.
  2. Si les paramètres sont corrects, cliquez sur Créer. La création de l'équilibreur de charge réseau passthrough interne prend quelques minutes.

gcloud

  1. Créez une vérification d'état HTTP régionale pour tester la connectivité HTTP aux VM sur le port 80.

    gcloud compute health-checks create http hc-http-80 \
        --region=us-west1 \
        --port=80
    
  2. Créez le service de backend :

    gcloud compute backend-services create ilb-ipv6-only \
        --load-balancing-scheme=INTERNAL \
        --protocol=tcp \
        --region=us-west1 \
        --health-checks=hc-http-80 \
        --health-checks-region=us-west1
    
  3. Ajoutez les deux groupes d'instances au service de backend :

    gcloud compute backend-services add-backend ilb-ipv6-only \
        --region=us-west1 \
        --instance-group=ig-a \
        --instance-group-zone=us-west1-a
    
    gcloud compute backend-services add-backend ilb-ipv6-only \
        --region=us-west1 \
        --instance-group=ig-c \
        --instance-group-zone=us-west1-c
    
  4. Créez la règle de transfert IPv6 avec une adresse IPv6 éphémère.

    gcloud compute forwarding-rules create fr-ilb-ipv6-only \
        --region=us-west1 \
        --load-balancing-scheme=INTERNAL \
        --subnet=lb-subnet-ipv6-only-internal \
        --ip-protocol=TCP \
        --ports=80 \
        --backend-service=ilb-ipv6-only \
        --backend-service-region=us-west1 \
        --ip-version=IPV6
    

Tester votre équilibreur de charge

Pour tester l'équilibreur de charge, créez une VM cliente dans la même région que l'équilibreur de charge, puis envoyez le trafic du client vers l'équilibreur de charge.

Créer une VM cliente

Cet exemple crée une VM cliente (vm-client) dans la même région que les VM de backend (serveur).

Console

  1. Dans la console Trusted Cloud , accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Cliquez sur Créer une instance.

  3. Dans le champ Nom, saisissez vm-client.

  4. Pour Région, sélectionnez us-west1.

  5. Pour Zone, sélectionnez us-west1-a.

  6. Cliquez sur Options avancées.

  7. Cliquez sur Mise en réseau et configurez les champs suivants :

    1. Pour Tags réseau, saisissez allow-ssh.
    2. Pour Interfaces réseau, sélectionnez l'option suivante :
      • Réseau : lb-network-ipv6-only
      • Sous-réseau : lb-subnet-ipv6-only-internal
      • Type de pile IP : IPv6 (pile unique)
    3. Cliquez sur OK.
  8. Cliquez sur Créer.

gcloud

La VM cliente peut se trouver dans n'importe quelle zone de la même région que l'équilibreur de charge. Dans cet exemple, le client se situe dans la zone us-west1-a et utilise le même sous-réseau que les VM de backend.

gcloud compute instances create vm-client \
    --zone=us-west1-a \
    --image-family=debian-12 \
    --image-project=debian-cloud \
    --stack-type=IPV6_ONLY \
    --tags=allow-ssh \
    --subnet=lb-subnet-ipv6-only-internal

Tester la connexion

Ce test contacte l'équilibreur de charge à partir d'une VM cliente distincte (autre qu'une VM de backend de l'équilibreur de charge). Le comportement attendu est une répartition du trafic entre les quatre VM de backend.

  1. Connectez-vous à l'instance de VM cliente à l'aide de SSH.

    gcloud compute ssh vm-client --zone=us-west1-a
    
  2. Décrivez la règle de transfert IPv6 fr-ilb-ipv6-only. Notez l'élément IPV6_ADDRESS dans la description.

    gcloud compute forwarding-rules describe fr-ilb-ipv6-only \
        --region=us-west1
    
  3. À partir de clients disposant d'une connectivité IPv6, exécutez la commande suivante:

    curl http://IPV6_ADDRESS:80
    

    Par exemple, si l'adresse IPv6 attribuée est [fd20:307:120c:2000:0:1:0:0/96]:80, la commande doit se présenter comme suit :

    curl http://[fd20:307:120c:2000:0:1:0:0]:80
    

    La réponse peut être la suivante :

    Page returned from: vm-a2
    

Étapes suivantes