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é:
-
Collectez les informations de configuration du tunnel GRE existant à utiliser sur le nouveau tunnel GRE non lié.
-
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.
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):
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
}