Création d'une table de routage
Créez une table de routage pour définir des règles permettant d'acheminer le trafic réseau vers sa destination via le chemin le plus approprié. Par exemple, une table de routage fournit des informations relatives à l'envoi d'un paquet de données au tronçon suivant sur sa route dans le réseau.
Avant de commencer
Avant de créer une table de routage, assurez-vous que vous disposez d'au moins un VPC et vérifiez que vous respectez les limitations et les directives relatives aux tables de routage.
Vous pouvez créer une table de routage pour un service IBM Cloud en utilisant la console, le CLI, l'API ou Terraform.
Création d'une table de routage dans la console
Pour créer une table de routage dans la console, procédez comme suit :
-
Depuis la console IBM Cloud, sélectionnez l'
du menu de navigation, puis cliquez sur l'icône Infrastructure
> Réseau > Tables de routage. La page des tables de routage pour VPC s'affiche.
-
Cliquez sur Créer dans l'angle supérieur droit de la page.
-
Sur la page « Table de routage pour la mise en place du VPC », renseignez les informations suivantes :
-
Entrez un nom unique pour votre table de routage.
-
Sélectionnez le cloud privé virtuel que vous souhaitez associer à la table de routage.
-
Mots-clés- (Facultatif) Ajoutez des mots-clés pour vous aider à organiser et à retrouver vos ressources. Vous pourrez ajouter d'autres balises ultérieurement. Pour plus d'informations, voir Utilisation d'étiquettes.
-
Balises de gestion d'accès- (Facultatif) Ajouter des balises de gestion d'accès aux ressources pour aider à organiser les relations de contrôle d'accès.
key:valueest le seul format pris en charge pour les étiquettes de gestion des accès. Pour plus d'informations, voir Contrôle de l'accès aux ressources à l'aide d'étiquettes. -
Cloud privé virtuel- Sélectionnez votre VPC.
-
Dans la section Trafic, vous pouvez choisir parmi ces caractéristiques optionnelles :
-
Accepte les itinéraires de (facultatif)- Choisissez les ressources qui peuvent créer des itinéraires dans la table de routage. Vous pouvez sélectionner le commutateur pour le serveur VPN, la passerelle VPN ou les deux.
Pour les passerelles VPN basées sur des politiques, les routes ne sont pas automatiquement détectées. La table de routage doit être configurée pour accepter les routes provenant de la passerelle VPN, et les routes propagées sont limitées aux préfixes CIDR définis dans la politique VPN. Les passerelles VPN basées sur les routes avec BGP annoncent dynamiquement les routes apprises. Pour plus d'informations sur la définition des préfixes CIDR pour les VPN basés sur des stratégies, consultez Ajout de connexions à une passerelle VPN.
Les routes du serveur VPN sont dérivées du pool d'adresses client et de toutes les routes client configurées, et sont propagées lorsque la table de routage est configurée pour accepter les routes provenant du serveur VPN.
-
Source de trafic (facultatif)- Sélectionnez la source de trafic qui utilisera cette table de routage pour acheminer son trafic vers le VPC.
- Direct Link- Autorise le trafic entrant provenant d'une IBM Cloud Direct Link connexion dédiée ou Connect vers un site sur site. En option, vous pouvez annoncer des routes vers un lien direct, qui ne sont pas dans la plage de préfixes d'adresses du VPC.
- Passerelle de transit: permet au trafic entrant provenant d'un IBM Cloud Transit Gateway vers un autre VPC ou une infrastructure classique. En option, vous pouvez annoncer des routes vers une passerelle de transit, qui ne sont pas dans la plage de préfixes d'adresses du VPC.
- Zone VPC: autorise le trafic entrant vers une autre zone de disponibilité du même VPC.
- Internet public: permet d'acheminer le trafic entrant provenant d'Internet public et destiné à une adresse IP flottante vers une adresse IP de saut suivant d'un VPC.
-
-
-
Cliquez sur « Créer une table de routage ».
Création d'une table de routage à partir de l'interface en ligne de commande (CLI)
Avant de commencer, configurez votre environnement CLI.
Pour créer une table de routage à partir de l'interface de ligne de commande (CLI), exécutez la commande suivante :
ibmcloud is vpc-routing-table-create VPC [--name NAME] [--direct-link-ingress false | true] [--internet-ingress, --internet false | true] [--transit-gateway-ingress false | true] [--vpc-zone-ingress false | true] [--accept-routes-from-resource-type-filters, --ar-rtf vpn_server | vpn_gateway] [--advertise-routes-to direct_link | transit_gateway | direct_link, transit_gateway] [--output JSON] [-q, --quiet]
Où :
VPC- Il s'agit de l'identifiant ou du nom du VPC.
--name- Il s'agit du nom de la table de routage du VPC.
--direct-link-ingress, --direct-link- Optionnel. Si la valeur «
true» est définie, cette table de routage est utilisée pour acheminer vers ce VPC le trafic provenant de IBM Cloud et Direct Link. Pour que le routage fonctionne correctement, le VPC ne doit pas déjà disposer d'une table de routage dans laquelle cette propriété est définie sur «true». L'un des sites suivants :falseoutrue. --internet-ingress, --internet- Indique si cette table de routage est utilisée pour acheminer le trafic provenant d'Internet. La mise à jour vers «
true» sélectionne cette table de routage, à condition qu’aucune autre table de routage du VPC ne présente déjà cette propriété définie sur «true». La mise à jour vers la version «false» désélectionne cette table de routage. L'un des sites suivants :false,true. --transit-gateway-ingress, --transit-gateway- Si la valeur «
true» est définie, cette table de routage est utilisée pour acheminer le trafic provenant de Transit Gateway vers ce VPC. Pour que le routage fonctionne correctement, le VPC ne doit pas déjà disposer d'une table de routage dans laquelle cette propriété est définie sur «true». L'un des sites suivants :falseoutrue. --vpc-zone-ingress, --vpc-zone- Optionnel. Si le paramètre est défini sur «
true», cette table de routage est utilisée pour acheminer le trafic provenant de l'Internet public. Pour que le routage fonctionne correctement, le VPC ne doit pas disposer d'une table de routage existante dans laquelle cette propriété est définie sur «true». L'un des sites suivants :falseoutrue. --accept-routes-from-resource-type-filters, --ar-rtf- Filtres de type de ressource séparés par des virgules pouvant créer des routes dans cette table de routage. L'un d'entre eux :
vpn_server,vpn_gatewa. --advertise_routes_to TARGETS- Optionnel. Liste de cibles d'annonces séparées par des virgules pour les itinéraires de cette table de routage. Actuellement,
direct_linkettransit_gatewaysont les valeurs autorisées.direct_linkexige quedirect-link-ingresssoit réglé surtrue.transit_gatewayexige quetransit—gateway-ingresssoit réglé surtrue. Toutes les routes de la table de routage dont l'optionadvertiseest définie surtruesont annoncées aux sources d'entrée spécifiées par "advertise_routes_to". --output- Est le format de sortie. Valeur admise : JSON.
-q, --quiet- Supprime la sortie verbale.
Les routes dont l'action est deliver sont traitées comme drop sauf si le next-hop est une adresse IP liée à une interface réseau sur un sous-réseau dans la zone de la route. Par conséquent, si un paquet entrant correspond à une route dont le prochain saut est une adresse IP liée à l'internet ou une connexion de passerelle VPN, le paquet est abandonné.
Vous pouvez définir l'option d'entrée « true » sur une seule table de routage par VPC, et ce uniquement si cette table de routage n'est associée à aucun sous-réseau.
Exemples d'interface CLI
ibmcloud is vpc-routing-table-create 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 --name my-vpc-routing-table -—advertise-routes-to direct_link --direct-link-ingress true -—output JSON
ibmcloud is vpc-routing-table-create my-vpc --name my-vpc-routing-table --advertise-routes-to transit_gateway —-transit-gateway-ingress true --output JSON
ibmcloud is vpc-routing-table-create my-vpc --name my-vpc-routing-table --advertise-routes-to direct_link, transit_gateway --direct-link-ingress true —transit-gateway-ingress true -—output JSON
ibmcloud is vpc-routing-table-create 979b4bc6-f018-40a2-92f5-0b1cf777b55d --name test-vpc-cli-routing-tb1 --direct-link-ingress false --internet-ingress false --transit-gateway-ingress false --vpc-zone-ingress true
Création d'une table de routage à l'aide de l'API
Pour créer une table de routage à l'aide de l'API, procédez comme suit :
-
Configurez votre environnement d'API.
-
Stockez la valeur
VpcIddans une variable destinée à être utilisée dans la commande d'API :export VpcId=<your_vpc_id> -
Créez une table de routage.
Table de routage Egress :
curl -X POST \ "$vpc_api_endpoint/v1/vpcs/$VpcId/routing_tables?version=$api_version&generation=2" \ -H "Authorization: ${iam_token}" \ -d '{ "name": "test-routing-table" }'Table de routage Ingress :
curl -X POST "$vpc_api_endpoint/v1/vpcs/$VpcId/routing_tables?version=$api_version&generation=2" \ -H "Authorization: Bearer $iam_token" \ -d '{ "name": "my-ingress-routing-table", "route_direct_link_ingress": true }'
Pour plus d'informations et pour connaître les paramètres facultatifs, consultez la section « Créer une table de routage pour un VPC » dans la documentation de référence de l'API VPC.
Création d'une table de routage avec Terraform
Pour créer une table de routage avec Terraform, procédez comme suit :
-
Configurez votre environnement Terraform.
-
Utilisez l'un des exemples suivants :
- Pour créer une table de routage :
resource "ibm_is_vpc_routing_table" "example" { vpc = ibm_is_vpc.example.id name = "example-vpc-routing-table" route_direct_link_ingress = true }- Pour créer une table de routage qui accepte les routes générées par un serveur VPN :
resource "ibm_is_vpc_routing_table" "example" { vpc = ibm_is_vpc.example.id name = "example-vpc-routing-table" route_direct_link_ingress = true accept_routes_from_resource_type = ["vpn_server"] }- Pour créer une table de routage qui achemine le trafic provenant de IBM Cloud Direct Link vers ce VPC :
resource "ibm_is_vpc_routing_table" "is_vpc_routing_table_instance" { vpc = ibm_is_vpc.example.id name = "example-vpc-routing-table" route_direct_link_ingress = true route_transit_gateway_ingress = false route_vpc_zone_ingress = false advertise_routes_to = ["direct_link", "transit_gateway"] }- Pour créer une table de routage incluant des balises utilisateur et des balises d'accès :
resource "ibm_is_vpc_routing_table" "example" { tags = ["rt-tag"] access_tags = ["access:dev"] vpc = ibm_is_vpc.example.id name = "example-vpc-routing-table" route_direct_link_ingress = true route_transit_gateway_ingress = false route_vpc_zone_ingress = false }Le CRN et le groupe de ressources sont inclus dans les réponses et les sources de données.
resource "ibm_is_subnet" "example" { name = "example-subnet" vpc = ibm_is_vpc.example.id zone = "us-south-1" ipv4_cidr_block = "10.240.0.0/24" routing_table_crn = ibm_is_vpc_routing_table.example.crn }
Pour obtenir de la documentation sur la ressource « ibm_is_vpc_routing_table », consultez le Terraform Registry.