IBM Cloud Docs
Création d'une connexion tunnel GRE

Création d'une connexion tunnel GRE

Vous pouvez connecter des noeuds finaux à l'aide d'une connexion de passerelle de transit de tunnel GRE (Generic Routing Encapsulation). Cette connexion permet à une passerelle de transit de se connecter à des réseaux superposés hébergés sur des ressources d'infrastructure classiques.

Cette forme de tunnel GRE est désormais obsolète et nous vous suggérons d'utiliser un tunnel GRE non lié à la place. Les tunnels GRE non liés offrent les avantages suivants:

  • Possibilité de recevoir des sous-réseaux de réseau classique à partir d'une connexion classique.
  • Possibilité de communiquer via d'autres tunnels GRE non liés sur la même passerelle Transit Gateway dans la même zone de disponibilité.
  • Ne nécessite pas de connexion classique sur la passerelle Transit Gateway. Par conséquent, les sous-réseaux du réseau classique ne seront pas annoncés aux connexions sur la passerelle Transit Gateway (et vice versa).

Pour plus d'informations, voir Création d'un tunnel GRE non lié.

La migration de vos tunnels GRE vers des tunnels GRE non liés nécessite la suppression de tous les tunnels GRE existants avant la création de nouveaux tunnels GRE non liés. La migration provoquera également une interruption réseau pour tout ce qui utilise l'ancien tunnel GRE jusqu'à ce que vous en créiez un nouveau.

Pour migrer d'un tunnel GRE vers un tunnel GRE non lié:

  1. Collectez les informations de configuration du tunnel GRE existant à utiliser sur le nouveau tunnel GRE non lié.

  2. Supprimez votre ancien tunnel GRE.

  3. Supprimez les connexions classiques si nécessaire.

    Les connexions classiques ne peuvent pas être supprimées si elles sont utilisées par d'autres tunnels GRE.

  4. Créez le nouveau tunnel GRE non lié.

Les connexions GRE des passerelles de transit nécessitent que le propriétaire de la passerelle configure spécifiquement HA pour ses besoins. Une connexion GRE est une connexion point à point, n'a pas de redondance intégrée et est un point de défaillance unique. Lorsque vous configurez une connexion GRE sur une passerelle Transit Gateway, vous devez spécifier la zone de disponibilité. Pour une solution HA robuste, configurez plusieurs connexions GRE en utilisant différentes zones de disponibilité.

Avant de commencer

Les prérequis suivants doivent être remplis pour pouvoir créer une connexion tunnel GRE :

  • Vérifiez qu'il existe une connexion d'infrastructure classique ou créez-en une. Pour plus d'informations, voir Ajout d'une connexion. La connexion tunnel GRE se connecte à un noeud final uniquement sur une infrastructure classique.
  • Consultez les remarques relatives à la connexion GRE pour connaître les prérequis supplémentaires.

Création d'une connexion tunnel GRE dans l'interface utilisateur

Seuls les tunnels GRE non liés peuvent être créés dans l'interface utilisateur. Pour plus d'informations, voir Création d'un tunnel GRE non lié.

Création d'une connexion tunnel GRE à partir de l'interface de ligne de commande

Créez une connexion de tunnel GRE (Generic Routing Encapsulation) sur la passerelle de transit donnée.

ibmcloud tg connection-create-gre|ccgre GATEWAY_ID --name NAME --zone ZONE --base-connection-id BASE_CONNECTION_ID --local-gateway-ip LOCAL_GATEWAY_IP --local-tunnel-ip LOCAL_TUNNEL_IP --remote-gateway-ip REMOTE_GATEWAY_IP --remote-tunnel-ip REMOTE_TUNNEL_IP [--remote-bgp-asn REMOTE_BGP_ASN] [--output json]

Où :

  • GATEWAY_ID : ID de la passerelle à laquelle est liée la nouvelle connexion.

  • --name : Nom de la nouvelle connexion.

  • --zone : Zone de disponibilité pour le tunnel GRE. Exemple : us-south-1

  • --base-connection-id : ID de la connexion réseau classique qui sera le fond de page pour le tunnel GRE.

  • --local-gateway-ip : Adresse IP de passerelle locale pour la connexion tunnel GRE.

  • --local-tunnel-ip : Adresse IP de tunnel locale pour la connexion tunnel GRE.

  • --remote-gateway-ip : Adresse IP de passerelle distante pour la connexion tunnel GRE.

  • --local-tunnel-ip : Adresse IP de tunnel distante pour la connexion tunnel GRE.

  • --remote-bgp-asn (facultatif) : Si l'ASN BGP distant n'est pas spécifié, un ASN est généré.

  • --output json (facultatif) : Afficher la sortie au format JSON.

  • --help | -h (facultatif) : Obtenir de l'aide sur la commande.

Exemple

Créez une connexion tunnel GRE nommée gre-connection en utilisant la connexion classique 9037f710-8dfb-4948-a2bd-847c8dde96d3 comme connexion de base :

