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. Si vous le souhaitez, supprimez les connexions classiques.

    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. 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.

Example

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
base_connection_id
Optional
Forces 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
passerelle
Required
Forces new resource
string
Enter the transit gateway identifier.
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
Optional
string
Enter a name. 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.
remote_gateway_ip
Optional
Forces new resource
string
The remote gateway IP address. Cette zone s'applique uniquement aux connexions de type gre_tunnel et unbound_gre_tunnel.
remote_tunnel_ip
Optional
Forces new resource
string
The remote tunnel IP address. Cette zone s'applique uniquement aux connexions de type gre_tunnel et unbound_gre_tunnel.
zone
Optional
Forces new resource
string
The location of the GRE tunnel. Cette zone s'applique uniquement aux connexions de type gre_tunnel et unbound_gre_tunnel.

Example

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
}