ibmcloud tg connection-create-gre $gateway  --name gre-connection --base-connection-id 9037f710-8dfb-9999-a2bd-847c8dde96d3  --zone us-south-2 --local-gateway-ip 192.168.100.1 --local-tunnel-ip 192.168.101.1 --remote-gateway-ip 10.242.63.12 --remote-tunnel-ip 192.168.101.2

Création d'une connexion tunnel GRE avec l'API

Demande exemple

Cet exemple illustre la demande d'une connexion GRE:

curl -X POST "https://transit.cloud.ibm.com/v1/transit_gateways/test/connections?version=2022-01-27" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"base_connection_id\":\"975f58c1-afe7-469a-9727-7f3d720f2d32\",\"local_gateway_ip\":\"192.168.100.1\",\"local_tunnel_ip\":\"192.168.129.2\",\"name\":\"Transit_Service_BWTN_SJ_DL\",\"network_type\":\"gre_tunnel\",\"remote_bgp_asn\":65010,\"remote_gateway_ip\":\"10.242.63.12\",\"remote_tunnel_ip\":\"192.168.129.1\"}"

La charge utile de cette demande est la suivante :

{
  "base_connection_id": "975f58c1-afe7-469a-9727-7f3d720f2d32",
  "local_gateway_ip": "192.168.100.1",
  "local_tunnel_ip": "192.168.129.2",
  "name": "Transit_Service_BWTN_SJ_DL",
  "network_type": "gre_tunnel",
  "remote_bgp_asn": 65010,
  "remote_gateway_ip": "10.242.63.12",
  "remote_tunnel_ip": "192.168.129.1"
}

Réponse exemple

Cet exemple illustre la réponse à la création d'un tunnel GRE:

{
  "created_at": "2020-03-31T12:08:05Z",
  "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
  "name": "example-connection",
  "network_type": "gre_tunnel",
  "status": "pending",
  "updated_at": "2020-03-31T12:08:05Z"
}

Pour plus d'informations, voir Ajout d'une connexion à une passerelle Transit Gateway dans la référence d'API Transit Gateway.

Création d'une connexion tunnel GRE à l'aide de Terraform

Vous pouvez spécifier les références d'argument suivantes pour votre ressource lors de la création d'une connexion tunnel GRE (Generic Routing Encapsulation):

Références des arguments Terraform pour la création d'un GRE
Argument Détails
Facultatif
Force new resource
string
The ID of a network_type classic connection a tunnel is configured over.
Ce champ ne s'applique qu'aux connexions de type réseau gre_tunnel
** gateway**
Requis
Force la nouvelle ressource
string
local_gateway_ip
Facultatif
Force la nouvelle ressource
chaîne
Adresse IP de la passerelle locale.
Ce champ est obligatoire et ne s'applique qu'aux types de connexion gre_tunnel et unbound_gre_tunnel
local_tunnel_ip
Facultatif
Force la nouvelle ressource
chaîne
Adresse IP du tunnel local.
Ce champ est obligatoire et ne s'applique qu'aux connexions de type gre_tunnel et unbound_gre_tunnel
Nom
Facultatif
string
Saisir un nom. Si le nom n'est pas indiqué, le nom par défaut est fourni en fonction du type de réseau, tel que gre_tunnel.
network_type
Obligatoire
Force new resource
string
Type de réseau. Les valeurs autorisées sont gre_tunnel
remote_bgp_asn
Facultatif
Force la nouvelle ressource
integer
The remote network BGP ASN. Elle sera générée pour la connexion si elle n'est pas spécifiée.
Cette zone s'applique uniquement aux connexions de type gre_tunnel et unbound_gre_tunnel.
L'adresse IP de la passerelle distante
Facultatif
Force une nouvelle ressource
string
L'adresse IP de la passerelle distante. Cette zone s'applique uniquement aux connexions de type gre_tunnel et unbound_gre_tunnel.
L'adresse IP du tunnel distant
Facultatif
Force une nouvelle ressource
string
L'adresse IP du tunnel distant. Cette zone s'applique uniquement aux connexions de type gre_tunnel et unbound_gre_tunnel.
Zone
Facultatif
Force new resource
string
L'emplacement du tunnel GRE. Cette zone s'applique uniquement aux connexions de type gre_tunnel et unbound_gre_tunnel.

Exemple

Cet exemple illustre la demande d'une connexion tunnel GRE:

resource "ibm_tg_connection" "test_ibm_tg_connection" {
  gateway            = ibm_tg_gateway.test_tg_gateway.id
  network_type       = "gre_tunnel"
  name               = "myconnection"
  base_connection_id = testgretunnel
  local_gateway_ip   = 192.168.0.1
  local_tunnel_ip    = 10.0.0.1
  remote_bgp_asn     = 36361
  remote_gateway_ip  = 192.168.1.1
  remote_tunnel_ip   = 10.0.1.1
  zone               = us-east
}